mppx 0.6.19 → 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.
- package/CHANGELOG.md +14 -0
- package/dist/Challenge.d.ts +2 -2
- package/dist/Challenge.d.ts.map +1 -1
- package/dist/Challenge.js +1 -1
- package/dist/Challenge.js.map +1 -1
- package/dist/Method.d.ts +34 -0
- package/dist/Method.d.ts.map +1 -1
- package/dist/Method.js +3 -1
- package/dist/Method.js.map +1 -1
- package/dist/Receipt.d.ts +1 -0
- package/dist/Receipt.d.ts.map +1 -1
- package/dist/Receipt.js +2 -0
- package/dist/Receipt.js.map +1 -1
- package/dist/client/Methods.d.ts +1 -0
- package/dist/client/Methods.d.ts.map +1 -1
- package/dist/client/Methods.js +1 -0
- package/dist/client/Methods.js.map +1 -1
- package/dist/client/Mppx.d.ts +12 -1
- package/dist/client/Mppx.d.ts.map +1 -1
- package/dist/client/Mppx.js +127 -10
- package/dist/client/Mppx.js.map +1 -1
- package/dist/client/internal/Fetch.d.ts +69 -1
- package/dist/client/internal/Fetch.d.ts.map +1 -1
- package/dist/client/internal/Fetch.js +250 -20
- package/dist/client/internal/Fetch.js.map +1 -1
- package/dist/middlewares/elysia.d.ts.map +1 -1
- package/dist/middlewares/elysia.js +14 -0
- package/dist/middlewares/elysia.js.map +1 -1
- package/dist/middlewares/express.d.ts.map +1 -1
- package/dist/middlewares/express.js +1 -2
- package/dist/middlewares/express.js.map +1 -1
- package/dist/middlewares/hono.d.ts.map +1 -1
- package/dist/middlewares/hono.js +14 -0
- package/dist/middlewares/hono.js.map +1 -1
- package/dist/middlewares/internal/mppx.d.ts +1 -1
- package/dist/middlewares/internal/mppx.d.ts.map +1 -1
- package/dist/middlewares/internal/mppx.js +2 -1
- package/dist/middlewares/internal/mppx.js.map +1 -1
- package/dist/middlewares/nextjs.d.ts.map +1 -1
- package/dist/middlewares/nextjs.js +14 -0
- package/dist/middlewares/nextjs.js.map +1 -1
- package/dist/proxy/Proxy.d.ts.map +1 -1
- package/dist/proxy/Proxy.js +2 -2
- package/dist/proxy/Proxy.js.map +1 -1
- package/dist/proxy/Service.d.ts.map +1 -1
- package/dist/proxy/Service.js +1 -1
- package/dist/proxy/Service.js.map +1 -1
- package/dist/server/Mppx.d.ts +96 -5
- package/dist/server/Mppx.d.ts.map +1 -1
- package/dist/server/Mppx.js +739 -115
- package/dist/server/Mppx.js.map +1 -1
- package/dist/stripe/server/internal/html.gen.d.ts +1 -1
- package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
- package/dist/stripe/server/internal/html.gen.js +1 -1
- package/dist/stripe/server/internal/html.gen.js.map +1 -1
- package/dist/tempo/Methods.d.ts +96 -0
- package/dist/tempo/Methods.d.ts.map +1 -1
- package/dist/tempo/Methods.js +97 -0
- package/dist/tempo/Methods.js.map +1 -1
- package/dist/tempo/client/Methods.d.ts +3 -0
- package/dist/tempo/client/Methods.d.ts.map +1 -1
- package/dist/tempo/client/Methods.js +3 -0
- package/dist/tempo/client/Methods.js.map +1 -1
- package/dist/tempo/client/Subscription.d.ts +114 -0
- package/dist/tempo/client/Subscription.d.ts.map +1 -0
- package/dist/tempo/client/Subscription.js +100 -0
- package/dist/tempo/client/Subscription.js.map +1 -0
- package/dist/tempo/client/index.d.ts +1 -0
- package/dist/tempo/client/index.d.ts.map +1 -1
- package/dist/tempo/client/index.js +1 -0
- package/dist/tempo/client/index.js.map +1 -1
- package/dist/tempo/index.d.ts +1 -0
- package/dist/tempo/index.d.ts.map +1 -1
- package/dist/tempo/index.js +1 -0
- package/dist/tempo/index.js.map +1 -1
- package/dist/tempo/server/Methods.d.ts +5 -0
- package/dist/tempo/server/Methods.d.ts.map +1 -1
- package/dist/tempo/server/Methods.js +5 -0
- package/dist/tempo/server/Methods.js.map +1 -1
- package/dist/tempo/server/Subscription.d.ts +221 -0
- package/dist/tempo/server/Subscription.d.ts.map +1 -0
- package/dist/tempo/server/Subscription.js +637 -0
- package/dist/tempo/server/Subscription.js.map +1 -0
- package/dist/tempo/server/index.d.ts +1 -0
- package/dist/tempo/server/index.d.ts.map +1 -1
- package/dist/tempo/server/index.js +1 -0
- package/dist/tempo/server/index.js.map +1 -1
- package/dist/tempo/server/internal/html.gen.d.ts +1 -1
- package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
- package/dist/tempo/server/internal/html.gen.js +1 -1
- package/dist/tempo/server/internal/html.gen.js.map +1 -1
- package/dist/tempo/subscription/KeyAuthorization.d.ts +282 -0
- package/dist/tempo/subscription/KeyAuthorization.d.ts.map +1 -0
- package/dist/tempo/subscription/KeyAuthorization.js +297 -0
- package/dist/tempo/subscription/KeyAuthorization.js.map +1 -0
- package/dist/tempo/subscription/Receipt.d.ts +10 -0
- package/dist/tempo/subscription/Receipt.d.ts.map +1 -0
- package/dist/tempo/subscription/Receipt.js +16 -0
- package/dist/tempo/subscription/Receipt.js.map +1 -0
- package/dist/tempo/subscription/Store.d.ts +99 -0
- package/dist/tempo/subscription/Store.d.ts.map +1 -0
- package/dist/tempo/subscription/Store.js +292 -0
- package/dist/tempo/subscription/Store.js.map +1 -0
- package/dist/tempo/subscription/Types.d.ts +65 -0
- package/dist/tempo/subscription/Types.d.ts.map +1 -0
- package/dist/tempo/subscription/Types.js +2 -0
- package/dist/tempo/subscription/Types.js.map +1 -0
- package/dist/tempo/subscription/index.d.ts +6 -0
- package/dist/tempo/subscription/index.d.ts.map +1 -0
- package/dist/tempo/subscription/index.js +4 -0
- package/dist/tempo/subscription/index.js.map +1 -0
- package/dist/zod.d.ts +7 -0
- package/dist/zod.d.ts.map +1 -1
- package/dist/zod.js +18 -0
- package/dist/zod.js.map +1 -1
- package/package.json +3 -3
- package/src/Challenge.test.ts +13 -0
- package/src/Challenge.ts +3 -3
- package/src/Method.ts +46 -1
- package/src/Receipt.ts +2 -0
- package/src/client/Methods.ts +1 -0
- package/src/client/Mppx.test-d.ts +55 -0
- package/src/client/Mppx.test.ts +181 -0
- package/src/client/Mppx.ts +248 -16
- package/src/client/internal/Fetch.test-d.ts +31 -0
- package/src/client/internal/Fetch.test.ts +261 -0
- package/src/client/internal/Fetch.ts +467 -24
- package/src/middlewares/elysia.test.ts +31 -1
- package/src/middlewares/elysia.ts +13 -0
- package/src/middlewares/express.ts +1 -5
- package/src/middlewares/hono.test.ts +30 -1
- package/src/middlewares/hono.ts +13 -0
- package/src/middlewares/internal/mppx.ts +5 -6
- package/src/middlewares/nextjs.test.ts +28 -1
- package/src/middlewares/nextjs.ts +13 -0
- package/src/proxy/Proxy.test.ts +69 -0
- package/src/proxy/Proxy.ts +2 -5
- package/src/proxy/Service.test.ts +34 -0
- package/src/proxy/Service.ts +7 -0
- package/src/server/Mppx.authorize.test.ts +210 -0
- package/src/server/Mppx.test-d.ts +73 -1
- package/src/server/Mppx.test.ts +965 -3
- package/src/server/Mppx.ts +1138 -140
- package/src/stripe/server/internal/html/package.json +1 -1
- package/src/stripe/server/internal/html.gen.ts +1 -1
- package/src/tempo/Methods.test.ts +131 -0
- package/src/tempo/Methods.ts +136 -0
- package/src/tempo/Subscription.integration.test.ts +591 -0
- package/src/tempo/client/Methods.ts +3 -0
- package/src/tempo/client/Subscription.test.ts +131 -0
- package/src/tempo/client/Subscription.ts +155 -0
- package/src/tempo/client/index.ts +1 -0
- package/src/tempo/index.ts +1 -0
- package/src/tempo/server/Methods.ts +5 -0
- package/src/tempo/server/Subscription.test.ts +1410 -0
- package/src/tempo/server/Subscription.ts +1014 -0
- package/src/tempo/server/index.ts +1 -0
- package/src/tempo/server/internal/html/package.json +1 -1
- package/src/tempo/server/internal/html.gen.ts +1 -1
- package/src/tempo/subscription/KeyAuthorization.test.ts +204 -0
- package/src/tempo/subscription/KeyAuthorization.ts +394 -0
- package/src/tempo/subscription/Receipt.ts +28 -0
- package/src/tempo/subscription/Store.test.ts +554 -0
- package/src/tempo/subscription/Store.ts +431 -0
- package/src/tempo/subscription/Types.ts +68 -0
- package/src/tempo/subscription/index.ts +23 -0
- package/src/zod.test.ts +23 -1
- package/src/zod.ts +24 -0
|
@@ -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){return t.endsWith(`.local`)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let y={height:440,width:360};function b(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function x(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function S(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let ee,C,w,te=[];function ne(){return typeof window>`u`?ie():b({name:`iframe`},e=>{let{host:t}=e;if(ee&&ee.host===t){let t=C;return C=e.store,t&&t!==C&&!te.includes(t)&&te.push(t),w?.destroy(),w=re()(e),ee.instance.syncTheme(e.theme),ee.instance}ee?.instance.destroy(),C=e.store,w=re()(e);let n=!1,r=ue(),i=new URL(t);i.searchParams.set(`chainId`,String(C.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),v(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(C,te,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ce(e)}),e.on(`sync`,({valid:e})=>{e===!1&&C?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),ne(),n=!1,l=!0;let e=C?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&w?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,y=()=>se(C),b=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});b.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,ne=()=>{x&&(x=!1,a.removeEventListener(`cancel`,y),a.removeEventListener(`click`,y),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{x||(x=!0,a.addEventListener(`cancel`,y),a.addEventListener(`click`,y),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},de=!1,fe=()=>{de||(de=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(de){de=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},me={close(){w.close(),n=!1,pe(),ne()},destroy(){ee?.instance===me&&(ee=void 0),w?.close(),n=!1,ne(),pe(),w?.destroy(),f.destroy(),a.remove(),b.disconnect(),C=void 0,w=void 0,te=[]},open(){n||(n=!0,fe(),ie())},async syncRequests(e){if(l){w.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(S()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){w.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),w.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:le(C),chainId:C.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return ee={host:t,instance:me},me})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=y}=e;return b({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=ue(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),v(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:le(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ie(){return b({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){if(!C)return;let{accounts:t}=C.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function le(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ue(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var de=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function fe(e,t){return e.exec(t)?.groups}let pe=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,me=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,he=/^\\(.+?\\).*?$/,ge=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function _e(e){let t=e.type;if(ge.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=_e(i),r<n-1&&(t+=`, `)}let r=fe(ge,e.type);return t+=`)${r?.array||``}`,_e({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function ve(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=_e(i),r!==n-1&&(t+=`, `)}return t}function ye(e){return e.type===`function`?`function ${e.name}(${ve(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ve(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ve(e.inputs)})`:e.type===`error`?`error ${e.name}(${ve(e.inputs)})`:e.type===`constructor`?`constructor(${ve(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let be=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function xe(e){return be.test(e)}function Se(e){return fe(be,e)}let Ce=new Set([`memory`,`indexed`,`storage`,`calldata`]),we=new Set([`calldata`,`memory`,`storage`]);var Te=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Ee=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},De=class extends de{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Oe=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},ke=class extends de{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Ae=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},je=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Me=class extends de{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Ne=class extends de{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Pe=class extends de{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Fe=class extends de{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},Ie=class extends de{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Le(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Re=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),ze=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Be=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ve=/^u?int$/;function He(e,t){let n=Le(e,t?.type,t?.structs);if(Re.has(n))return Re.get(n);let r=he.test(e),i=fe(r?Be:ze,e);if(!i)throw new Oe({param:e});if(i.name&&Ke(i.name))throw new ke({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=Ue(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(He(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ve.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!We(c))throw new Ee({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Ae({param:e,type:t?.type,modifier:i.modifier});if(we.has(i.modifier)&&!qe(c,!!i.array))throw new je({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Re.set(n,u),u}function Ue(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?Ue(o,[...t,n.trim()]):Ue(o,t,`${n}${i}`,r);case`(`:return Ue(o,t,`${n}${i}`,r+1);case`)`:return Ue(o,t,`${n}${i}`,r-1);default:return Ue(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Ie({current:n,depth:r});return t.push(n.trim()),t}function We(e){return e===`address`||e===`bool`||e===`function`||e===`string`||pe.test(e)||me.test(e)}let Ge=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Ke(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||pe.test(e)||me.test(e)||Ge.test(e)}function qe(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Je(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!xe(n))continue;let i=Se(n);if(!i)throw new Ne({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=He(t,{type:`struct`});o.push(n)}if(!o.length)throw new Pe({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Xe(a,t)}return r}let Ye=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Xe(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(he.test(i.type))r.push(i);else{let e=fe(Ye,i.type);if(!e?.type)throw new Me({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fe({type:o});r.push({...i,type:`tuple${a??``}`,components:Xe(t[o],t,new Set([...n,o]))})}else if(We(o))r.push(i);else throw new Te({type:o})}}return r}function Ze(e){let t=[];if(typeof e==`string`){let n=Ue(e),r=n.length;for(let e=0;e<r;e++)t.push(He(n[e],{modifiers:Ce}))}else{let n=Je(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(xe(r))continue;let a=Ue(r),o=a.length;for(let e=0;e<o;e++)t.push(He(a[e],{modifiers:Ce,structs:n}))}}if(t.length===0)throw new De({params:e});return t}var Qe,$e=o((()=>{Qe=`0.1.1`}));function et(){return Qe}var tt=o((()=>{$e()}));function nt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?nt(e.cause,t):t?null:e}var T,rt=o((()=>{tt(),T=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return nt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${et()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),it,at=o((()=>{it=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function ot(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function st(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function ct(e,...t){if(!ot(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function lt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);st(e.outputLen),st(e.blockLen)}function ut(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function dt(e,t){ct(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ft(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function pt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function mt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ht(e,t){return e<<32-t|e>>>t}function gt(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function _t(e){for(let t=0;t<e.length;t++)e[t]=gt(e[t]);return e}function vt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function yt(e){return typeof e==`string`&&(e=vt(e)),ct(e),e}function bt(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];ct(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function xt(e){let t=t=>e().update(yt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function St(e){let t=(t,n)=>e(n).update(yt(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ct(e=32){if(it&&typeof it.getRandomValues==`function`)return it.getRandomValues(new Uint8Array(e));if(it&&typeof it.randomBytes==`function`)return Uint8Array.from(it.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var wt,Tt,Et,Dt=o((()=>{at(),wt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Tt=wt?e=>e:_t,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Et=class{}})),Ot,kt,At=o((()=>{Dt(),Ot=class extends Et{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lt(e);let n=yt(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),pt(i)}update(e){return ut(this),this.iHash.update(e),this}digestInto(e){ut(this),ct(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kt=(e,t,n)=>new Ot(e,t).update(n).digest(),kt.create=(e,t)=>new Ot(e,t)}));function jt(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Mt(e,t,n){return e&t^~e&n}function Nt(e,t,n){return e&t^e&n^t&n}var Pt,Ft,It,Lt,Rt=o((()=>{Dt(),Pt=class extends Et{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=mt(this.buffer)}update(e){ut(this),e=yt(e),ct(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=mt(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ut(this),dt(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,pt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;jt(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=mt(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ft=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),It=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function zt(e,t=!1){return t?{h:Number(e&Ht),l:Number(e>>Ut&Ht)}:{h:Number(e>>Ut&Ht)|0,l:Number(e&Ht)|0}}function Bt(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=zt(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function Vt(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn=o((()=>{Ht=BigInt(2**32-1),Ut=BigInt(32),Wt=(e,t,n)=>e>>>n,Gt=(e,t,n)=>e<<32-n|t>>>n,Kt=(e,t,n)=>e>>>n|t<<32-n,qt=(e,t,n)=>e<<32-n|t>>>n,Jt=(e,t,n)=>e<<64-n|t>>>n-32,Yt=(e,t,n)=>e>>>n-32|t<<64-n,Xt=(e,t,n)=>e<<n|t>>>32-n,Zt=(e,t,n)=>t<<n|e>>>32-n,Qt=(e,t,n)=>t<<n-32|e>>>64-n,$t=(e,t,n)=>e<<n-32|t>>>64-n,en=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),tn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,nn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),rn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,an=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),on=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function cn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=xn(a,o,1)^n[r],c=Sn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=gn[n],a=xn(t,i,r),o=Sn(t,i,r),s=hn[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=yn[r],e[1]^=bn[r]}pt(n)}var ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn=o((()=>{sn(),Dt(),ln=BigInt(0),un=BigInt(1),dn=BigInt(2),fn=BigInt(7),pn=BigInt(256),mn=BigInt(113),hn=[],gn=[],_n=[];for(let e=0,t=un,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],hn.push(2*(5*r+n)),gn.push((e+1)*(e+2)/2%64);let i=ln;for(let e=0;e<7;e++)t=(t<<un^(t>>fn)*mn)%pn,t&dn&&(i^=un<<(un<<BigInt(e))-un);_n.push(i)}vn=Bt(_n,!0),yn=vn[0],bn=vn[1],xn=(e,t,n)=>n>32?Qt(e,t,n):Xt(e,t,n),Sn=(e,t,n)=>n>32?$t(e,t,n):Zt(e,t,n),Cn=class e extends Et{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,st(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ft(this.state)}clone(){return this._cloneInto()}keccak(){Tt(this.state32),cn(this.state32,this.rounds),Tt(this.state32),this.posOut=0,this.pos=0}update(e){ut(this),e=yt(e),ct(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ut(this,!1),ct(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return st(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dt(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,pt(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},wn=(e,t,n)=>xt(()=>new Cn(t,e,n)),wn(6,144,224/8),wn(6,136,256/8),wn(6,104,384/8),wn(6,72,512/8),wn(1,144,224/8),Tn=wn(1,136,256/8),wn(1,104,384/8),wn(1,72,512/8),En=(e,t,n)=>St((r={})=>new Cn(t,e,r.dkLen===void 0?n:r.dkLen,!0)),En(31,168,128/8),En(31,136,256/8)})),On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn=o((()=>{Rt(),sn(),Dt(),On=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kn=new Uint32Array(64),An=class extends Pt{constructor(e=32){super(64,e,8,!1),this.A=Ft[0]|0,this.B=Ft[1]|0,this.C=Ft[2]|0,this.D=Ft[3]|0,this.E=Ft[4]|0,this.F=Ft[5]|0,this.G=Ft[6]|0,this.H=Ft[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)kn[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=kn[e-15],n=kn[e-2],r=ht(t,7)^ht(t,18)^t>>>3;kn[e]=(ht(n,17)^ht(n,19)^n>>>10)+kn[e-7]+r+kn[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=ht(o,6)^ht(o,11)^ht(o,25),u=l+t+Mt(o,s,c)+On[e]+kn[e]|0,d=(ht(n,2)^ht(n,13)^ht(n,22))+Nt(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){pt(kn)}destroy(){this.set(0,0,0,0,0,0,0,0),pt(this.buffer)}},jn=Bt(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Mn=jn[0],Nn=jn[1],Pn=new Uint32Array(80),Fn=new Uint32Array(80),In=class extends Pt{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Pn[n]=e.getUint32(t),Fn[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Pn[e-15]|0,n=Fn[e-15]|0,r=Kt(t,n,1)^Kt(t,n,8)^Wt(t,n,7),i=qt(t,n,1)^qt(t,n,8)^Gt(t,n,7),a=Pn[e-2]|0,o=Fn[e-2]|0,s=Kt(a,o,19)^Jt(a,o,61)^Wt(a,o,6),c=qt(a,o,19)^Yt(a,o,61)^Gt(a,o,6),l=nn(i,c,Fn[e-7],Fn[e-16]);Pn[e]=rn(l,r,s,Pn[e-7],Pn[e-16])|0,Fn[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=Kt(u,d,14)^Kt(u,d,18)^Jt(u,d,41),v=qt(u,d,14)^qt(u,d,18)^Yt(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=an(_,v,b,Nn[e],Fn[e]),S=on(x,g,t,y,Mn[e],Pn[e]),ee=x|0,C=Kt(n,r,28)^Jt(n,r,34)^Jt(n,r,39),w=qt(n,r,28)^Yt(n,r,34)^Yt(n,r,39),te=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=Vt(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let re=en(ee,w,ne);n=tn(re,S,C,te),r=re|0}({h:n,l:r}=Vt(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=Vt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=Vt(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=Vt(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=Vt(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=Vt(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=Vt(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=Vt(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){pt(Pn,Fn)}destroy(){pt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ln=class extends In{constructor(){super(48),this.Ah=It[0]|0,this.Al=It[1]|0,this.Bh=It[2]|0,this.Bl=It[3]|0,this.Ch=It[4]|0,this.Cl=It[5]|0,this.Dh=It[6]|0,this.Dl=It[7]|0,this.Eh=It[8]|0,this.El=It[9]|0,this.Fh=It[10]|0,this.Fl=It[11]|0,this.Gh=It[12]|0,this.Gl=It[13]|0,this.Hh=It[14]|0,this.Hl=It[15]|0}},Rn=xt(()=>new An),zn=xt(()=>new In),Bn=xt(()=>new Ln)}));Vn();let Hn=Rn;function Un(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Wn(e){if(!Un(e))throw Error(`Uint8Array expected`)}function Gn(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Kn(e){let t=e.toString(16);return t.length&1?`0`+t:t}function qn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?dr:BigInt(`0x`+e)}function Jn(e){if(Wn(e),pr)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=mr[e[n]];return t}function Yn(e){if(e>=hr._0&&e<=hr._9)return e-hr._0;if(e>=hr.A&&e<=hr.F)return e-(hr.A-10);if(e>=hr.a&&e<=hr.f)return e-(hr.a-10)}function Xn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(pr)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Yn(e.charCodeAt(i)),a=Yn(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Zn(e){return qn(Jn(e))}function Qn(e){return Wn(e),qn(Jn(Uint8Array.from(e).reverse()))}function $n(e,t){return Xn(e.toString(16).padStart(t*2,`0`))}function er(e,t){return $n(e,t).reverse()}function tr(e,t,n){let r;if(typeof t==`string`)try{r=Xn(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Un(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function nr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Wn(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function rr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function ir(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ar(e,t,n){return gr(e)&&gr(t)&&gr(n)&&t<=e&&e<n}function or(e,t,n,r){if(!ar(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function sr(e){let t;for(t=0;e>dr;e>>=fr,t+=1);return t}function cr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=vr(e),i=vr(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=vr(0))=>{i=s(yr([0]),e),r=s(),e.length!==0&&(i=s(yr([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return nr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function lr(e,t,n={}){let r=(t,n,r)=>{let i=br[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function ur(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr=o((()=>{dr=BigInt(0),fr=BigInt(1),pr=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,mr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hr={_0:48,_9:57,A:65,F:70,a:97,f:102},gr=e=>typeof e==`bigint`&&dr<=e,_r=e=>(fr<<BigInt(e))-fr,vr=e=>new Uint8Array(e),yr=e=>Uint8Array.from(e),br={bigint:e=>typeof e==`bigint`,function:e=>typeof e==`function`,boolean:e=>typeof e==`boolean`,string:e=>typeof e==`string`,stringOrUint8Array:e=>typeof e==`string`||Un(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e==`function`&&Number.isSafeInteger(e.outputLen)}}));function Sr(e,t){if(yi(e)>t)throw new Mi({givenSize:yi(e),maxSize:t})}function Cr(e,t){if(typeof t==`number`&&t>0&&t>yi(e)-1)throw new Ni({offset:t,position:`start`,size:yi(e)})}function wr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&yi(e)!==n-t)throw new Ni({offset:n,position:`end`,size:yi(e)})}function Tr(e){if(e>=Or.zero&&e<=Or.nine)return e-Or.zero;if(e>=Or.A&&e<=Or.F)return e-(Or.A-10);if(e>=Or.a&&e<=Or.f)return e-(Or.a-10)}function Er(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Pi({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function Dr(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var Or,kr=o((()=>{Fi(),Or={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ar(e,t){if(Jr(e)>t)throw new si({givenSize:Jr(e),maxSize:t})}function jr(e,t){if(typeof t==`number`&&t>0&&t>Jr(e)-1)throw new ci({offset:t,position:`start`,size:Jr(e)})}function Mr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Jr(e)!==n-t)throw new ci({offset:n,position:`end`,size:Jr(e)})}function Nr(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new li({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Pr(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var Fr=o((()=>{A()}));function Ir(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=>Ir(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)}:${Ir(r)}`),t},[]).join(`,`)}}`}function Lr(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(zr)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Rr(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+zr:n,n)}var zr,Br=o((()=>{zr=`#__bigint`}));function Vr(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new ii(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new ai(e)}function E(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function Hr(e){return e instanceof Uint8Array?D(e):Array.isArray(e)?D(new Uint8Array(e)):e}function Ur(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ar(n,t.size),Gr(n,t.size)):n}function D(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=ni[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ar(r,t.size),Kr(r,t.size)):r}function O(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ri({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Gr(s,r):s}function Wr(e,t={}){return D(ti.encode(e),t)}function Gr(e,t){return Nr(e,{dir:`left`,size:t})}function Kr(e,t){return Nr(e,{dir:`right`,size:t})}function qr(e){return D(vi(e))}function k(e,t,n,r={}){let{strict:i}=r;jr(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Mr(a,t,n),a}function Jr(e){return Math.ceil((e.length-2)/2)}function Yr(e){return Pr(e,{dir:`left`})}function Xr(e,t={}){let{signed:n}=t;t.size&&Ar(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Zr(e,t={}){return mi(e,t)}function Qr(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:Xr(e,t))}function $r(e,t={}){let{size:n}=t,r=mi(e);return n&&(Sr(r,n),r=Ei(r)),new TextDecoder().decode(r)}function ei(e,t={}){let{strict:n=!1}=t;try{return Vr(e,{strict:n}),!0}catch{return!1}}var ti,ni,ri,ii,ai,oi,si,ci,li,A=o((()=>{Fi(),rt(),kr(),Fr(),Br(),ti=new TextEncoder,ni=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ri=class extends T{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},ii=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Rr(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`})}},ai=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},oi=class extends T{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},si=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},ci=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},li=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function ui(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 ji(e)}function di(...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 fi(e){return e instanceof Uint8Array?e:typeof e==`string`?mi(e):pi(e)}function pi(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function mi(e,t={}){let{size:n}=t,r=e;n&&(Ar(e,n),r=Kr(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=Tr(i.charCodeAt(t++)),r=Tr(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new T(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function hi(e,t={}){let{size:n}=t,r=ki.encode(e);return typeof n==`number`?(Sr(r,n),_i(r,n)):r}function gi(e,t){return rr(e,t)}function _i(e,t){return Er(e,{dir:`right`,size:t})}function vi(e){return crypto.getRandomValues(new Uint8Array(e))}function yi(e){return e.length}function bi(e,t,n,r={}){let{strict:i}=r;Cr(e,t);let a=e.slice(t,n);return i&&wr(a,t,n),a}function xi(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Xr(D(e,t),t)}function Si(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(Sr(r,n),r=Ti(r)),r.length>1||r[0]>1)throw new Ai(r);return!!r[0]}function Ci(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Qr(D(e,t),t)}function wi(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(Sr(r,n),r=Ei(r)),Oi.decode(r)}function Ti(e){return Dr(e,{dir:`left`})}function Ei(e){return Dr(e,{dir:`right`})}function Di(e){try{return ui(e),!0}catch{return!1}}var Oi,ki,Ai,ji,Mi,Ni,Pi,Fi=o((()=>{xr(),rt(),A(),kr(),Fr(),Br(),Oi=new TextDecoder,ki=new TextEncoder,Ai=class extends T{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},ji=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Rr(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`})}},Mi=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Ni=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Pi=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));At(),Dn(),Fi(),A();function Ii(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(fi(e));return n===`Bytes`?r:D(r)}function Li(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=kt(Hn,fi(e),fi(t));return r===`Bytes`?i:D(i)}function Ri(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(fi(e));return n===`Bytes`?r:D(r)}function zi(e){return ei(e)&&Jr(e)===32}let Bi={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;Fi(),rt(),A(),Br();function Vi(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 Ji({prefix:r,cause:new Xi});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Ji({prefix:r,cause:new Yi});return}throw new qi({publicKey:e})}function Hi(e){let t=(()=>{if(ei(e))return Wi(e);if(Di(e))return Ui(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 Vi(t),t}function Ui(e){return Wi(D(e))}function Wi(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Zi({publicKey:e});return e.length===130?{prefix:4,x:BigInt(k(e,0,32)),y:BigInt(k(e,32,64))}:e.length===132?{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33)),y:BigInt(k(e,33,65))}:{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33))}}function Gi(e,t={}){return mi(Ki(e,t))}function Ki(e,t={}){Vi(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return E(a?O(n,{size:1}):`0x`,O(r,{size:32}),typeof i==`bigint`?O(i,{size:32}):`0x`)}var qi=class extends T{constructor({publicKey:e}){super(`Value \\`${Rr(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`})}},Ji=class extends T{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},Yi=class extends T{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},Xi=class extends T{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Zi=class extends T{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Jr(Hr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Fi(),rt();let Qi=/^0x[a-fA-F0-9]{40}$/;function $i(e,t={}){let{strict:n=!0}=t;if(!Qi.test(e))throw new aa({address:e,cause:new oa});if(n){if(e.toLowerCase()===e)return;if(ea(e)!==e)throw new aa({address:e,cause:new sa})}}function ea(e){if(Bi.has(e))return Bi.get(e);$i(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ii(hi(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 Bi.set(e,i),i}function ta(e,t={}){let{checksum:n=!1}=t;return $i(e),n?ea(e):e}function na(e,t={}){return ta(`0x${Ii(`0x${Ki(e).slice(4)}`).substring(26)}`,t)}function ra(e,t){return $i(e,{strict:!1}),$i(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function ia(e,t={}){let{strict:n=!0}=t??{};try{return $i(e,{strict:n}),!0}catch{return!1}}var aa=class extends T{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},oa=class extends T{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},sa=class extends T{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};rt();function ca(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new T(`Unable to normalize signature.`);return i}function la(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return ia(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)=>la(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=>la(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ua(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 ua(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`))&&ia(n[r],{strict:!1}))return o}}rt(),A();function da(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=ei(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?fa(e)===k(t,0,4):e.type===`event`?ma(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ga({name:t});if(o.length===1)return{...o[0],...i?{hash:ma(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:ma(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?la(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ua(e.inputs,s.inputs,r);if(t)throw new ha({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 ga({name:t});return{...c,...i?{hash:ma(c)}:{}}}function fa(...e){return k(ma((()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})()),0,4)}function pa(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})();return ca(typeof t==`string`?t:ye(t))}function ma(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Ii(Wr(pa(t)))}var ha=class extends T{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ca(ye(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${ca(ye(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},ga=class extends T{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let _a=/^(.*)\\[([0-9]*)\\]$/,va=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ya=/^(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 ba=2n**256n-1n;Fi(),rt(),A();function xa(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=za(t.type);if(a){let[n,o]=a;return Ca(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return Da(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return Sa(e,{checksum:r});if(t.type===`bool`)return wa(e);if(t.type.startsWith(`bytes`))return Ta(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Ea(e,t);if(t.type===`string`)return Oa(e,{staticPosition:i});throw new no(t.type)}function Sa(e,t={}){let{checksum:n=!1}=t;return[(e=>n?ea(e):e)(D(bi(e.readBytes(32),-20))),32]}function Ca(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Ci(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Ci(e.readBytes(32)),s=Ba(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=xa(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ba(t)){let n=a+Ci(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=xa(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]=xa(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function wa(e){return[Si(e.readBytes(32),{size:32}),32]}function Ta(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Ci(e.readBytes(32));e.setPosition(n+t);let r=Ci(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[D(i),32]}return[D(e.readBytes(Number.parseInt(i,10),32)),32]}function Ea(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?xi(i,{signed:n}):Ci(i,{signed:n}),32]}function Da(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(Ba(t)){let n=i+Ci(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=xa(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]=xa(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function Oa(e,{staticPosition:t}){let n=t+Ci(e.readBytes(32));e.setPosition(n);let r=Ci(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=wi(Ti(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function ka({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(Aa({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function Aa({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=za(r.type);if(i){let[t,a]=i;return Na(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Ra(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return Ma(n,{checksum:e});if(r.type===`bool`)return Fa(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=ya.exec(r.type)??[];return Ia(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return Pa(n,{type:r.type});if(r.type===`string`)return La(n);throw new no(r.type)}function ja(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Jr(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(O(t+i,{size:32})),r.push(s),i+=Jr(s)):n.push(s)}return E(...n,...r)}function Ma(e,t){let{checksum:n=!1}=t;return $i(e,{strict:n}),{dynamic:!1,encoded:Gr(e.toLowerCase())}}function Na(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new to(e);if(!a&&e.length!==r)throw new Qa({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=Aa({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ja(s);if(a){let t=O(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?E(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:E(...s.map(({encoded:e})=>e))}}function Pa(e,{type:t}){let[,n]=t.split(`bytes`),r=Jr(e);if(!n){let t=e;return r%32!=0&&(t=Kr(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:E(Gr(O(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new $a({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Kr(e)}}function Fa(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Gr(Ur(e))}}function Ia(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 ri({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:O(e,{size:32,signed:t})}}function La(e){let t=Wr(e),n=Math.ceil(Jr(t)/32),r=[];for(let e=0;e<n;e++)r.push(Kr(k(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:E(Kr(O(Jr(t),{size:32})),...r)}}function Ra(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=Aa({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ja(a):E(...a.map(({encoded:e})=>e))}}function za(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ba(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ba);let n=za(e.type);return!!(n&&Ba({...e,type:n[1]}))}rt();let Va={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 Ga({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Wa({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ua({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 Ua({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 Ha(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Va);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Ua=class extends T{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Wa=class extends T{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Ga=class extends T{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Fi(),rt(),A();function Ka(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?mi(t):t,o=Ha(a);if(yi(a)===0&&e.length>0)throw new Za;if(yi(a)&&yi(a)<32)throw new Xa({data:typeof t==`string`?t:D(t),parameters:e,size:yi(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]=xa(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function qa(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new eo({expectedLength:e.length,givenLength:t.length});let i=ja(ka({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ja(e,t){if(e.length!==t.length)throw new eo({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(Ja.encode(i,a))}return E(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return $i(e),Gr(e.toLowerCase(),r?32:0)}if(e===`string`)return Wr(n);if(e===`bytes`)return n;if(e===`bool`)return Gr(Ur(n),r?32:1);let i=e.match(ya);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return O(n,{size:r?32:o,signed:t===`int`})}let a=e.match(va);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new $a({expectedSize:Number.parseInt(t,10),value:n});return Kr(n,r?32:0)}let o=e.match(_a);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:E(...i)}throw new no(e)}e.encode=t})(Ja||={});function Ya(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Ze(e):e}var Xa=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${ve(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Za=class extends T{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Qa=class extends T{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},$a=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Jr(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},eo=class extends T{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},to=class extends T{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},no=class extends T{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function ro(e){return fa(e)}rt(),A();function io(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=>zi(e)?e:Yr(e))})}return t}function ao(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Jr(r[e])!==32)throw new oo({storageKey:r[e]});n&&$i(n,{strict:!1}),t.push([n,r])}return t}var oo=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Jr(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};Fi(),rt(),A();function so(e){return co(e,`Hex`)}function co(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return lo(Ha((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new oi(e);return mi(e)}return e})(),{recursiveReadLimit:1/0}),n)}function lo(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?D(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=uo(e,n,128),i=e.readBytes(r);return t===`Hex`?D(i):i}return fo(e,uo(e,n,192),t)}function uo(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new T(`Invalid RLP prefix`)}function fo(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(lo(e,n));return i}function po(e,t){let{as:n}=t,r=ho(e),i=Ha(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}function mo(e,t={}){let{as:n=`Hex`}=t;return po(e,{as:n})}function ho(e){return Array.isArray(e)?go(e.map(e=>ho(e))):_o(e)}function go(e){let t=e.reduce((e,t)=>e+t.length,0),n=vo(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function _o(e){let t=typeof e==`string`?mi(e):e,n=vo(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function vo(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new T(`Length is too large.`)}function yo(e,t){let n=e%t;return n>=Fo?n:t+n}function bo(e,t,n){let r=e;for(;t-- >Fo;)r*=r,r%=n;return r}function xo(e,t){if(e===Fo)throw Error(`invert: expected non-zero number`);if(t<=Fo)throw Error(`invert: expected positive modulus, got `+t);let n=yo(e,t),r=t,i=Fo,a=Io,o=Io,s=Fo;for(;n!==Fo;){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!==Io)throw Error(`invert: does not exist`);return yo(i,t)}function So(e,t){let n=(e.ORDER+Io)/zo,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function Co(e,t){let n=(e.ORDER-Bo)/Vo,r=e.mul(t,Lo),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Lo),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 wo(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Io,n=0;for(;t%Lo===Fo;)t/=Lo,n++;let r=Lo,i=jo(e);for(;ko(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return So;let a=i.pow(r,t),o=(t+Io)/Lo;return function(e,r){if(e.is0(r))return r;if(ko(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=Io<<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 To(e){return e%zo===Ro?So:e%Vo===Bo?Co:wo(e)}function Eo(e){return lr(e,Ho.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Do(e,t,n){if(n<Fo)throw Error(`invalid exponent, negatives unsupported`);if(n===Fo)return e.ONE;if(n===Io)return t;let r=e.ONE,i=t;for(;n>Fo;)n&Io&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Io;return r}function Oo(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 ko(e,t){let n=(e.ORDER-Io)/Lo,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 Ao(e,t){t!==void 0&&st(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function jo(e,t,n=!1,r={}){if(e<=Fo)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Ao(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:_r(i),ZERO:Fo,ONE:Io,create:t=>yo(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Fo<=t&&t<e},is0:e=>e===Fo,isOdd:e=>(e&Io)===Io,neg:t=>yo(-t,e),eql:(e,t)=>e===t,sqr:t=>yo(t*t,e),add:(t,n)=>yo(t+n,e),sub:(t,n)=>yo(t-n,e),mul:(t,n)=>yo(t*n,e),pow:(e,t)=>Do(s,e,t),div:(t,n)=>yo(t*xo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>xo(t,e),sqrt:r.sqrt||(t=>(o||=To(e),o(s,t))),toBytes:e=>n?er(e,a):$n(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Qn(e):Zn(e)},invertBatch:e=>Oo(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Mo(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function No(e){let t=Mo(e);return t+Math.ceil(t/2)}function Po(e,t,n=!1){let r=e.length,i=Mo(t),a=No(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=yo(n?Qn(e):Zn(e),t-Io)+Io;return n?er(o,i):$n(o,i)}var Fo,Io,Lo,Ro,zo,Bo,Vo,Ho,Uo=o((()=>{Dt(),xr(),Fo=BigInt(0),Io=BigInt(1),Lo=BigInt(2),Ro=BigInt(3),zo=BigInt(4),Bo=BigInt(5),Vo=BigInt(8),Ho=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Wo(e,t){let n=t.negate();return e?n:t}function Go(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Ko(e,t){Go(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:_r(e),maxNumber:i,shiftBy:BigInt(e)}}function qo(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+=ts);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 Jo(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 Yo(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 Xo(e){return rs.get(e)||1}function Zo(e,t){return{constTimeNegate:Wo,hasPrecomputes(e){return Xo(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>es;)n&ts&&(r=r.add(i)),i=i.double(),n>>=ts;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Ko(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=Ko(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=qo(i,e,s);i=t,c?o=o.add(Wo(u,r[d])):a=a.add(Wo(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Ko(n,t);for(let e=0;e<o.windows&&i!==es;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=qo(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=ns.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&ns.set(t,n(r))),r},wNAFCached(e,t,n){let r=Xo(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Xo(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Go(n,t),rs.set(e,n),ns.delete(e)}}}function Qo(e,t,n,r){Jo(n,e),Yo(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=sr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=_r(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function $o(e){return Eo(e.Fp),lr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Ao(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var es,ts,ns,rs,is=o((()=>{Uo(),xr(),es=BigInt(0),ts=BigInt(1),ns=new WeakMap,rs=new WeakMap}));function as(e){e.lowS!==void 0&&Gn(`lowS`,e.lowS),e.prehash!==void 0&&Gn(`prehash`,e.prehash)}function os(e){let t=$o(e);lr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function ss(e,t){return Jn($n(e,t))}function cs(e){let t=os(e),{Fp:n}=t,r=jo(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return nr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,_s),vs),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return ar(e,j,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Un(e)&&(e=Jn(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Zn(tr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=yo(o,a)),or(`private key`,o,j,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=ur((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=ur(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Oo(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(tr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Qo(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,_s),{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,_s),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;or(`scalar`,e,hs,i);let a=h.ZERO;if(e===hs)return a;if(this.is0()||e===j)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>hs||l>hs;)s&j&&(u=u.add(f)),l&j&&(d=d.add(f)),f=f.double(),s>>=j,l>>=j;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;or(`scalar`,e,j,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===hs||t===j||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===j)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===j?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Gn(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Gn(`isCompressed`,e),Jn(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=Zo(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function ls(e){let t=$o(e);return lr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function us(e){let t=ls(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return yo(e,r)}function l(e){return xo(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=cs({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=nr;return Gn(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Zn(i);if(!ar(e,j,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&j)===j;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>j}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Zn(e.slice(t,n));class _{constructor(e,t,n){or(`r`,e,j,r),or(`s`,t,j,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=tr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=ms.toSig(tr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(tr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+ss(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return ms.hexFromSig(this)}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){let e=i;return ss(this.r,e)+ss(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=No(t.n);return Po(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=tr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Zn(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=_r(a);function w(e){return or(`num < 2^`+a,e,hs,C),$n(e,i)}function te(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=tr(`msgHash`,e),as(i),f&&(e=tr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[w(y),w(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(tr(`extraEntropy`,e))}let x=nr(...b),C=v;function te(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===hs)return;let a=c(n*c(C+i*y));if(a===hs)return;let o=(r.x===i?0:2)|Number(r.y&j),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:te}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=te(e,n,r),o=t;return cr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=tr(`msgHash`,n),r=tr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(as(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Un(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof ms.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),C=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return C?c(C.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function ds(e,t){let n=e.ORDER,r=hs;for(let e=n-j;e%gs===hs;e/=gs)r+=j;let i=r,a=gs<<i-j-j,o=a*gs,s=(n-j)/o,c=(s-j)/gs,l=o-j,u=a,d=e.pow(t,s),f=e.pow(t,(s+j)/gs),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>j;t--){let n=t-gs;n=gs<<n-j;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%vs===_s){let n=(e.ORDER-_s)/vs,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 fs(e,t){if(Eo(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=ds(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=Oo(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var ps,ms,hs,j,gs,_s,vs,ys=o((()=>{is(),Uo(),xr(),ps=class extends Error{constructor(e=``){super(e)}},ms={Err:ps,_tlv:{encode:(e,t)=>{let{Err:n}=ms;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Kn(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Kn(i.length/2|128):``;return Kn(e)+a+i+t},decode(e,t){let{Err:n}=ms,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}=ms;if(e<hs)throw new t(`integer: negative integers are not allowed`);let n=Kn(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=ms;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Zn(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=ms,i=tr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=ms,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},hs=BigInt(0),j=BigInt(1),gs=BigInt(2),_s=BigInt(3),vs=BigInt(4)}));function bs(e){return{hash:e,hmac:(t,...n)=>kt(e,t,bt(...n)),randomBytes:Ct}}function xs(e,t){let n=t=>us({...e,...bs(t)});return{...n(t),create:n}}var Ss=o((()=>{At(),Dt(),ys()}));function Cs(e,t){if(Ts(e),Ts(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 ws(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 Ts(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Es(e,t,n,r){Wn(e),Wn(t),Ts(n),t.length>255&&(t=r(nr(ir(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=nr(t,Cs(t.length,1)),c=Cs(0,a),l=Cs(n,2),u=Array(o),d=r(nr(c,e,l,Cs(0,1),s));u[0]=r(nr(d,Cs(1,1),s));for(let e=1;e<=o;e++)u[e]=r(nr(ws(d,u[e-1]),Cs(e+1,1),s));return nr(...u).slice(0,n)}function Ds(e,t,n,r,i){if(Wn(e),Wn(t),Ts(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(ir(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(Cs(n,2)).update(t).update(Cs(t.length,1)).digest()}function Os(e,t,n){lr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Wn(e),Ts(t);let l=typeof c==`string`?ir(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Es(e,l,f,o);else if(s===`xof`)p=Ds(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]=yo(js(p.subarray(i,i+d)),r)}m[e]=t}return m}function ks(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]=Oo(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function As(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=Os(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(Os(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 js,Ms=o((()=>{Uo(),xr(),js=Zn})),Ns=c({encodeToCurve:()=>lc,hashToCurve:()=>cc,schnorr:()=>ic,secp256k1:()=>Ys,secp256k1_hasher:()=>sc});function Ps(e){let t=Hs,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=bo(bo(bo(u,n,t)*u%t,n,t)*u%t,Ks,t)*l%t,f=bo(d,i,t)*d%t,p=bo(f,a,t)*f%t,m=bo(p,s,t)*p%t,h=bo(bo(bo(bo(bo(bo(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Ks,t);if(!Js.eql(Js.sqr(h),e))throw Error(`Cannot find square root`);return h}function Fs(e,...t){let n=Xs[e];if(n===void 0){let t=Rn(Uint8Array.from(e,e=>e.charCodeAt(0)));n=nr(t,t),Xs[e]=n}return Rn(nr(n,...t))}function Is(e){let t=Ys.utils.normPrivateKeyToScalar(e),n=tc.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:ec(-t),bytes:Zs(n)}}function Ls(e){or(`x`,e,Gs,Hs);let t=Ps($s($s(e*e)*e+BigInt(7)));t%Ks!==Ws&&(t=$s(-t));let n=new tc(e,t,Gs);return n.assertValidity(),n}function Rs(...e){return ec(rc(Fs(`BIP0340/challenge`,...e)))}function zs(e){return Is(e).bytes}function Bs(e,t,n=Ct(32)){let r=tr(`message`,e),{bytes:i,scalar:a}=Is(t),o=ec(rc(Fs(`BIP0340/nonce`,Qs(a^rc(Fs(`BIP0340/aux`,tr(`auxRand`,n,32)))),i,r)));if(o===Ws)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Is(o),l=Rs(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Qs(ec(c+l*a)),32),!Vs(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Vs(e,t,n){let r=tr(`signature`,e,64),i=tr(`message`,t),a=tr(`publicKey`,n,32);try{let e=Ls(rc(a)),t=rc(r.subarray(0,32));if(!ar(t,Gs,Hs))return!1;let n=rc(r.subarray(32,64));if(!ar(n,Gs,Us))return!1;let o=nc(e,n,ec(-Rs(Qs(t),Zs(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs,Zs,Qs,$s,ec,tc,nc,rc,ic,ac,oc,sc,cc,lc,uc=o((()=>{Vn(),Dt(),Ss(),Ms(),Uo(),xr(),ys(),Hs=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Us=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Ws=BigInt(0),Gs=BigInt(1),Ks=BigInt(2),qs=(e,t)=>(e+t/Ks)/t,Js=jo(Hs,void 0,void 0,{sqrt:Ps}),Ys=xs({a:Ws,b:BigInt(7),Fp:Js,n:Us,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Us,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Gs*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=qs(a*e,t),c=qs(-r*e,t),l=yo(e-s*n-c*i,t),u=yo(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Rn),Xs={},Zs=e=>e.toRawBytes(!0).slice(1),Qs=e=>$n(e,32),$s=e=>yo(e,Hs),ec=e=>yo(e,Us),tc=Ys.ProjectivePoint,nc=(e,t,n)=>tc.BASE.multiplyAndAddUnsafe(e,t,n),rc=Zn,ic={getPublicKey:zs,sign:Bs,verify:Vs,utils:{randomPrivateKey:Ys.utils.randomPrivateKey,lift_x:Ls,pointToBytes:Zs,numberToBytesBE:$n,bytesToNumberBE:Zn,taggedHash:Fs,mod:yo}},ac=ks(Js,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),oc=fs(Js,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:Js.create(BigInt(`-11`))}),sc=As(Ys.ProjectivePoint,e=>{let{x:t,y:n}=oc(Js.create(e[0]));return ac(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:Js.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),cc=sc.hashToCurve,lc=sc.encodeToCurve}));rt(),A(),Br();function dc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Tc({signature:e});if(e.r<0n||e.r>ba)throw new Ec({value:e.r});if(e.s<0n||e.s>ba)throw new Dc({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Oc({value:e.yParity})}function fc(e){return pc(D(e))}function pc(e){if(e.length!==130&&e.length!==132)throw new wc({signature:e});let t=BigInt(k(e,0,32)),n=BigInt(k(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return Sc(t)}catch{throw new Oc({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function mc(e){if(e.r!==void 0&&e.s!==void 0)return hc(e)}function hc(e){let t=typeof e==`string`?pc(e):e instanceof Uint8Array?fc(e):typeof e.r==`string`?_c(e):e.v?gc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return dc(t),t}function gc(e){return{r:e.r,s:e.s,yParity:Sc(e.v)}}function _c(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=Sc(t)),typeof n!=`number`)throw new Oc({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function vc(e){let[t,n,r]=e;return hc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function yc(e){dc(e);let t=e.r,n=e.s;return E(O(t,{size:32}),O(n,{size:32}),typeof e.yParity==`number`?O(Cc(e.yParity),{size:1}):`0x`)}function bc(e){let{r:t,s:n,yParity:r}=e;return{r:O(t,{size:32}),s:O(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function xc(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Yr(O(t)),n===0n?`0x`:Yr(O(n))]}function Sc(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new kc({value:e})}function Cc(e){if(e===0)return 27;if(e===1)return 28;throw new Oc({value:e})}var wc=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Jr(Hr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Tc=class extends T{constructor({signature:e}){super(`Signature \\`${Rr(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Ec=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Dc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Oc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},kc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};A();function Ac(e,t={}){return typeof e.chainId==`string`?jc(e):{...e,...t.signature}}function jc(e){let{address:t,chainId:n,nonce:r}=e,i=mc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Mc(e){return e.map(jc)}function Nc(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:O(n),nonce:O(r),...bc(i)}}function Pc(e){return e.map(Nc)}Fi();let Fc=new TextEncoder,Ic=new TextDecoder,Lc=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Rc={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function zc(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]=Lc[r>>18],i[t+1]=Lc[r>>12&63],i[t+2]=Lc[r>>6&63],i[t+3]=Lc[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Ic.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function Bc(e,t={}){return zc(mi(e),t)}function Vc(e,t={}){return zc(hi(e),t)}function Hc(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Fc.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Rc[r[e]]<<18)+(Rc[r[e+1]]<<12)+(Rc[r[e+2]]<<6)+Rc[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 Uc(e){return wi(Hc(e))}let Wc={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Gc={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Kc(e,t={}){if(!e)return null;let n=mc(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=Mc(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=Gc[e.type]??e.type),n&&(r.v=Cc(n.yParity)),r}function qc(e){return{address:e.address,amount:O(e.amount),index:O(e.index),validatorIndex:O(e.validatorIndex)}}var Jc=o((()=>{A()}));function Yc(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:O(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:O(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:O(e.gasLimit)},...typeof e.number==`bigint`&&{number:O(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:O(e.prevRandao)},...typeof e.time==`bigint`&&{time:O(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(qc)}}}var Xc=o((()=>{A(),Jc()}));Fi(),rt(),A();function Zc(e,t={}){let{as:n=`Hex`}=t,r=dl(e),i=Ha(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}var Qc=class extends T{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},$c=class extends T{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},el=class extends T{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},tl=class extends T{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},nl=class extends T{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},rl=class extends T{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},il=class extends T{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},al=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},ol=class extends T{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},sl=class extends T{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},cl=class extends T{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},ll=class extends T{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},ul=class extends T{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function dl(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 dl.number(e);if(typeof e==`bigint`)throw new il;if(typeof e==`string`)return dl.string(e);if(Array.isArray(e))return dl.array(e);if(e instanceof Uint8Array)return dl.byteString(e);if(e instanceof ArrayBuffer)return dl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return dl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return dl.map(e);if(typeof e==`object`)return dl.object(e);throw new al({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 ol({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 ol({number:e.toString(10)})}e.number=t;function n(e){let t=hi(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 sl({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 cl({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 ul({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 ll({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 ll({size:i})}e.map=o})(dl||={});function fl(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return fl.readUnsignedInteger(e,r);case 1:return fl.readNegativeInteger(e,r);case 2:return fl.readByteString(e,r);case 3:return fl.readTextString(e,r);case 4:return fl.readArray(e,r);case 5:return fl.readMap(e,r);case 6:throw new tl({tag:r});case 7:return fl.readSimpleOrFloat(e,r);default:throw new Qc({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 el:new $c({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 nl({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 nl({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return wi(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 rl({value:t});return}throw new $c({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}})(fl||={}),rt();function pl(e){let t=Gi(e),n=t.slice(1,33),r=t.slice(33,65);return Zc(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}uc(),Fi(),A();function ml(e){let{privateKey:t}=e;return Hi(Ys.ProjectivePoint.fromPrivateKey(Hr(t).slice(2)))}function hl(e){return na(gl(e))}function gl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Hi(new Ys.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(Hr(t).substring(2)))}function _l(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Ys.sign(fi(r),fi(i),{extraEntropy:typeof t==`boolean`?t:Hr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function vl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?ra(t,hl({payload:r,signature:a})):Ys.verify(a,fi(r),Gi(i),...n?[{prehash:!0,lowS:!0}]:[])}Vn(),Ss(),Ms(),Uo(),ys();let yl=jo(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),bl=yl.create(BigInt(`-3`)),xl=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Sl=xs({a:bl,b:xl,Fp:yl,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Rn),Cl=Sl,wl=fs(yl,{A:bl,B:xl,Z:yl.create(BigInt(`-10`))}),Tl=As(Cl.ProjectivePoint,e=>wl(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:yl.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),El=jo(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Dl=El.create(BigInt(`-3`)),Ol=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),kl=xs({a:Dl,b:Ol,Fp:El,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Bn),Al=fs(El,{A:Dl,B:Ol,Z:El.create(BigInt(`-12`))});As(kl.ProjectivePoint,e=>Al(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:El.ORDER,m:1,k:192,expand:`xmd`,hash:Bn});let jl=jo(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Ml=jl.create(BigInt(`-3`)),Nl=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Pl=xs({a:Ml,b:Nl,Fp:jl,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},zn),Fl=fs(jl,{A:Ml,B:Nl,Z:jl.create(BigInt(`-4`))});As(Pl.ProjectivePoint,e=>Fl(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:jl.ORDER,m:1,k:256,expand:`xmd`,hash:zn});let Il=Sl,Ll=Sl;Tl.hashToCurve,Tl.encodeToCurve,Fi(),A();function Rl(e){let{privateKey:t}=e;return Hi(Ll.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):D(t).slice(2)))}function zl(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Ll.sign(r instanceof Uint8Array?r:mi(r),i instanceof Uint8Array?i:mi(i),{extraEntropy:typeof t==`boolean`?t:Hr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Bl(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Ll.verify(i,n instanceof Uint8Array?n:mi(n),Ki(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Vl=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 Hl(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Ul(r.error);return r.result}function Ul(e){let t=e;if(t instanceof Error&&!(`code`in t))return new tu({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===tu.code?new tu(t):n===Gl.code?new Gl(t):n===eu.code?new eu(t):n===Ql.code?new Ql(t):n===Xl.code?new Xl(t):n===$l.code?new $l(t):n===Yl.code?new Yl(t):n===nu.code?new nu(t):n===Kl.code?new Kl(t):n===ql.code?new ql(t):n===Jl.code?new Jl(t):n===Zl.code?new Zl(t):new tu({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Wl=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??``}},Gl=class e extends Wl{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(Gl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Kl=class e extends Wl{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(Kl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var ql=class e extends Wl{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(ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Jl=class e extends Wl{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(Jl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Yl=class e extends Wl{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(Yl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var Xl=class e extends Wl{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(Xl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Zl=class e extends Wl{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(Zl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Ql=class e extends Wl{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(Ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var $l=class e extends Wl{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($l,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var eu=class e extends Wl{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(eu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var tu=class e extends Wl{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(tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var nu=class e extends Wl{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(nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),rt();var ru=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}},iu=class extends ru{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(iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var au=class extends ru{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(au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var ou=class extends ru{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(ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var su=class extends ru{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(su,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var cu=class extends ru{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(cu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var lu=class extends ru{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(lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var uu=class extends ru{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(uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var du=class extends ru{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(du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var fu=class extends ru{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(fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var pu=class extends ru{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(pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var mu=class extends ru{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(mu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var hu=class extends ru{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(hu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var gu=class extends ru{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(gu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function _u(){let e=new Vl.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 vu(e,t={}){if(!e)throw new bu;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?Hl(n):n}catch(e){throw yu(e)}}}}function yu(e){let t=Ul(e);if(t instanceof tu){if(!t.data)return t;let{code:e}=t.data;if(e===su.code)return new su(t);if(e===cu.code)return new cu(t);if(e===iu.code)return new iu(t);if(e===au.code)return new au(t);if(e===ou.code)return new ou(t);if(e===lu.code)return new lu(t);if(e===hu.code)return new hu(t);if(e===gu.code)return new gu(t);if(e===mu.code)return new mu(t);if(e===pu.code)return new pu(t);if(e===fu.code)return new fu(t);if(e===du.code)return new du(t);if(e===uu.code)return new uu(t)}return t}var bu=class extends T{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function xu(e={}){let t=e.id??0;return{prepare(e){return Su({id:t++,...e})},get id(){return t}}}function Su(e){return{...e,jsonrpc:`2.0`}}function Cu(){return null}A();function wu(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Pc(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=O(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=O(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=O(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=O(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=O(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=O(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Wc[e.type]||e.type),e.value!==void 0&&(t.value=O(e.value)),t}rt();let Tu={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Eu(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 Du(e,t=`wei`){return Eu(e,Tu.gwei-Tu[t])}rt();var Ou=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Du(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`})}},ku=class extends T{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},Au=class extends T{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},ju=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Du(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Du(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function Mu(e){let t=Il.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}A();function Nu(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=E(Ri(Wr(r)),O(n,{size:1}),O(i,{size:4}));if(!t)return a;let o=D(new Uint8Array(16)),s=D(t.id);return E(a,o,O(t.id.length,{size:2}),s,pl(t.publicKey))}function Pu(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:Bc(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Fi(),rt(),A();function Fu(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:Hc(e),type:`public-key`})):[{id:Hc(t),type:`public-key`}]}:{},challenge:mi(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Iu(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Nu({flag:i,rpId:o,signCount:s}),u=Pu({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ri(Wr(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:E(l,d)}}async function Lu(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Fu(n);try{let e=await t(r);if(!e)throw new Ru;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=Mu(o);return{id:s,metadata:{authenticatorData:D(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Ru({cause:e})}}var Ru=class extends T{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function zu(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=mi(s);if(u.length<37||a!==void 0&&!gi(u.slice(0,32),Ri(Wr(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||D(Hc(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Bl({hash:!0,payload:di(u,Ri(hi(c),{as:`Bytes`})),publicKey:i,signature:o})}let Bu=Iu;async function Vu(e){return Lu(e)}function Hu(e){return zu(e)}Fi();async function Uu(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=Hi(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Wu(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,fi(t)),i=pi(new Uint8Array(r)),a=xi(bi(i,0,32)),o=xi(bi(i,32,64));return o>Il.CURVE.n/2n&&(o=Il.CURVE.n-o),{r:a,s:o}}var Gu,Ku=o((()=>{Gu=`1.2.3`})),qu,Ju=o((()=>{Ku(),qu=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@${Gu}`].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 Yu(e,t){return e.exec(t)?.groups}var Xu,Zu,Qu,$u=o((()=>{Xu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Zu=/^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)?$/,Qu=/^\\(.+?\\).*?$/}));function ed(e){let t=e.type;if(td.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+=ed(i),r<n-1&&(t+=`, `)}let r=Yu(td,e.type);return t+=`)${r?.array||``}`,ed({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var td,nd=o((()=>{$u(),td=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function rd(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ed(i),r!==n-1&&(t+=`, `)}return t}var id=o((()=>{nd()}));function ad(e){return e.type===`function`?`function ${e.name}(${rd(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${rd(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${rd(e.inputs)})`:e.type===`error`?`error ${e.name}(${rd(e.inputs)})`:e.type===`constructor`?`constructor(${rd(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var od=o((()=>{id()}));function sd(e){return bd.test(e)}function cd(e){return Yu(bd,e)}function ld(e){return xd.test(e)}function ud(e){return Yu(xd,e)}function dd(e){return Sd.test(e)}function fd(e){return Yu(Sd,e)}function pd(e){return Cd.test(e)}function md(e){return Yu(Cd,e)}function hd(e){return wd.test(e)}function gd(e){return Yu(wd,e)}function _d(e){return Td.test(e)}function vd(e){return Yu(Td,e)}function yd(e){return Ed.test(e)}var bd,xd,Sd,Cd,wd,Td,Ed,Dd,Od,kd=o((()=>{$u(),bd=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,xd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Sd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Cd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,wd=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Td=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Ed=/^receive\\(\\) external payable$/,Dd=new Set([`indexed`]),Od=new Set([`calldata`,`memory`,`storage`])})),Ad,jd,Md=o((()=>{Ju(),Ad=class extends qu{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`})}},jd=class extends qu{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`})}}})),Nd,Pd,Fd,Id,Ld,Rd=o((()=>{Ju(),Nd=class extends qu{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Pd=class extends qu{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`})}},Fd=class extends qu{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`})}},Id=class extends qu{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`})}},Ld=class extends qu{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`})}}})),zd,Bd,Vd,Hd=o((()=>{Ju(),zd=class extends qu{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Bd=class extends qu{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},Vd=class extends qu{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`})}}})),Ud,Wd=o((()=>{Ju(),Ud=class extends qu{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`})}}})),Gd,Kd=o((()=>{Ju(),Gd=class extends qu{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 qd(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 Jd,Yd=o((()=>{Jd=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 Xd(e,t={}){if(dd(e))return Zd(e,t);if(ld(e))return Qd(e,t);if(sd(e))return $d(e,t);if(hd(e))return ef(e,t);if(_d(e))return tf(e);if(yd(e))return{type:`receive`,stateMutability:`payable`};throw new Bd({signature:e})}function Zd(e,t={}){let n=fd(e);if(!n)throw new zd({signature:e,type:`function`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{modifiers:Od,structs:t,type:`function`}));let o=[];if(n.returns){let e=rf(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(nf(e[n],{modifiers:Od,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function Qd(e,t={}){let n=ud(e);if(!n)throw new zd({signature:e,type:`event`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{modifiers:Dd,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function $d(e,t={}){let n=cd(e);if(!n)throw new zd({signature:e,type:`error`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function ef(e,t={}){let n=gd(e);if(!n)throw new zd({signature:e,type:`constructor`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function tf(e){let t=vd(e);if(!t)throw new zd({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function nf(e,t){let n=qd(e,t?.type,t?.structs);if(Jd.has(n))return Jd.get(n);let r=Qu.test(e),i=Yu(r?lf:cf,e);if(!i)throw new Nd({param:e});if(i.name&&of(i.name))throw new Pd({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=rf(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(nf(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(uf.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!af(c))throw new jd({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Fd({param:e,type:t?.type,modifier:i.modifier});if(Od.has(i.modifier)&&!sf(c,!!i.array))throw new Id({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Jd.set(n,u),u}function rf(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?rf(o,[...t,n.trim()]):rf(o,t,`${n}${i}`,r);case`(`:return rf(o,t,`${n}${i}`,r+1);case`)`:return rf(o,t,`${n}${i}`,r-1);default:return rf(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Gd({current:n,depth:r});return t.push(n.trim()),t}function af(e){return e===`address`||e===`bool`||e===`function`||e===`string`||Xu.test(e)||Zu.test(e)}function of(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||Xu.test(e)||Zu.test(e)||df.test(e)}function sf(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var cf,lf,uf,df,ff=o((()=>{$u(),Md(),Rd(),Hd(),Kd(),Yd(),kd(),cf=/^(?<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$_]*))?$/,lf=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,uf=/^u?int$/,df=/^(?: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 pf(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!pd(n))continue;let i=md(n);if(!i)throw new zd({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=nf(t,{type:`struct`});o.push(n)}if(!o.length)throw new Vd({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]=mf(a,t)}return r}function mf(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Qu.test(i.type))r.push(i);else{let e=Yu(hf,i.type);if(!e?.type)throw new Ld({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Ud({type:o});r.push({...i,type:`tuple${a??``}`,components:mf(t[o],t,new Set([...n,o]))})}else if(af(o))r.push(i);else throw new Ad({type:o})}}return r}var hf,gf=o((()=>{$u(),Md(),Rd(),Hd(),Wd(),kd(),ff(),hf=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function _f(e){let t=pf(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];pd(r)||n.push(Xd(r,t))}return n}var vf=o((()=>{kd(),gf(),ff()})),yf=o((()=>{Ju(),od(),nd(),id(),vf(),Md(),kd(),gf(),ff(),Rd(),Hd(),Kd(),Wd()}));function M(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function bf(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new Qf(e.type);return`${e.name}(${xf(e.inputs,{includeName:t})})`}function xf(e,{includeName:t=!1}={}){return e?e.map(e=>Sf(e,{includeName:t})).join(t?`, `:`,`):``}function Sf(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${xf(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Cf=o((()=>{$f()}));function N(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var wf=o((()=>{}));function P(e){return N(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Tf=o((()=>{wf()})),Ef,Df=o((()=>{Ef=`2.47.6`}));function Of(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Of(e.cause,t):t?null:e}var kf,F,I=o((()=>{Df(),kf={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Ef}`},F=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=kf.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...kf.version?[`Version: ${kf.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=Ef}walk(e){return Of(this,e)}}})),Af,jf,Mf,Nf,Pf,Ff,If,Lf,Rf,zf,Bf,Vf,Hf,Uf,Wf,Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf,$f=o((()=>{Cf(),Tf(),I(),Af=class extends F{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},jf=class extends F{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},Mf=class extends F{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${xf(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}},Nf=class extends F{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Pf=class extends F{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Ff=class extends F{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${P(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},If=class extends F{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},Lf=class extends F{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Rf=class extends F{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},zf=class extends F{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},Bf=class extends F{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Vf=class extends F{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},Hf=class extends F{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},Uf=class extends F{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},Wf=class extends F{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},Gf=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${bf(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${bf(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Kf=class extends F{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},qf=class extends F{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${xf(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}},Jf=class extends F{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${bf(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},Yf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},Xf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},Zf=class extends F{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},Qf=class extends F{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),ep,tp,np,rp=o((()=>{I(),ep=class extends F{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},tp=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},np=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function ip(e,{dir:t,size:n=32}={}){return typeof e==`string`?ap(e,{dir:t,size:n}):op(e,{dir:t,size:n})}function ap(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new tp({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function op(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new tp({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 sp=o((()=>{rp()})),cp,lp,up,dp,fp,pp=o((()=>{I(),cp=class extends F{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},lp=class extends F{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},up=class extends F{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},dp=class extends F{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},fp=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function mp(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 hp=o((()=>{}));function gp(e,{size:t}){if(P(e)>t)throw new fp({givenSize:P(e),maxSize:t})}function L(e,t={}){let{signed:n}=t;t.size&&gp(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function _p(e,t={}){let n=e;if(t.size&&(gp(n,{size:t.size}),n=mp(n)),mp(n)===`0x00`)return!1;if(mp(n)===`0x01`)return!0;throw new up(n)}function vp(e,t={}){let n=L(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new cp({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var yp=o((()=>{pp(),Tf(),hp()}));function bp(e,t={}){return typeof e==`number`||typeof e==`bigint`?R(e,t):typeof e==`string`?Cp(e,t):typeof e==`boolean`?xp(e,t):Sp(e,t)}function xp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{size:t.size})):n}function Sp(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=wp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(gp(r,{size:t.size}),ip(r,{dir:`right`,size:t.size})):r}function R(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new cp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?ip(s,{size:r}):s}function Cp(e,t={}){return Sp(Tp.encode(e),t)}var wp,Tp,z=o((()=>{pp(),sp(),yp(),wp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Tp=new TextEncoder}));function Ep(e,t={}){return typeof e==`number`||typeof e==`bigint`?Ap(e,t):typeof e==`boolean`?Dp(e,t):N(e)?kp(e,t):jp(e,t)}function Dp(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{size:t.size})):n}function Op(e){if(e>=Np.zero&&e<=Np.nine)return e-Np.zero;if(e>=Np.A&&e<=Np.F)return e-(Np.A-10);if(e>=Np.a&&e<=Np.f)return e-(Np.a-10)}function kp(e,t={}){let n=e;t.size&&(gp(n,{size:t.size}),n=ip(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=Op(r.charCodeAt(t++)),i=Op(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new F(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Ap(e,t){return kp(R(e,t))}function jp(e,t={}){let n=Mp.encode(e);return typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{dir:`right`,size:t.size})):n}var Mp,Np,Pp=o((()=>{I(),wf(),sp(),yp(),z(),Mp=new TextEncoder,Np={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Fp(e,t){let n=t||`hex`,r=Tn(N(e,{strict:!1})?Ep(e):e);return n===`bytes`?r:bp(r)}var Ip=o((()=>{Dn(),wf(),Pp(),z()}));function Lp(e){return Rp(e)}var Rp,zp=o((()=>{Pp(),Ip(),Rp=e=>Fp(Ep(e))}));function Bp(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new F(`Unable to normalize signature.`);return i}var Vp=o((()=>{I()})),Hp,Up=o((()=>{yf(),Vp(),Hp=e=>Bp(typeof e==`string`?e:ad(e))}));function Wp(e){return Lp(Hp(e))}var Gp=o((()=>{zp(),Up()})),Kp,qp=o((()=>{Gp(),Kp=Wp})),Jp,Yp=o((()=>{I(),Jp=class extends F{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),Xp,Zp=o((()=>{Xp=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 Qp(e,t){if(em.has(`${e}.${t}`))return em.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Fp(jp(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 em.set(`${e}.${t}`,a),a}function $p(e,t){if(!nm(e,{strict:!1}))throw new Jp({address:e});return Qp(e,t)}var em,tm=o((()=>{Yp(),Pp(),Ip(),Zp(),am(),em=new Xp(8192)}));function nm(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(im.has(r))return im.get(r);let i=rm.test(e)?e.toLowerCase()===e?!0:n?Qp(e)===e:!0:!1;return im.set(r,i),i}var rm,im,am=o((()=>{Zp(),tm(),rm=/^0x[a-fA-F0-9]{40}$/,im=new Xp(8192)}));function om(e){return typeof e[0]==`string`?cm(e):sm(e)}function sm(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 cm(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var lm=o((()=>{}));function um(e,t,n,{strict:r}={}){return N(e,{strict:!1})?mm(e,t,n,{strict:r}):pm(e,t,n,{strict:r})}function dm(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new ep({offset:t,position:`start`,size:P(e)})}function fm(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new ep({offset:n,position:`end`,size:P(e)})}function pm(e,t,n,{strict:r}={}){dm(e,t);let i=e.slice(t,n);return r&&fm(i,t,n),i}function mm(e,t,n,{strict:r}={}){dm(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&fm(i,t,n),i}var hm=o((()=>{rp(),wf(),Tf()})),gm,_m,vm=o((()=>{gm=/^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)?$/}));function ym(e,t){if(e.length!==t.length)throw new If({expectedLength:e.length,givenLength:t.length});let n=Sm(bm({params:e,values:t}));return n.length===0?`0x`:n}function bm({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(xm({param:e[r],value:t[r]}));return n}function xm({param:e,value:t}){let n=Am(e.type);if(n){let[r,i]=n;return wm(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return km(t,{param:e});if(e.type===`address`)return Cm(t);if(e.type===`bool`)return Em(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=_m.exec(e.type)??[];return Dm(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Tm(t,{param:e});if(e.type===`string`)return Om(t);throw new Yf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Sm(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=P(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(R(t+i,{size:32})),r.push(s),i+=P(s)):n.push(s)}return om([...n,...r])}function Cm(e){if(!nm(e))throw new Jp({address:e});return{dynamic:!1,encoded:ap(e.toLowerCase())}}function wm(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new Zf(e);if(!r&&e.length!==t)throw new Pf({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=xm({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Sm(a);if(r){let t=R(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?om([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:om(a.map(({encoded:e})=>e))}}function Tm(e,{param:t}){let[,n]=t.type.split(`bytes`),r=P(e);if(!n){let t=e;return r%32!=0&&(t=ap(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:om([ap(R(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Ff({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ap(e,{dir:`right`})}}function Em(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ap(xp(e))}}function Dm(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 cp({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 Om(e){let t=Cp(e),n=Math.ceil(P(t)/32),r=[];for(let e=0;e<n;e++)r.push(ap(um(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:om([ap(R(P(t),{size:32})),...r])}}function km(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=xm({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Sm(r):om(r.map(({encoded:e})=>e))}}function Am(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var jm=o((()=>{$f(),Yp(),I(),pp(),am(),lm(),sp(),Tf(),hm(),z(),vm()})),Mm,Nm=o((()=>{hm(),Gp(),Mm=e=>um(Wp(e),0,4)}));function Pm(e){let{abi:t,args:n=[],name:r}=e,i=N(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Mm(e)===r:e.type===`event`?Kp(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?Fm(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Im(e.inputs,o.inputs,n);if(t)throw new Gf({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Fm(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return nm(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`&&Fm(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=>Fm(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Im(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 Im(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`))&&nm(n[r],{strict:!1}))return o}}var Lm=o((()=>{$f(),wf(),am(),qp(),Nm()}));function Rm(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var zm=o((()=>{}));function Bm(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Pm({abi:t,args:n,name:r});if(!e)throw new Hf(r,{docsPath:Vm});i=e}if(i.type!==`function`)throw new Hf(void 0,{docsPath:Vm});return{abi:[i],functionName:Mm(bf(i))}}var Vm,Hm=o((()=>{$f(),Nm(),Cf(),Lm(),Vm=`/docs/contract/encodeFunctionData`}));function Um(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Bm(e),i=n[0];return cm([r,(`inputs`in i&&i.inputs?ym(i.inputs,t??[]):void 0)??`0x`])}var Wm=o((()=>{lm(),jm(),Hm()})),Gm,Km,qm,Jm=o((()=>{Gm={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.`},Km={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},qm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Ym,Xm,Zm,Qm=o((()=>{I(),Ym=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Xm=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Zm=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function $m(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(eh);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var eh,th=o((()=>{Qm(),eh={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 Zm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Xm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ym({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 Ym({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 nh(e,t={}){return t.size!==void 0&&gp(e,{size:t.size}),L(Sp(e,t),t)}function rh(e,t={}){let n=e;if(t.size!==void 0&&(gp(n,{size:t.size}),n=mp(n)),n.length>1||n[0]>1)throw new lp(n);return!!n[0]}function ih(e,t={}){return t.size!==void 0&&gp(e,{size:t.size}),vp(Sp(e,t),t)}function ah(e,t={}){let n=e;return t.size!==void 0&&(gp(n,{size:t.size}),n=mp(n,{dir:`right`})),new TextDecoder().decode(n)}var oh=o((()=>{pp(),hp(),yp(),z()}));function sh(e,t){let n=typeof t==`string`?kp(t):t,r=$m(n);if(P(n)===0&&e.length>0)throw new Nf;if(P(t)&&P(t)<32)throw new Mf({data:typeof t==`string`?t:Sp(t),params:e,size:P(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=ch(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function ch(e,t,{staticPosition:n}){let r=Am(t.type);if(r){let[i,a]=r;return uh(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return mh(e,t,{staticPosition:n});if(t.type===`address`)return lh(e);if(t.type===`bool`)return dh(e);if(t.type.startsWith(`bytes`))return fh(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return ph(e,t);if(t.type===`string`)return hh(e,{staticPosition:n});throw new Xf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function lh(e){return[Qp(Sp(pm(e.readBytes(32),-20))),32]}function uh(e,t,{length:n,staticPosition:r}){if(!n){let n=r+ih(e.readBytes(vh)),i=n+_h;e.setPosition(n);let a=ih(e.readBytes(_h)),o=gh(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=ch(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(gh(t)){let i=r+ih(e.readBytes(vh)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=ch(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]=ch(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function dh(e){return[rh(e.readBytes(32),{size:32}),32]}function fh(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=ih(e.readBytes(32));e.setPosition(n+t);let r=ih(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Sp(i),32]}return[Sp(e.readBytes(Number.parseInt(i,10),32)),32]}function ph(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?nh(i,{signed:n}):ih(i,{signed:n}),32]}function mh(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(gh(t)){let o=n+ih(e.readBytes(vh));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=ch(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]=ch(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function hh(e,{staticPosition:t}){let n=t+ih(e.readBytes(32));e.setPosition(n);let r=ih(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=ah(mp(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function gh(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(gh);let n=Am(e.type);return!!(n&&gh({...e,type:n[1]}))}var _h,vh,yh=o((()=>{$f(),tm(),th(),Tf(),hm(),hp(),oh(),Pp(),z(),jm(),_h=32,vh=32}));function bh(e){let{abi:t,data:n,cause:r}=e,i=um(n,0,4);if(i===`0x`)throw new Nf({cause:r});let a=[...t||[],Km,qm].find(e=>e.type===`error`&&i===Mm(bf(e)));if(!a)throw new zf(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?sh(a.inputs,um(n,4)):void 0,errorName:a.name}}var xh=o((()=>{Jm(),$f(),hm(),Nm(),yh(),Cf()})),Sh,Ch=o((()=>{Sh=(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 wh({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`?Sh(t[n]):t[n]}`).join(`, `)})`}var Th=o((()=>{Ch()})),Eh,Dh,Oh=o((()=>{Eh={gwei:9,wei:18},Dh={ether:-9,wei:9}}));function kh(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 Ah=o((()=>{}));function jh(e,t=`wei`){return kh(e,Eh[t])}var Mh=o((()=>{Oh(),Ah()}));function Nh(e,t=`wei`){return kh(e,Dh[t])}var Ph=o((()=>{Oh(),Ah()}));function Fh(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Ih(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+=Fh(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Fh(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Lh,Rh,zh=o((()=>{I(),Lh=class extends F{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},Rh=class extends F{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Bh(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 Vh,Hh,Uh,Wh,Gh,Kh,qh=o((()=>{Mh(),Ph(),I(),Vh=class extends F{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Hh=class extends F{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Bh(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`})}},Uh=class extends F{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},Wh=class extends F{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},Gh=class extends F{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Kh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Bh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(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}}})),Jh,Yh,Xh=o((()=>{Jh=e=>e,Yh=e=>e})),Zh,Qh,$h,eg,tg,ng,rg=o((()=>{zm(),Jm(),xh(),Cf(),Th(),Lm(),Mh(),Ph(),$f(),I(),zh(),qh(),Xh(),Zh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=Bh({from:(t?Rm(t):void 0)?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});f&&(p+=`\\n${Ih(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}},Qh=class extends F{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Pm({abi:t,args:n,name:a}),c=s?wh({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?bf(s,{includeName:!0}):void 0,u=Bh({address:r&&Jh(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}},$h=class extends F{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=bh({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=Gm[e]}else{let e=n?bf(n,{includeName:!0}):void 0,t=n&&a?wh({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 zf&&(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}},eg=class extends F{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},tg=class extends F{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},ng=class extends F{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),ig,ag,og,sg=o((()=>{Ch(),I(),Xh(),ig=class extends F{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${Yh(a)}`,e&&`Request body: ${Sh(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}},ag=class extends F{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Yh(n)}`,`Request body: ${Sh(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}},og=class extends F{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Yh(t)}`,`Request body: ${Sh(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),cg,lg,ug,dg,fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg,Tg,Eg,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig,Lg,Rg=o((()=>{I(),sg(),cg=-1,lg=class extends F{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof ag?e.code:t??cg}},ug=class extends lg{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},dg=class e extends lg{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(dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),fg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),pg=class e extends lg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),mg=class e extends lg{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(mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),hg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(hg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),gg=class e extends lg{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(gg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),_g=class e extends lg{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(_g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),vg=class e extends lg{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(vg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),yg=class e extends lg{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(yg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),bg=class e extends lg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(bg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),xg=class e extends lg{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(xg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Sg=class e extends lg{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Sg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Cg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(Cg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),wg=class e extends ug{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(wg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Tg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Tg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Eg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Eg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Dg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Og=class e extends ug{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(Og,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),kg=class e extends ug{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(kg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Ag=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(Ag,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),jg=class e extends ug{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(jg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Mg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Ng=class e extends ug{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Ng,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Pg=class e extends ug{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(Pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Fg=class e extends ug{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Ig=class e extends ug{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Ig,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Lg=class extends lg{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));$f(),I(),rg(),sg(),Rg();function zg(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof ng?e:e instanceof F?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Qh(e instanceof Nf?new eg({functionName:a,cause:e}):[3,hg.code].includes(c)&&(l||u||d||f)||c===gg.code&&u===`execution reverted`&&l?new $h({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof ag?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}tm(),Ip();function Bg(e){return Qp(`0x${Fp(`0x${e.substring(4)}`).substring(26)}`)}wf(),Tf(),yp(),z();async function Vg({hash:e,signature:t}){let n=N(e)?e:bp(e),{secp256k1:r}=await Promise.resolve().then(()=>(uc(),Ns));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Hg(Number(a??i));return new r.Signature(L(e),L(n)).addRecoveryBit(o)}let e=N(t)?t:bp(t);if(P(e)!==65)throw Error(`invalid signature length`);let n=Hg(vp(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Hg(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 Ug({hash:e,signature:t}){return Bg(await Vg({hash:e,signature:t}))}I(),th(),Pp(),z();function Wg(e,t=`hex`){let n=Gg(e),r=$m(new Uint8Array(n.length));return n.encode(r),t===`hex`?Sp(r.bytes):r.bytes}function Gg(e){return Array.isArray(e)?Kg(e.map(e=>Gg(e))):qg(e)}function Kg(e){let t=e.reduce((e,t)=>e+t.length,0),n=Jg(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 qg(e){let t=typeof e==`string`?kp(e):e,n=Jg(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 Jg(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new F(`Length is too large.`)}lm(),Pp(),z(),Ip();function Yg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Fp(cm([`0x05`,Wg([t?R(t):`0x`,i,n?R(n):`0x`])]));return r===`bytes`?kp(a):a}async function Xg(e){let{authorization:t,signature:n}=e;return Ug({hash:Yg(t),signature:n??t})}Mh(),Ph(),I(),qh();var Zg=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Bh({from:t?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(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}},Qg,$g,e_,t_,n_,r_,i_,a_,o_,s_,c_,l_,u_=o((()=>{Ph(),I(),Qg=class extends F{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(Qg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Qg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),$g=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Nh(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty($g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),e_=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Nh(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(e_,`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/}),t_=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(t_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),n_=class extends F{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(n_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),r_=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(r_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),i_=class extends F{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(i_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),a_=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(a_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),o_=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(o_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),s_=class extends F{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(s_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),c_=class extends F{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Nh(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Nh(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(c_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),l_=class extends F{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function d_(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof F?e.walk(e=>e?.code===Qg.code):e;return r instanceof F?new Qg({cause:e,message:r.details}):Qg.nodeMessage.test(n)?new Qg({cause:e,message:e.details}):$g.nodeMessage.test(n)?new $g({cause:e,maxFeePerGas:t?.maxFeePerGas}):e_.nodeMessage.test(n)?new e_({cause:e,maxFeePerGas:t?.maxFeePerGas}):t_.nodeMessage.test(n)?new t_({cause:e,nonce:t?.nonce}):n_.nodeMessage.test(n)?new n_({cause:e,nonce:t?.nonce}):r_.nodeMessage.test(n)?new r_({cause:e,nonce:t?.nonce}):i_.nodeMessage.test(n)?new i_({cause:e}):a_.nodeMessage.test(n)?new a_({cause:e,gas:t?.gas}):o_.nodeMessage.test(n)?new o_({cause:e,gas:t?.gas}):s_.nodeMessage.test(n)?new s_({cause:e}):c_.nodeMessage.test(n)?new c_({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new l_({cause:e})}var f_=o((()=>{I(),u_()}));u_(),f_();function p_(e,{docsPath:t,...n}){return new Zg((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}function m_(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 h_=o((()=>{}));function g_(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 __=o((()=>{}));function v_(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=y_(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Sp(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=R(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=R(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=R(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=R(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=R(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=b_[e.type]),e.value!==void 0&&(n.value=R(e.value)),n}function y_(e){return e.map(e=>({address:e.address,r:e.r?R(BigInt(e.r)):e.r,s:e.s?R(BigInt(e.s)):e.s,chainId:R(e.chainId),nonce:R(e.nonce),...e.yParity===void 0?{}:{yParity:R(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:R(e.v)}:{}}))}var b_,x_,S_=o((()=>{z(),__(),b_={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},x_=g_(`transactionRequest`,v_)}));function C_(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new np({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new np({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function w_(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=R(t)),n!==void 0&&(o.nonce=R(n)),r!==void 0&&(o.state=C_(r)),i!==void 0){if(o.state)throw new Rh;o.stateDiff=C_(i)}return o}function T_(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!nm(n,{strict:!1}))throw new Jp({address:n});if(t[n])throw new Lh({address:n});t[n]=w_(r)}return t}var E_=o((()=>{Yp(),rp(),zh(),am(),z()})),D_,O_=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)),D_=2n**256n-1n}));function k_(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?Rm(t):void 0;if(a&&!nm(a.address))throw new Jp({address:a.address});if(i&&!nm(i))throw new Jp({address:i});if(n&&n>D_)throw new $g({maxFeePerGas:n});if(r&&n&&r>n)throw new c_({maxFeePerGas:n,maxPriorityFeePerGas:r})}var A_=o((()=>{zm(),O_(),Yp(),u_(),am()}));Ph(),I();var j_=class extends F{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},M_=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},N_=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Nh(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};I();var P_=class extends F{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};yp(),__();let F_={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function I_(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?vp(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?vp(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?F_[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=R_(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 L_=g_(`transaction`,I_);function R_(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 z_(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:I_(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}z();async function B_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:R(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new P_({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||z_)(s,`getBlock`)}async function V_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}yp();async function H_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await M(e,B_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?L(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):M(e,B_,`getBlock`)({}),M(e,V_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new M_;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function U_(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 j_;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await M(e,B_,`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 M_;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await H_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await M(e,V_,`getGasPrice`)({}))}}yp(),z();async function W_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return vp(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?R(r):n]},{dedupe:!!r}))}Pp(),z();function G_(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=>kp(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Sp(e))}Pp(),z();function K_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>kp(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>kp(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Sp(e))}wf(),Pp(),z();function q_(e,t){let n=t||`hex`,r=Hn(N(e,{strict:!1})?Ep(e):e);return n===`bytes`?r:bp(r)}z();function J_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=q_(t,`bytes`);return i.set([n],0),r===`bytes`?i:Sp(i)}function Y_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(J_({commitment:e,to:r,version:n}));return i}let X_=4096,Z_=32*X_;Z_*6-1-1*X_*6,I();var Q_=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},$_=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},ev=class extends F{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},tv=class extends F{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};th(),Tf(),Pp(),z();function nv(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?kp(e.data):e.data,r=P(n);if(!r)throw new $_;if(r>761855)throw new Q_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=$m(new Uint8Array(Z_)),t=0;for(;t<X_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Sp(e.bytes))}function rv(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??nv({data:t,to:r}),a=e.commitments??G_({blobs:i,kzg:n,to:r}),o=e.proofs??K_({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}qh();function iv(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 Hh({transaction:e})}u_(),qh(),f_();function av(e,{docsPath:t,...n}){return new Kh((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}yp();async function ov(e){return vp(await e.request({method:`eth_chainId`},{dedupe:!0}))}zm(),h_(),S_(),A_();async function sv(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=Rm(n),r=a?a.id:await M(e,ov,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();k_(t);let x=a?.formatters?.transactionRequest?.format,S=(x||v_)({...m_(y,{format:x}),account:n?Rm(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||I_)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await M(e,B_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new j_;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 av(n,{...t,chain:e.chain})}}zm(),Zp(),A_();let cv=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],lv=new Map,uv=new Xp(128);async function dv(e,t){let n=t;n.account??=e.account,n.parameters??=cv;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await M(e,ov,`getChainId`)({}),c):n.chainId)}let u=r&&Rm(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||uv.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await M(e,sv,`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 uv.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`)})&&uv.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await M(e,B_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await M(e,W_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=G_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Y_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=rv({blobs:p,commitments:e,proofs:K_({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=iv(n)}catch{let t=lv.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,lv.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 U_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new N_({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new M_;if(n.gasPrice===void 0){let{gasPrice:t}=await U_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await M(e,fv,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),k_(n),delete n.parameters,n}zm(),I(),z(),h_(),S_(),E_(),A_();async function fv(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?Rm(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 Xg({authorization:t.authorizationList[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await dv(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?R(u):void 0)||d,ee=T_(b);k_(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||v_)({...m_(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw p_(n,{...t,account:i,chain:e.chain})}}function pv(e,t){if(!nm(e,{strict:!1}))throw new Jp({address:e});if(!nm(t,{strict:!1}))throw new Jp({address:t});return e.toLowerCase()===t.toLowerCase()}var mv=o((()=>{Yp(),am()}));function hv(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}:{}}}$f(),Qm(),Tf(),qp(),yh(),Cf();let gv=`/docs/contract/decodeEventLog`;function _v(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Bf({docsPath:gv});let c=t.find(e=>e.type===`event`&&o===Kp(bf(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Vf(o,{docsPath:gv});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 Jf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=vv({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=sh(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 Mf||e instanceof Xm?new qf({abiItem:c,data:n,params:g,size:P(n)}):e}else if(a)throw new qf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function vv({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(sh([e],t)||[])[0]}mv(),Pp(),Ip(),qp();function yv(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:Kp(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?hv(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=_v({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=_v({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)||!bv({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function bv(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`?pv(t,n):e.type===`string`||e.type===`bytes`?Fp(Ep(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 xv(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Pm({abi:t,args:n,name:r});if(!e)throw new Hf(r,{docsPath:Sv});a=e}if(a.type!==`function`)throw new Hf(void 0,{docsPath:Sv});if(!a.outputs)throw new Uf(a.name,{docsPath:Sv});let o=sh(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var Sv,Cv=o((()=>{$f(),yh(),Lm(),Sv=`/docs/contract/decodeFunctionResult`})),wv,Tv,Ev,Dv,Ov,kv=o((()=>{wv=[{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`}],Tv=[{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`}]}],Ev=[{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`}],[...Ev],[...Ev],Dv=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Ov=[{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`}]})),Av=o((()=>{})),jv,Mv,Nv,Pv,Fv=o((()=>{jv=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Mv=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Nv=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Pv=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Iv,Lv,Rv,zv,Bv,Vv=o((()=>{I(),Iv=class extends F{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Lv=class extends F{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},Rv=class extends F{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},zv=class extends F{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Bv=class extends F{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Hv(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 Af({docsPath:Uv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new jf({docsPath:Uv});return cm([r,ym(i.inputs,n)])}var Uv,Wv=o((()=>{$f(),lm(),jm(),Uv=`/docs/contract/encodeDeployData`}));function Gv({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Iv({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Iv({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Kv=o((()=>{Vv()}));function qv(e,{docsPath:t,...n}){return new Zh((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}var Jv=o((()=>{rg(),u_(),f_()}));function Yv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Xv=o((()=>{}));function Zv({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=()=>Qv.delete(t),s=()=>c().map(({args:e})=>e),c=()=>Qv.get(t)||[],l=e=>Qv.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Yv();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 Qv,$v=o((()=>{Xv(),Qv=new Map})),ey,ty,ny,ry=o((()=>{Ch(),I(),Xh(),ey=class extends F{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${Yh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ty=class extends F{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Yh(t)}`,`Response: ${Sh(e)}`],name:`OffchainLookupResponseMalformedError`})}},ny=class extends F{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function iy(e){let{abi:t,data:n}=e,r=um(n,0,4),i=t.find(e=>e.type===`function`&&r===Mm(bf(e)));if(!i)throw new Wf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?sh(i.inputs,um(n,4)):void 0}}var ay=o((()=>{$f(),hm(),Nm(),yh(),Cf()}));function oy(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Pm({abi:t,args:r,name:n});if(!e)throw new Rf(n,{docsPath:sy});i=e}if(i.type!==`error`)throw new Rf(void 0,{docsPath:sy});let a=Mm(bf(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new Lf(i.name,{docsPath:sy});o=ym(i.inputs,r)}return cm([a,o])}var sy,cy=o((()=>{$f(),lm(),Nm(),jm(),Cf(),Lm(),sy=`/docs/contract/encodeErrorResult`}));function ly(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Pm({abi:t,name:n});if(!e)throw new Hf(n,{docsPath:uy});i=e}if(i.type!==`function`)throw new Hf(void 0,{docsPath:uy});if(!i.outputs)throw new Uf(i.name,{docsPath:uy});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Zf(r)})();return ym(i.outputs,a)}var uy,dy=o((()=>{$f(),jm(),Lm(),uy=`/docs/contract/encodeFunctionResult`}));async function fy(e){let{data:t,ccipRequest:n}=e,{args:[r]}=iy({abi:Tv,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await fy({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=py(e)}})),ly({abi:Tv,functionName:`query`,result:[i,a]})}function py(e){return e.name===`HttpRequestError`&&e.status?oy({abi:Tv,errorName:`HttpError`,args:[e.status,e.shortMessage]}):oy({abi:[Km],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var my=o((()=>{kv(),Jm(),ay(),cy(),dy()})),hy=c({ccipRequest:()=>_y,offchainLookup:()=>gy,offchainLookupAbiItem:()=>yy,offchainLookupSignature:()=>vy});async function gy(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=bh({data:r,abi:[yy]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:_y;try{if(!pv(i,o))throw new ny({sender:o,to:i});let{data:r}=await xy(e,{blockNumber:t,blockTag:n,data:om([l,ym([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await fy({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new ey({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function _y({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 ig({body:s,details:i?.error?Sh(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!N(i)){r=new ty({result:i,url:a});continue}return i}catch(e){r=new ig({body:s,details:e.message,url:a})}}throw r}var vy,yy,by=o((()=>{Dy(),ry(),sg(),xh(),jm(),mv(),lm(),wf(),my(),Ch(),vy=`0x556f1830`,yy={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 xy(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?Rm(n):void 0;if(u&&(f||p))throw new F(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new F(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?wy({code:u,data:d}):te?Ty({data:d,factory:f,factoryData:p,to:b}):d;try{k_(t);let n=(typeof a==`bigint`?R(a):void 0)||o,u=l?Yc(l):void 0,d=T_(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||v_)({...m_(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&Sy({request:p})&&!d&&!u)try{return await Cy(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof zv)&&!(e instanceof Iv))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=Ey(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(by(),hy));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new tg({factory:f}):qv(n,{...t,account:C,chain:e.chain})}}function Sy({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 Cy(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 Gv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new zv})(),u=(typeof a==`bigint`?R(a):void 0)||o,{schedule:d}=Zv({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=Um({abi:wv,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:wy({code:Pv,data:r})}:{to:l,data:r}},u]});return xv({abi:wv,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new ng({data:f});return f===`0x`?{data:void 0}:{data:f}}function wy(e){let{code:t,data:n}=e;return Hv({abi:_f([`constructor(bytes, bytes)`]),bytecode:jv,args:[t,n]})}function Ty(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Hv({abi:_f([`constructor(address, bytes, address, bytes)`]),bytecode:Mv,args:[i,t,n,r]})}function Ey(e){if(!(e instanceof F))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Dy=o((()=>{yf(),Xc(),zm(),kv(),Av(),Fv(),I(),Vv(),rg(),Cv(),Wv(),Wm(),Kv(),z(),Jv(),h_(),S_(),$v(),E_(),A_()}));Cv(),Wm(),Dy();async function Oy(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Um({abi:n,args:i,functionName:a});try{let{data:t}=await M(e,xy,`call`)({...o,data:s,to:r});return xv({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw zg(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let ky=new Map,Ay=new Map,jy=0;function My(e,t,n){let r=++jy,i=()=>ky.get(e)||[],a=()=>{let t=i();ky.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Ay.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(ky.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`&&Ay.set(e,l),o}async function Ny(e){return new Promise(t=>setTimeout(t,e))}function Py(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Ny(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Ny(r),s())};s()})(),a}I();var Fy=class extends F{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},Iy=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Vv();function Ly({chain:e,currentChainId:t}){if(!e)throw new Rv;if(t!==e.id)throw new Lv({chain:e,currentChainId:t})}async function Ry(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}zm(),I(),lm(),h_(),S_(),Zp(),A_();let zy=new Xp(128);async function By(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 Fy({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?Rm(n):null;try{k_(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Xg({authorization:o[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await M(e,ov,`getChainId`)({}),r&&Ly({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||v_)({...m_(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?om([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=zy.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=>(zy.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(zy.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await M(e,dv,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?om([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...cv,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await M(e,Ry,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Iy({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Iy({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Iy?e:av(e,{...t,account:y,chain:t.chain||void 0})}}zm(),Wm();async function Vy(e,t){return Vy.internal(e,By,`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 Fy({docsPath:`/docs/contract/writeContract`});let u=a?Rm(a):null,d=Um({abi:i,args:s,functionName:c});try{return await M(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw zg(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Vy||={}),I();var Hy=class extends F{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function Uy(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 Ny(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}yp(),__();let Wy={\"0x0\":`reverted`,\"0x1\":`success`};function Gy(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=>hv(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?vp(e.transactionIndex):null,status:e.status?Wy[e.status]:null,type:e.type?F_[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Ky=g_(`transactionReceipt`,Gy);zm(),I(),Rg(),Wm(),lm(),yp(),z();let qy=R(0,{size:32});async function Jy(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?Rm(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?Um({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?om([n,t.dataSuffix]):n,to:t.to,value:t.value?R(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:R(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new kg(new F(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new Fg(new F(e,{details:e}))}let t=[];for(let n of d){let i=By(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?L(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:om([...n.map(e=>e.status===`fulfilled`?e.value:qy),R(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw av(n,{...t,account:l,chain:t.chain})}}hm(),hp(),yp();async function Yy(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=mp(mm(t,-64,-32)),r=mm(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>qy.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:vp(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?vp(i):void 0,receipts:a?.map(e=>({...e,blockNumber:L(e.blockNumber),gasUsed:L(e.gasUsed),status:Wy[e.status]}))??[],statusCode:l,status:c,version:o}}I(),Xv(),Ch();async function Xy(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=Sh([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=Yv(),p,m=My(l,{resolve:d,reject:f},t=>{let s=Py(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await Uy(async()=>{let t=await M(e,Yy,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Hy(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 Zy({id:n}))},s):void 0,await u}var Zy=class extends F{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let Qy=256,$y;function eb(e=11){if(!$y||Qy+e>256*2){$y=``,Qy=0;for(let e=0;e<256;e++)$y+=(256+Math.random()*256|0).toString(16).substring(1)}return $y.substring(Qy,Qy+++e)}zm();function tb(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?Rm(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:eb(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}z();async function nb(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:R(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}O_(),Yp(),I(),Vv(),u_(),am(),Tf(),hm(),yp();function rb(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!nm(n))throw new Jp({address:n});if(t<0)throw new Bv({chainId:t})}ab(e)}function ib(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new $_;for(let e of t){let t=P(e),n=vp(um(e,0,1));if(t!==32)throw new ev({hash:e,size:t});if(n!==1)throw new tv({hash:e,version:n})}}ab(e)}function ab(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Bv({chainId:t});if(i&&!nm(i))throw new Jp({address:i});if(r&&r>D_)throw new $g({maxFeePerGas:r});if(n&&r&&n>r)throw new c_({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ob(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Bv({chainId:t});if(a&&!nm(a))throw new Jp({address:a});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>D_)throw new $g({maxFeePerGas:r})}function sb(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!nm(a))throw new Jp({address:a});if(t!==void 0&&t<=0)throw new Bv({chainId:t});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>D_)throw new $g({maxFeePerGas:r})}Yp(),qh(),am();function cb(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 Gh({storageKey:i[e]});if(!nm(r,{strict:!1}))throw new Jp({address:r});t.push([r,i])}return t}qh(),lm(),hp(),z();function lb(e,t){let n=iv(e);return n===`eip1559`?fb(e,t):n===`eip2930`?pb(e,t):n===`eip4844`?db(e,t):n===`eip7702`?ub(e,t):mb(e,t)}function ub(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;rb(e);let f=cb(u),p=gb(n);return cm([`0x04`,Wg([R(r),a?R(a):`0x`,l?R(l):`0x`,c?R(c):`0x`,i?R(i):`0x`,o??`0x`,s?R(s):`0x`,d??`0x`,f,p,...hb(e,t)])])}function db(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;ib(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Sp(e)),n=e.kzg,r=G_({blobs:t,kzg:n});f===void 0&&(f=Y_({commitments:r})),p===void 0&&(p=rv({blobs:t,commitments:r,proofs:K_({blobs:t,commitments:r,kzg:n})}))}let m=cb(u),h=[R(n),i?R(i):`0x`,l?R(l):`0x`,c?R(c):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,d??`0x`,m,s?R(s):`0x`,f??[],...hb(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 cm([`0x03`,Wg(p?[h,g,_,v]:h)])}function fb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;ab(e);let d=cb(l);return cm([`0x02`,Wg([R(n),i?R(i):`0x`,c?R(c):`0x`,s?R(s):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,u??`0x`,d,...hb(e,t)])])}function pb(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;ob(e);let u=cb(c);return cm([`0x01`,Wg([R(n),a?R(a):`0x`,l?R(l):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`,u,...hb(e,t)])])}function mb(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;sb(e);let l=[a?R(a):`0x`,c?R(c):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new Vh({v:t.v});return e})(),r=mp(t.r),i=mp(t.s);l=[...l,R(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,R(n),`0x`,`0x`]);return Wg(l)}function hb(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=mp(n.r),o=mp(n.s);return[typeof i==`number`?i?R(1):`0x`:r===0n?`0x`:r===1n?R(1):r===27n?`0x`:R(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}z();function gb(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?bp(e):`0x`,a,r?bp(r):`0x`,...hb({},i)])}return t}tm(),mv();async function _b({address:e,authorization:t,signature:n}){return pv($p(e),await Xg({authorization:t,signature:n}))}Zp();let vb=new Xp(8192);function yb(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(vb.get(n))return vb.get(n);let r=e().finally(()=>vb.delete(n));return vb.set(n,r),r}I(),sg(),Rg(),z(),Ch();function bb(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 bg(Error(`method not supported`),{method:l});return yb(()=>Uy(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case dg.code:throw new dg(t);case fg.code:throw new fg(t);case pg.code:throw new pg(t,{method:n.method});case mg.code:throw new mg(t);case hg.code:throw new hg(t);case gg.code:throw new gg(t);case _g.code:throw new _g(t);case vg.code:throw new vg(t);case yg.code:throw new yg(t);case bg.code:throw new bg(t,{method:n.method});case xg.code:throw new xg(t);case Sg.code:throw new Sg(t);case Cg.code:throw new Cg(t);case wg.code:throw new wg(t);case Tg.code:throw new Tg(t);case Eg.code:throw new Eg(t);case Dg.code:throw new Dg(t);case Og.code:throw new Og(t);case kg.code:throw new kg(t);case Ag.code:throw new Ag(t);case jg.code:throw new jg(t);case Mg.code:throw new Mg(t);case Ng.code:throw new Ng(t);case Pg.code:throw new Pg(t);case Fg.code:throw new Fg(t);case 5e3:throw new Cg(t);case Ig.code:throw new Ig(t);default:throw e instanceof F?e:new Lg(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof ig){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})=>xb(e)}),{enabled:i,id:i?Cp(`${c}.${Sh(n)}`):void 0})}}function xb(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===xg.code||e.code===hg.code:e instanceof ig&&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 Sb(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 Cb(){return{}}I(),pp(),th(),Pp(),z();function wb(e,t=`hex`){return Tb($m((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new dp(e);return kp(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Tb(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Sp(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Eb(e,n,128),i=e.readBytes(r);return t===`hex`?Sp(i):i}return Db(e,Eb(e,n,192),t)}function Eb(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 Db(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Tb(e,n));return i}wf(),Tf();function Ob(e){return N(e)&&P(e)===32}function kb(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 Ab(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let jb=Ab();sg(),Ch();function Mb(e,t={}){let{url:n,headers:r}=Nb(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 kb(async({signal:e})=>{let t={...l,body:Sh(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??jb.take(),...e})):{jsonrpc:`2.0`,id:i.id??jb.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 og({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 ig({body:i,details:Sh(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof ig||e instanceof og?e:new ig({body:i,cause:e,url:n})}}}}function Nb(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}}}lm(),Tf(),z();function Pb(e){let t=typeof e==`string`?Cp(e):typeof e.raw==`string`?e.raw:Sp(e.raw);return om([Cp(`\u0019Ethereum Signed Message:\n${P(t)}`),t])}Ip();function Fb(e,t){return Fp(Pb(e),t)}Ch(),I();var Ib=class extends F{constructor({domain:e}){super(`Invalid domain \"${Sh(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Lb=class extends F{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Rb=class extends F{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};$f(),Yp(),am(),Tf(),z(),vm(),Ch();function zb(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 Sh({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Bb(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(_m);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;R(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!nm(o))throw new Jp({address:o});let c=r.match(gm);if(c){let[e,t]=c;if(t&&P(o)!==Number.parseInt(t,10))throw new Kf({expectedSize:Number.parseInt(t,10),givenSize:P(o)})}let l=i[r];l&&(Hb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Ib({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Lb({primaryType:r,types:i})}function Vb({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 Hb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Rb({type:e})}jm(),lm(),z(),Ip();function Ub(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Vb({domain:t}),...e.types};Bb({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Wb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Gb({data:n,primaryType:r,types:i})),Fp(om(a))}function Wb({domain:e,types:t}){return Gb({data:e,primaryType:`EIP712Domain`,types:t})}function Gb({data:e,primaryType:t,types:n}){return Fp(Kb({data:e,primaryType:t,types:n}))}function Kb({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[qb({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Xb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return ym(r,i)}function qb({primaryType:e,types:t}){return Fp(bp(Jb({primaryType:e,types:t})))}function Jb({primaryType:e,types:t}){let n=``,r=Yb({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 Yb({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])Yb({primaryType:e.type,types:t},n);return n}function Xb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Fp(Kb({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Fp(r)];if(n===`string`)return[{type:`bytes32`},Fp(bp(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Xb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Fp(ym(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}rt(),A();let Zb=Ya(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Qb(e){if(typeof e==`string`){if(k(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new tx(e)}else dc(e.authorization)}function $b(e){Qb(e);let t=Qr(k(e,-64,-32)),n=k(e,-t-64,-64),r=k(e,0,-t-64),[i,a,o]=Ka(Zb,n);return{authorization:Ac({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 ex(e){try{return Qb(e),!0}catch{return!1}}var tx=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};qh(),hm(),yp();function nx(e){let t=mm(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&vp(t)>=192)return`legacy`;throw new Uh({serializedType:t})}Yp(),qh(),am(),wf(),sp(),hp(),yp();function rx(e){let t=nx(e);return t===`eip1559`?ox(e):t===`eip2930`?sx(e):t===`eip4844`?ax(e):t===`eip7702`?ix(e):cx(e)}function ix(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Wh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:vp(n),type:`eip7702`};return N(s)&&s!==`0x`&&(h.to=s),N(o)&&o!==`0x`&&(h.gas=L(o)),N(l)&&l!==`0x`&&(h.data=l),N(r)&&(h.nonce=r===`0x`?0:vp(r)),N(c)&&c!==`0x`&&(h.value=L(c)),N(a)&&a!==`0x`&&(h.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(h.accessList=ux(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=dx(d)),rb(h),{...t.length===13?fx(t):void 0,...h}}function ax(e){let t=lx(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 Wh({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:vp(a),to:u,type:`eip4844`};return N(l)&&l!==`0x`&&(S.gas=L(l)),N(f)&&f!==`0x`&&(S.data=f),N(o)&&(S.nonce=o===`0x`?0:vp(o)),N(d)&&d!==`0x`&&(S.value=L(d)),N(m)&&m!==`0x`&&(S.maxFeePerBlobGas=L(m)),N(c)&&c!==`0x`&&(S.maxFeePerGas=L(c)),N(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=L(s)),p.length!==0&&p!==`0x`&&(S.accessList=ux(p)),y&&b&&x&&(S.sidecars=rv({blobs:y,commitments:b,proofs:x})),ib(S),{...r.length===14?fx(r):void 0,...S}}function ox(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Wh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:vp(n),type:`eip1559`};return N(s)&&s!==`0x`&&(m.to=s),N(o)&&o!==`0x`&&(m.gas=L(o)),N(l)&&l!==`0x`&&(m.data=l),N(r)&&(m.nonce=r===`0x`?0:vp(r)),N(c)&&c!==`0x`&&(m.value=L(c)),N(a)&&a!==`0x`&&(m.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(m.accessList=ux(u)),ab(m),{...t.length===12?fx(t):void 0,...m}}function sx(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Wh({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:vp(n),type:`eip2930`};return N(o)&&o!==`0x`&&(p.to=o),N(a)&&a!==`0x`&&(p.gas=L(a)),N(c)&&c!==`0x`&&(p.data=c),N(r)&&(p.nonce=r===`0x`?0:vp(r)),N(s)&&s!==`0x`&&(p.value=L(s)),N(i)&&i!==`0x`&&(p.gasPrice=L(i)),l.length!==0&&l!==`0x`&&(p.accessList=ux(l)),ob(p),{...t.length===11?fx(t):void 0,...p}}function cx(e){let t=wb(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Wh({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(N(a)&&a!==`0x`&&(d.to=a),N(i)&&i!==`0x`&&(d.gas=L(i)),N(s)&&s!==`0x`&&(d.data=s),N(n)&&(d.nonce=n===`0x`?0:vp(n)),N(o)&&o!==`0x`&&(d.value=L(o)),N(r)&&r!==`0x`&&(d.gasPrice=L(r)),sb(d),t.length===6)return d;let f=N(c)&&c!==`0x`?L(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new Vh({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function lx(e){return wb(`0x${e.slice(4)}`,`hex`)}function ux(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!nm(r,{strict:!1}))throw new Jp({address:r});t.push({address:r,storageKeys:i.map(e=>Ob(e)?e:mp(e))})}return t}function dx(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:vp(r),nonce:a===`0x`?0:vp(a),...fx([o,s,c])})}return t}function fx(e){let t=e.slice(-3),n=t[0]===`0x`||L(t[0])===0n?27n:28n;return{r:ap(t[1],{size:32}),s:ap(t[2],{size:32}),v:n,yParity:n===27n?0:1}}I();var px=class extends F{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function mx(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new px({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}`)}kv(),Fv(),$f(),I(),rg(),Cv(),Wm(),Kv();async function hx(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 Gv({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=Um({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=zg(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>M(e,Oy,`readContract`)({...f===null?{code:Pv}:{address:f},abi:wv,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 Nf;if(!a)throw new ng({data:r});let e=xv({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=zg(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new F(`multicall results mismatch`);return _}rt(),A();function gx(e){if(k(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new yx(e)}function _x(e){let{data:t,signature:n,to:r}=e;return E(qa(Ya(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function vx(e){try{return gx(e),!0}catch{return!1}}var yx=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};uc(),yp(),Pp();function bx({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 Ys.Signature(L(e),L(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:kp(o)}kv(),Fv(),rg(),Wv(),Wm(),tm(),mv(),lm(),wf(),yp(),z(),Dy();async function xx(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return N(e)?e:typeof e==`object`&&`r`in e&&`s`in e?bx(e):Sp(e)})();try{if(s===`eoa`)try{if(pv($p(n),await Ug({hash:i,signature:c})))return!0}catch{}return ex(c)?await Sx(e,{...t,multicallAddress:o,signature:c}):await Cx(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(pv($p(n),await Ug({hash:i,signature:c})))return!0}catch{}if(e instanceof Tx)return!1;throw e}}async function Sx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=$b(t.signature);if(await nb(e,{address:n,blockNumber:r,blockTag:i})===cm([`0xef0100`,s.address]))return await wx(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:R(s.r,{size:32}),s:R(s.s,{size:32}),yParity:s.yParity};if(!await _b({address:n,authorization:d}))throw new Tx;let f=await M(e,Oy,`readContract`)({...o?{address:o}:{code:Pv},authorizationList:[d],abi:wv,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Um({abi:Dv,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Tx}async function Cx(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||vx(o)?o:_x({data:i,signature:o,to:r}))(),u=s?{to:s,data:Um({abi:Ov,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Hv({abi:Ov,args:[n,a,l],bytecode:Nv}),...c},{data:d}=await M(e,xy,`call`)(u).catch(e=>{throw e instanceof Zh?new Tx:e});if(_p(d??`0x0`))return!0;throw new Tx}async function wx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await M(e,Oy,`readContract`)({address:n,abi:Dv,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Qh?new Tx:e})).startsWith(`0x1626ba7e`))return!0;throw new Tx}var Tx=class extends Error{};async function Ex(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await M(e,Jy,`sendCalls`)(t);return await M(e,Xy,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}zm(),z(),S_(),A_();async function Dx(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Fy({docsPath:`/docs/actions/wallet/signTransaction`});let a=Rm(n);k_({account:a,...t});let o=await M(e,ov,`getChainId`)({});r!==null&&Ly({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||v_;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:R(o),from:a.address}]},{retryCount:0})}zm();async function Ox(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Fy({docsPath:`/docs/actions/wallet/signTypedData`});let o=Rm(n),s={EIP712Domain:Vb({domain:r}),...t.types};if(Bb({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=zb({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function kx({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=eb();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:bb(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Ax(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>kx({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}I();var jx=class extends F{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};sg(),$v();function Mx(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 jx;let b=Mb(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return kx({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=Zv({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 ag({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}var Nx;function B(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 Px=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Fx=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Nx=globalThis).__zod_globalConfig??(Nx.__zod_globalConfig={});let Ix=globalThis.__zod_globalConfig;function Lx(e){return e&&Object.assign(Ix,e),Ix}function Rx(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 zx(e,t){return typeof t==`bigint`?t.toString():t}function Bx(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Vx(e){return e==null}function Hx(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Ux=Symbol(`evaluating`);function V(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Ux)return r===void 0&&(r=Ux,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let Wx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Gx(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Kx(e){if(Gx(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Gx(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let qx=new Set([`string`,`number`,`symbol`]),Jx=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Yx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Xx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Zx(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 Qx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function $x(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 eS(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 tS(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function nS(e){return typeof e==`string`?e:e?.message}function rS(e,t,n){let r=e.message?e.message:nS(e.inst?._zod.def?.error?.(e))??nS(t?.error?.(e))??nS(n.customError?.(e))??nS(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 iS(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function aS(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let oS=(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,zx,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},sS=B(`$ZodError`,oS),cS=B(`$ZodError`,oS,{Parent:Error}),lS=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 Px;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>rS(e,a,Lx())));throw Wx(t,i?.callee),t}return o.value},uS=lS(cS),dS=(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=>rS(e,a,Lx())));throw Wx(t,i?.callee),t}return o.value})(cS),fS=(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 Px;return a.issues.length?{success:!1,error:new(e??sS)(a.issues.map(e=>rS(e,i,Lx())))}:{success:!0,data:a.value}})(cS),pS=(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=>rS(e,i,Lx())))}:{success:!0,data:a.value}})(cS),mS=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return lS(e)(t,n,i)})(cS),hS=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},gS=/^-?\\d+n?$/,_S=/^-?\\d+(?:\\.\\d+)?$/,vS=/^(?:true|false)$/i,yS=/^null$/i,bS=/^undefined$/i,xS=B(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),SS=B(`$ZodCheckMaxLength`,(e,t)=>{var n;xS.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Vx(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=iS(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),CS=B(`$ZodCheckMinLength`,(e,t)=>{var n;xS.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Vx(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=iS(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),wS=B(`$ZodCheckStringFormat`,(e,t)=>{var n,r;xS.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=()=>{})}),TS=B(`$ZodCheckRegex`,(e,t)=>{wS.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})}}),ES={major:4,minor:4,patch:2},H=B(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ES;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=$x(e),i;for(let a of t){if(a._zod.def.when){if(eS(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 Px;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=$x(e,t))});else{if(e.issues.length===t)continue;r||=$x(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if($x(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Px;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 Px;return o.then(e=>t(e,r,a))}return t(o,r,a)}}V(e,`~standard`,()=>({validate:t=>{try{let n=fS(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return pS(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),DS=B(`$ZodString`,(e,t)=>{H.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??hS(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}}),OS=B(`$ZodNumber`,(e,t)=>{H.init(e,t),e._zod.pattern=e._zod.bag.pattern??_S,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}}),kS=B(`$ZodBoolean`,(e,t)=>{H.init(e,t),e._zod.pattern=vS,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}}),AS=B(`$ZodBigInt`,(e,t)=>{H.init(e,t),e._zod.pattern=gS,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}}),jS=B(`$ZodUndefined`,(e,t)=>{H.init(e,t),e._zod.pattern=bS,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}}),MS=B(`$ZodNull`,(e,t)=>{H.init(e,t),e._zod.pattern=yS,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}}),NS=B(`$ZodUnknown`,(e,t)=>{H.init(e,t),e._zod.parse=e=>e}),PS=B(`$ZodVoid`,(e,t)=>{H.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function FS(e,t,n){e.issues.length&&t.issues.push(...tS(n,e.issues)),t.value[n]=e.value}let IS=B(`$ZodArray`,(e,t)=>{H.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=>FS(t,n,e))):FS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function LS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...tS(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 RS(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=Qx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function zS(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=>LS(e,n,i,t,u,d))):LS(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 BS=B(`$ZodObject`,(e,t)=>{if(H.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=Bx(()=>RS(t));V(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=Gx,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=>LS(n,t,e,s,r,i))):LS(a,t,e,s,r,i)}return i?zS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function VS(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=>!$x(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=>rS(e,r,Lx())))}),t)}let HS=B(`$ZodUnion`,(e,t)=>{H.init(e,t),V(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),V(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),V(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),V(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=>Hx(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=>VS(t,r,e,i)):VS(o,r,e,i)}}),US=B(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,HS.init(e,t);let n=e._zod.parse;V(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=Bx(()=>{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(!Gx(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)}}),WS=B(`$ZodTuple`,(e,t)=>{H.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=GS(n,`optin`),c=GS(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=>KS(t,r,e))):KS(a,r,e)}}return o.length?Promise.all(o).then(()=>qS(l,r,n,a,c)):qS(l,r,n,a,c)}});function GS(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function KS(e,t,n){e.issues.length&&t.issues.push(...tS(n,e.issues)),t.value[n]=e.value}function qS(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(...tS(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 JS=B(`$ZodRecord`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Kx(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>rS(e,r,Lx())),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(...tS(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...tS(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`&&_S.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=>rS(e,r,Lx())),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(...tS(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...tS(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),YS=B(`$ZodEnum`,(e,t)=>{H.init(e,t);let n=Rx(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>qx.has(typeof e)).map(e=>typeof e==`string`?Yx(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}}),XS=B(`$ZodLiteral`,(e,t)=>{if(H.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`?Yx(e):e?Yx(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}}),ZS=B(`$ZodTransform`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Fx(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new Px;return n.value=i,n}});function QS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let $S=B(`$ZodOptional`,(e,t)=>{H.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,V(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),V(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Hx(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>QS(t,e.value)):QS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),eC=B(`$ZodNullable`,(e,t)=>{H.init(e,t),V(e._zod,`optin`,()=>t.innerType._zod.optin),V(e._zod,`optout`,()=>t.innerType._zod.optout),V(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Hx(e.source)}|null)$`):void 0}),V(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)}),tC=B(`$ZodPipe`,(e,t)=>{H.init(e,t),V(e._zod,`values`,()=>t.in._zod.values),V(e._zod,`optin`,()=>t.in._zod.optin),V(e._zod,`optout`,()=>t.out._zod.optout),V(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=>nC(e,t.in,n)):nC(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>nC(e,t.out,n)):nC(r,t.out,n)}});function nC(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let rC=B(`$ZodCodec`,(e,t)=>{H.init(e,t),V(e._zod,`values`,()=>t.in._zod.values),V(e._zod,`optin`,()=>t.in._zod.optin),V(e._zod,`optout`,()=>t.out._zod.optout),V(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=>iC(e,t,n)):iC(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>iC(e,t,n)):iC(r,t,n)}}});function iC(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=>aC(e,r,t.out,n)):aC(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>aC(e,r,t.in,n)):aC(e,r,t.in,n)}}function aC(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let oC=B(`$ZodReadonly`,(e,t)=>{H.init(e,t),V(e._zod,`propValues`,()=>t.innerType._zod.propValues),V(e._zod,`values`,()=>t.innerType._zod.values),V(e._zod,`optin`,()=>t.innerType?._zod?.optin),V(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(sC):sC(r)}});function sC(e){return e.value=Object.freeze(e.value),e}let cC=B(`$ZodTemplateLiteral`,(e,t)=>{H.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||Jx.has(typeof e))n.push(Yx(`${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)}),lC=B(`$ZodCustom`,(e,t)=>{xS.init(e,t),H.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=>uC(t,n,r,e));uC(i,n,r,e)}});function uC(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(aS(e))}}function dC(e,t){return new e({type:`string`,...Zx(t)})}function fC(e,t){return new e({type:`number`,checks:[],...Zx(t)})}function pC(e,t){return new e({type:`boolean`,...Zx(t)})}function mC(e,t){return new e({type:`bigint`,...Zx(t)})}function hC(e,t){return new e({type:`undefined`,...Zx(t)})}function gC(e,t){return new e({type:`null`,...Zx(t)})}function _C(e){return new e({type:`unknown`})}function vC(e,t){return new e({type:`void`,...Zx(t)})}function yC(e,t){return new SS({check:`max_length`,...Zx(t),maximum:e})}function bC(e,t){return new CS({check:`min_length`,...Zx(t),minimum:e})}function xC(e,t){return new TS({check:`string_format`,format:`regex`,...Zx(t),pattern:e})}function SC(e,t,n){let r=Zx(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function CC(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Zx(n)})}let wC=B(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);H.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>uS(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>fS(e,t,n),e.parseAsync=async(t,n)=>dS(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>pS(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)=>Xx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),TC=B(`ZodMiniString`,(e,t)=>{DS.init(e,t),wC.init(e,t)});function U(e){return dC(TC,e)}let EC=B(`ZodMiniNumber`,(e,t)=>{OS.init(e,t),wC.init(e,t)});function DC(e){return fC(EC,e)}let OC=B(`ZodMiniBoolean`,(e,t)=>{kS.init(e,t),wC.init(e,t)});function kC(e){return pC(OC,e)}let AC=B(`ZodMiniBigInt`,(e,t)=>{AS.init(e,t),wC.init(e,t)});function jC(e){return mC(AC,e)}let MC=B(`ZodMiniUndefined`,(e,t)=>{jS.init(e,t),wC.init(e,t)});function NC(e){return hC(MC,e)}let PC=B(`ZodMiniNull`,(e,t)=>{MS.init(e,t),wC.init(e,t)});function FC(e){return gC(PC,e)}let IC=B(`ZodMiniUnknown`,(e,t)=>{NS.init(e,t),wC.init(e,t)});function LC(){return _C(IC)}let RC=B(`ZodMiniVoid`,(e,t)=>{PS.init(e,t),wC.init(e,t)});function zC(e){return vC(RC,e)}let BC=B(`ZodMiniArray`,(e,t)=>{IS.init(e,t),wC.init(e,t)});function W(e,t){return new BC({type:`array`,element:e,...Zx(t)})}let VC=B(`ZodMiniObject`,(e,t)=>{BS.init(e,t),wC.init(e,t),V(e,`shape`,()=>t.shape)});function G(e,t){return new VC({type:`object`,shape:e??{},...Zx(t)})}let HC=B(`ZodMiniUnion`,(e,t)=>{HS.init(e,t),wC.init(e,t)});function UC(e,t){return new HC({type:`union`,options:e,...Zx(t)})}let WC=B(`ZodMiniDiscriminatedUnion`,(e,t)=>{US.init(e,t),wC.init(e,t)});function GC(e,t,n){return new WC({type:`union`,options:t,discriminator:e,...Zx(n)})}let KC=B(`ZodMiniTuple`,(e,t)=>{WS.init(e,t),wC.init(e,t)});function qC(e,t,n){let r=t instanceof H;return new KC({type:`tuple`,items:e,rest:r?t:null,...Zx(r?n:t)})}let JC=B(`ZodMiniRecord`,(e,t)=>{JS.init(e,t),wC.init(e,t)});function YC(e,t,n){return!t||!t._zod?new JC({type:`record`,keyType:U(),valueType:e,...Zx(t)}):new JC({type:`record`,keyType:e,valueType:t,...Zx(n)})}let XC=B(`ZodMiniEnum`,(e,t)=>{YS.init(e,t),wC.init(e,t),e.options=Object.values(t.entries)});function ZC(e,t){return new XC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Zx(t)})}let QC=B(`ZodMiniLiteral`,(e,t)=>{XS.init(e,t),wC.init(e,t)});function K(e,t){return new QC({type:`literal`,values:Array.isArray(e)?e:[e],...Zx(t)})}let $C=B(`ZodMiniTransform`,(e,t)=>{ZS.init(e,t),wC.init(e,t)});function ew(e){return new $C({type:`transform`,transform:e})}let tw=B(`ZodMiniOptional`,(e,t)=>{$S.init(e,t),wC.init(e,t)});function q(e){return new tw({type:`optional`,innerType:e})}let nw=B(`ZodMiniNullable`,(e,t)=>{eC.init(e,t),wC.init(e,t)});function rw(e){return new nw({type:`nullable`,innerType:e})}let iw=B(`ZodMiniPipe`,(e,t)=>{tC.init(e,t),wC.init(e,t)});function aw(e,t){return new iw({type:`pipe`,in:e,out:t})}let ow=B(`ZodMiniCodec`,(e,t)=>{iw.init(e,t),rC.init(e,t)});function sw(e,t,n){return new ow({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let cw=B(`ZodMiniReadonly`,(e,t)=>{oC.init(e,t),wC.init(e,t)});function J(e){return new cw({type:`readonly`,innerType:e})}let lw=B(`ZodMiniTemplateLiteral`,(e,t)=>{cC.init(e,t),wC.init(e,t)});function uw(e,t){return new lw({type:`template_literal`,parts:e,...Zx(t)})}let dw=B(`ZodMiniCustom`,(e,t)=>{lC.init(e,t),wC.init(e,t)});function fw(e,t){return SC(dw,e??(()=>!0),t)}function pw(e,t={}){return CC(dw,e,t)}function mw(e){return e}function hw(e){return e}let Y=()=>uw([`0x`,U()],`Expected address`),gw=()=>sw(UC([X(),jC()]),jC(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:Xr(e),encode:e=>O(e)}),X=()=>uw([`0x`,U()],`Expected hex value`),_w=()=>sw(UC([X(),DC()]),DC(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Qr(e),encode:e=>O(e)}),vw=G({address:Y(),blockHash:X(),blockNumber:gw(),data:X(),logIndex:_w(),removed:kC(),topics:J(W(X())),transactionHash:X(),transactionIndex:_w()}),yw=G({blobGasPrice:q(gw()),blobGasUsed:q(gw()),blockHash:X(),blockNumber:gw(),contractAddress:rw(Y()),cumulativeGasUsed:gw(),effectiveGasPrice:gw(),feePayer:q(Y()),feeToken:q(Y()),from:Y(),gasUsed:gw(),logs:W(vw),logsBloom:X(),root:q(X()),status:sw(X(),ZC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:rw(Y()),transactionHash:X(),transactionIndex:_w(),type:X()}),bw=fw(),xw=UC([K(`secp256k1`),K(`p256`),K(`webAuthn`)]),Sw=G({address:Y(),chainId:gw(),expiry:UC([_w(),FC(),NC()]),keyId:Y(),keyType:xw,limits:q(J(W(G({token:Y(),limit:gw(),period:q(_w())})))),signature:bw}),Cw=G({data:q(X()),to:q(Y()),value:q(gw())}),ww=G({accessList:q(W(G({address:Y(),storageKeys:W(X())}))),calls:q(J(W(Cw))),chainId:q(_w()),data:q(X()),feePayer:q(UC([kC(),U()])),feePayerSignature:q(YC(U(),LC())),feeToken:q(Y()),from:q(Y()),gas:q(gw()),keyAuthorization:q(Sw),maxFeePerGas:q(gw()),maxPriorityFeePerGas:q(gw()),nonce:q(_w()),nonceKey:q(gw()),to:q(Y()),validAfter:q(_w()),validBefore:q(_w()),value:q(gw())});var Tw;(function(e){e.schema=mw({method:K(`eth_accounts`),params:void 0,returns:J(W(Y()))})})(Tw||={});var Ew;(function(e){e.schema=mw({method:K(`eth_chainId`),params:void 0,returns:X()})})(Ew||={});var Dw;(function(e){e.schema=mw({method:K(`eth_requestAccounts`),params:void 0,returns:J(W(Y()))})})(Dw||={});var Ow;(function(e){e.schema=mw({method:K(`eth_sendTransaction`),params:J(qC([ww])),returns:X()})})(Ow||={});var kw;(function(e){let t=G({address:Y(),decimals:DC(),direction:ZC([`incoming`,`outgoing`]),formatted:U(),name:U(),recipients:J(W(Y())),symbol:U(),value:X()}),n=G({decimals:DC(),formatted:U(),name:U(),symbol:U(),token:Y(),value:X()});e.schema=mw({method:K(`eth_fillTransaction`),params:J(qC([ww])),returns:G({capabilities:G({balanceDiffs:q(YC(Y(),J(W(t)))),error:q(G({abiItem:q(YC(U(),LC())),data:q(X()),errorName:U(),message:U()})),fee:q(G({amount:X(),decimals:DC(),formatted:U(),symbol:U()})),requireFunds:q(G({amount:X(),decimals:DC(),formatted:U(),token:Y(),symbol:U()})),autoSwap:q(G({maxIn:n,minOut:n,slippage:DC()})),sponsor:q(G({address:Y(),name:q(U()),url:q(U())})),sponsored:kC()}),tx:YC(U(),LC())})})})(kw||={});var Aw;(function(e){e.schema=mw({method:K(`eth_signTransaction`),params:J(qC([ww])),returns:X()})})(Aw||={});var jw;(function(e){e.schema=mw({method:K(`eth_sendTransactionSync`),params:J(qC([ww])),returns:yw})})(jw||={});var Mw;(function(e){e.schema=mw({method:K(`eth_signTypedData_v4`),params:J(qC([Y(),U()])),returns:X()})})(Mw||={});var Nw;(function(e){e.schema=mw({method:K(`personal_sign`),params:J(qC([X(),Y()])),returns:X()})})(Nw||={});let Pw=q(G({feePayer:q(UC([kC(),U()])),sync:q(kC())}));var Fw;(function(e){e.schema=mw({method:K(`wallet_sendCalls`),params:q(J(qC([G({atomicRequired:q(kC()),calls:J(W(Cw)),capabilities:Pw,chainId:q(_w()),from:q(Y()),version:q(U())})]))),returns:G({atomic:q(kC()),capabilities:Pw,chainId:q(_w()),id:U(),receipts:q(W(yw)),status:q(DC()),version:q(U())})})})(Fw||={});var Iw;(function(e){e.schema=mw({method:K(`wallet_getBalances`),params:q(J(qC([G({account:q(Y()),chainId:q(_w()),tokens:q(J(W(Y())))})]))),returns:J(W(G({address:Y(),balance:gw(),decimals:DC(),display:U(),name:U(),symbol:U()})))})})(Iw||={});var Lw;(function(e){e.schema=mw({method:K(`wallet_getCapabilities`),params:q(J(UC([qC([Y()]),qC([Y(),J(W(X()))])]))),returns:YC(X(),G({accessKeys:q(G({status:UC([K(`supported`),K(`unsupported`)])})),atomic:G({status:UC([K(`supported`),K(`ready`),K(`unsupported`)])}),feePayer:q(G({status:UC([K(`supported`),K(`unsupported`)])}))}))})})(Lw||={});var Rw;(function(e){e.parameters=G({address:q(Y()),chainId:q(gw()),expiry:DC(),keyType:q(xw),limits:q(J(W(G({token:Y(),limit:gw(),period:q(DC())})))),publicKey:q(X()),scopes:q(J(W(G({address:Y(),selector:q(UC([X(),U()])),recipients:q(J(W(Y())))}))))}),e.returns=G({keyAuthorization:Sw,rootAddress:Y()}),e.schema=mw({method:K(`wallet_authorizeAccessKey`),params:J(qC([e.parameters])),returns:e.returns})})(Rw||={});var zw;(function(e){e.parameters=G({address:q(Y()),expiry:DC(),keyType:q(xw),limits:J(W(G({token:Y(),limit:gw(),period:q(DC())}))),publicKey:q(X()),scopes:q(J(W(G({address:Y(),selector:q(UC([X(),U()])),recipients:q(J(W(Y())))}))))})})(zw||={});var Bw;(function(e){e.schema=mw({method:K(`wallet_revokeAccessKey`),params:J(qC([G({address:Y(),accessKeyAddress:Y()})])),returns:void 0})})(Bw||={});var Vw;(function(e){e.authorizeAccessKey=q(Rw.parameters),e.capabilities={request:q(UC([G({digest:q(X()),authorizeAccessKey:e.authorizeAccessKey,method:K(`register`),name:q(U()),userId:q(U())}),G({digest:q(X()),credentialId:q(U()),authorizeAccessKey:e.authorizeAccessKey,method:q(K(`login`)),selectAccount:q(kC())})])),result:G({email:q(rw(U())),keyAuthorization:q(Sw),signature:q(X()),username:q(rw(U()))})},e.schema=mw({method:K(`wallet_connect`),params:q(J(qC([G({capabilities:e.capabilities.request,chainId:q(_w()),version:q(U())})]))),returns:G({accounts:J(W(G({address:Y(),capabilities:e.capabilities.result})))})})})(Vw||={});var Hw;(function(e){let t=q(zw.parameters);e.parameters=G({capabilities:q(UC([G({digest:q(X()),authorizeAccessKey:t,method:K(`register`),name:q(U()),userId:q(U())}),G({digest:q(X()),credentialId:q(U()),authorizeAccessKey:t,method:q(K(`login`)),selectAccount:q(kC())})])),chainId:q(_w()),version:q(U())})})(Hw||={});var Uw;(function(e){e.schema=mw({method:K(`wallet_disconnect`),params:void 0,returns:void 0})})(Uw||={});var Ww;(function(e){e.schema=mw({method:K(`wallet_getCallsStatus`),params:q(J(qC([U()]))),returns:G({atomic:kC(),chainId:_w(),id:U(),receipts:q(W(yw)),status:DC(),version:U()})})})(Ww||={});var Gw;(function(e){e.parameters=G({feePayer:q(UC([kC(),U()])),to:q(Y()),token:q(Y()),value:q(U())}),e.schema=mw({method:K(`wallet_send`),params:q(J(qC([e.parameters]))),returns:G({receipt:yw})})})(Gw||={});var Kw;(function(e){e.schema=mw({method:K(`wallet_switchEthereumChain`),params:J(qC([G({chainId:_w()})])),returns:void 0})})(Kw||={});var qw;(function(e){e.schema=mw({method:K(`wallet_deposit`),params:J(qC([G({address:q(Y()),chainId:q(_w()),displayName:q(U()),token:q(Y()),value:q(U())})])),returns:zC()})})(qw||={}),zw.parameters,Hw.parameters;let Jw=hw([Tw.schema,Ew.schema,kw.schema,Dw.schema,Ow.schema,jw.schema,Aw.schema,Mw.schema,Nw.schema,Rw.schema,Vw.schema,qw.schema,Uw.schema,Iw.schema,Ww.schema,Lw.schema,Bw.schema,Gw.schema,Fw.schema,Kw.schema]),Yw=Cu();function Xw(e){return e.params?G({method:e.method,params:e.params}):G({method:e.method})}let Zw=GC(`method`,Jw.map(Xw));function Qw(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 $w=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},eT=class extends $w{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}.`)}},tT=class extends $w{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 nT(e,t){if(!e)throw new eT({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new eT({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new tT({expires:e})}function rT(e){let t=Uc(e);return JSON.parse(t)}function iT(e){return Vc(Ir(e),{pad:!1,url:!0})}function aT(){return U().check(xC(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function oT(){return U().check(xC(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function sT(){return U().check(xC(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function cT(){return U().check(xC(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let lT=G({description:q(U()),digest:q(U().check(xC(/^sha-256=/,`Invalid digest format`))),expires:q(oT()),id:U(),intent:U(),method:U(),meta:q(YC(U(),U())),opaque:q(U()),realm:U(),request:YC(U(),LC())});function uT(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=e.opaque??(i===void 0?void 0:iT(i)),f=l?CT({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return lT.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 dT(e,t){let n=fT(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=pT(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 uT({...a,request:rT(r),...i&&{opaque:i}},t)}function fT(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(!gT(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 pT(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]=mT(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function mT(e,t){if(e[t]===`\"`)return hT(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function hT(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 gT(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 _T(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return dT(n,t)}function vT(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return _T(e.headers,t)}function yT(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return bT(e.headers,t)}function bT(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return xT(n,t)}function xT(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 dT(e.slice(r,a).replace(/,\\s*$/,``),t)})}function ST(e){return[e.realm,e.method,e.intent,iT(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?iT(e.meta):``)].join(`|`)}function CT(e,t){let n=ST(e);return zc(Li(hi(t.secretKey),hi(n),{as:`Bytes`}),{url:!0,pad:!1})}function wT(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=AT(n)}return t}function TT(e,t){let n=wT(e),r=IT(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[AT(e)]??1,index:t}));return{definition:r,entries:i,header:DT(i),keys:n}}function ET(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)=>PT(e,t))}function DT(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${BT(n)}`}).join(`, `)}function OT(e,t){return e.map((e,n)=>{let r=jT(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 kT(e,t,n){let r=new Map;for(let e of t){let t=AT(e);r.has(t)||r.set(t,e)}let i=OT(e.filter(e=>r.has(AT(e))),n)[0];if(i)return{challenge:i,method:r.get(AT(i))}}function AT(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function jT(e,t){let n;for(let r of t){if(!MT(e,r))continue;let t={...r,specificity:NT(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 MT(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function NT(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function PT(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}`);VT(r,`method`),VT(i,`intent`);let a=1;for(let t of FT(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=RT(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function FT(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function IT(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>AT(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]=LT(t,`payment preference \"${e}\"`)}return a}function LT(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return zT(e,t)}function RT(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 zT(Number(e),t)}function zT(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 BT(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function VT(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let HT=Symbol.for(`mppx.fetch.wrapper`),UT;function WT(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??TT(i),s=XT(r),c=async(e,t)=>{let r=YT(e,t?.headers),c=r.has(`Accept-Payment`),l=$T(r,o),u=JT(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=yT(d),g=kT(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&&nT(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>QT(_,v,e??f)}):void 0)??await QT(_,v,f);return ZT(y),s(u.input,{...m,headers:qT(u.headers,y)})};return c[HT]=s,c}function GT(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);UT||=globalThis.fetch,globalThis.fetch=WT({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(nE()?`same-origin`:`always`),fetch:globalThis.fetch})}function KT(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 qT(e,t){let n=KT(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function JT(e,t,n,r,i,a){let o=!!r&&!i&&eE(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 YT(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function XT(e){let t=e;for(;t[HT];)t=t[HT];return t}function ZT(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 QT(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 $T(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:ET(n),header:n}}catch{return t}}function eE(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=rE(e);return t===`same-origin`?nE()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>tE(n,e))}function tE(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 nE(){return globalThis.location!==void 0}function rE(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,nE()?globalThis.location.href:void 0)}var iE=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},aE=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function oE(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new iE;try{let e=Uc(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=sE(r);return{challenge:lT.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:rT(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new aE}}function sE(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!cE(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:iT(e)}}function cE(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function lE(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:iT(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:iT(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${Vc(JSON.stringify(o),{pad:!1,url:!0})}`}function uE(e){return e}function dE(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}rt(),A(),Br();let fE=`0x01`,pE=`0x02`,mE=`0x03`,hE=`0x04`,gE=`0x7777777777777777777777777777777777777777777777777777777777777777`;function _E(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:_E({...e,signature:t.inner}):na(vE(e))}function vE(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return gl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return vE({payload:t,signature:n.inner})}}function yE(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?k(e,0,-Jr(gE)):e;if(Jr(t)===65){let e=pc(t);return dc(e),{signature:e,type:`secp256k1`}}let n=k(t,0,1),r=k(t,1),i=Jr(r);if(n===fE){if(i!==129)throw new DE({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:Xr(k(r,64,96)),y:Xr(k(r,96,128))},prehash:Qr(k(r,128,129))!==0,signature:{r:Xr(k(r,0,32)),s:Xr(k(r,32,64))},type:`p256`}}if(n===pE){if(i<128)throw new DE({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=k(r,0,e),a,o;for(let t=37;t<e;t++){let e=$r(k(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=k(n,0,t),o=e;break}catch{}}if(!a||!o)throw new DE({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:Xr(k(r,e+64,e+96)),y:Xr(k(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:Xr(k(r,e,e+32)),s:Xr(k(r,e+32,e+64))},type:`webAuthn`}}if(n===mE||n===hE)return{userAddress:k(r,0,20),inner:yE(k(r,20)),type:`keychain`,version:n===hE?`v2`:`v1`};throw new DE({reason:`Unknown signature type identifier: ${n}. Expected ${fE} (P256), ${pE} (WebAuthn), ${mE} (Keychain V1), or ${hE} (Keychain V2)`,serialized:t})}function bE(e,t){if(typeof e==`string`)return yE(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=SE(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:na(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:na(gl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function xE(e){if(e.type===`secp256k1`)return{signature:_c(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Jr(t),r,i;for(let e=37;e<n;e++){let n=$r(k(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=k(t,0,e),i=n;break}catch{}}if(!r||!i)throw new DE({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:xE(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new EE({envelope:e})}function SE(e){if(typeof e!=`object`||!e)throw new EE({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 EE({envelope:e})}function CE(e,t={}){let n=SE(e);if(n===`secp256k1`)return E(yc(e.signature),t.magic?gE:`0x`);if(n===`p256`){let n=e;return E(fE,O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),O(+!!n.prehash,{size:1}),t.magic?gE:`0x`)}if(n===`webAuthn`){let n=e;return E(pE,E(n.metadata.authenticatorData,Wr(n.metadata.clientDataJSON)),O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),t.magic?gE:`0x`)}if(n===`keychain`){let n=e;return E(n.version===`v1`?mE:hE,n.userAddress,CE(n.inner),t.magic?gE:`0x`)}throw new EE({envelope:e})}function wE(e){let t=SE(e);if(t===`secp256k1`)return{...bc(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=E(t.metadata.authenticatorData,Wr(t.metadata.clientDataJSON));return{pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:wE(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new EE({envelope:e})}function TE(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return na(t.publicKey)})();if(!r)return!1;let i=bE(e);if(i.type===`secp256k1`)return r?vl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return ra(na(i.publicKey),r)?Bl({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return ra(na(i.publicKey),r)?Hu({challenge:Hr(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new OE(`Unable to verify signature envelope of type \"${i.type}\".`)}var EE=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Rr(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},DE=class extends T{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},OE=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};rt(),A();function kE(e){return e.startsWith(`tempo`)?AE(e).address:e}function AE(e){if(!e.startsWith(`tempox`))throw new jE({address:e});let t=e.slice(6);return Vr(t,{strict:!0}),{address:ea(t)}}var jE=class extends T{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};A();function ME(e,t={}){if(typeof e.chainId==`string`)return NE(e);let n={...e,address:kE(e.address)};return t.signature?{...n,signature:t.signature}:n}function NE(e){let{address:t,chainId:n,nonce:r}=e,i=xE(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function PE(e){return e.map(e=>NE(e))}function FE(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=yE(i)),ME(a)}function IE(e){let t=[];for(let n of e)t.push(FE(n));return t}function LE(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:O(n),nonce:O(r),signature:wE(i)}}function RE(e){return e.map(e=>LE(e))}function zE(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?CE(e.signature):void 0;return[n?O(n):`0x`,t,r?O(r):`0x`,...i?[i]:[]]}function BE(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(zE(n));return t}A();function VE(e,t={}){if(`keyId`in e)return HE(e);let n=e,r={...n,address:kE(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:kE(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:kE(e.address),selector:$E(e.selector),...e.recipients?{recipients:e.recipients.map(e=>kE(e))}:{}}))}:{}};return t.signature?{...r,signature:bE(t.signature)}:r}function HE(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=xE(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:QE(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:Xr(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&ZE(e.period)>0?{period:ZE(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function UE(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:ZE(o)||void 0,type:l,chainId:r===`0x`?0n:Xr(r),...o===void 0?{}:{expiry:ZE(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:XE(n),...r===void 0?{}:{period:ZE(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=yE(n)),VE(u)}function WE(e){return GE(e)}function GE(e){let[t]=qE(e);return Ii(mo(t))}function KE(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:$E(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:O(r),expiry:typeof i==`number`?O(i):null,keyId:kE(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:O(t),...n?{period:YE(n)}:{}})),signature:wE(s),...c?{allowedCalls:c}:{}}}function qE(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?CE(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,JE(e.limit)];return e.period&&e.period>0&&t.push(YE(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([$E(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[JE(n),s,t,i!=null&&i!==0||c||l?YE(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function JE(e){return e===0n?`0x`:O(e)}function YE(e){return e===0?`0x`:O(e)}function XE(e){return e===`0x`?0n:BigInt(e)}function ZE(e){return e===`0x`?0:Qr(e)}function QE(e){return typeof e==`string`?e:Array.isArray(e)?D(new Uint8Array(e)):e}function $E(e){if(e)return e.startsWith(`0x`)?e:fa(e)}A();let eD=`0x20c0`;function tD(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):nD(e)}function nD(e){let t=kE(e);if(!t.toLowerCase().startsWith(eD))throw Error(`invalid tip20 address.`);return Xr(k(t,6))}function Z(e){if(typeof e==`string`){let t=kE(e);return $i(t),t}return E(eD,O(e,{size:18}))}A();let rD={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function iD(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ii(Wr(rD[e]??e))}let aD={...Wc,tempo:`0x76`},oD={...Gc,\"0x76\":`tempo`};function sD(e,t={}){if(!e)return null;let n=Kc(e);return n.type=oD[e.type],e.aaAuthorizationList&&(n.authorizationList=PE(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=xE(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=HE(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=_c(e.feePayerSignature),n.feePayerSignature.v=Cc(n.feePayerSignature.yParity)),n}A();function cD(e){let t=wu({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=RE(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?kE(e.to):e.to,value:e.value?O(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?kE(e.to):void 0,value:e.value?O(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=Z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=KE(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=O(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=O(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return qr(6);if(typeof e.nonceKey==`bigint`)return O(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=aD.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}rt(),A();let lD=`tempo`;function uD(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new _D;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new vD({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&$i(e.to,{strict:!1});if(n<=0)throw new ku({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Ou({feeCap:r});if(i&&r&&i>r)throw new ju({maxFeePerGas:r,maxPriorityFeePerGas:i})}function dD(e){let t=so(k(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new Au({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:lD});let y={chainId:Number(n),type:lD};ei(a)&&a!==`0x`&&(y.gas=BigInt(a)),ei(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),ei(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),ei(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),ei(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),ei(u)&&u!==`0x`&&(y.validBefore=Number(u)),ei(d)&&d!==`0x`&&(y.validAfter=Number(d)),ei(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=io(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=IE(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||ia(p)?(y.feePayerSignature=null,ia(p)&&(y.from=p)):y.feePayerSignature=vc(p)),_&&(y.keyAuthorization=UE(_));let b=v?yE(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=_E({payload:mD(fD(y)),signature:b,root:!0})}catch{}return uD(y),y}function fD(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?dD(e):e;return i.from&&=kE(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:kE(e.to)}:{}})),uD(i),{...i,...r?{signature:bE(r)}:{},...n?{feePayerSignature:hc(n)}:{},type:`tempo`}}function pD(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;uD(e);let h=ao(n),g=t.signature||e.signature,_=BE(r),v=i.map(e=>[e.to?kE(e.to):`0x`,e.value?O(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=bE(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return na(t.publicKey);if(t.type===`secp256k1`)return hl({payload:mD(fD(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?xc(n):`0x`})(),x=[O(a),f?O(f):`0x`,d?O(d):`0x`,s?O(s):`0x`,v,h,u?O(u):`0x`,l?O(l):`0x`,typeof p==`number`?O(p):`0x`,typeof m==`number`?O(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?Z(o):`0x`,b,_,...c?[qE(c)]:[],...g?[CE(bE(g))]:[]];return E(t.format===`feePayer`?`0x78`:`0x76`,mo(x))}function mD(e,t={}){let n=hD(e,{presign:!0});return t.from?Ii(E(`0x04`,n,kE(t.from))):n}function hD(e,t={}){return Ii(pD({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function gD(e,t){let n=kE(t.sender);return Ii(pD({...e,signature:void 0},{sender:n,format:`feePayer`}))}var _D=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},vD=class extends T{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};A();function yD(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:iv(e)}function bD(e){try{return yD(e)===`tempo`}catch{return!1}}function xD(e){let t=k(e,0,1);return t===`0x76`||t===`0x78`?CD(e):rx(e)}async function SD(e,t){if(!bD(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 lb(e,{r:O(n,{size:32}),s:O(r,{size:32}),yParity:i})}return lb(e,t)}if(yD(e)===`tempo`)return wD(e,t);throw Error(`Unsupported transaction type`)}function CD(e){let{feePayerSignature:t,nonce:n,...r}=dD(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:O(t.r,{size:32}),s:O(t.s,{size:32}),yParity:t.yParity}}}async function wD(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return bE({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=fD(c,{signature:n}),r=gD(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return hl({payload:mD(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return pD(t,{feePayerSignature:hc(await e.feePayer.sign({hash:r}))})}return i===!0?n?pD(c,{format:`feePayer`,sender:e.from,signature:n}):pD(c,{feePayerSignature:null}):pD({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}A(),zm(),S_();function TD(e){if(!bD(e))return I_(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=sD(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:O(t.r,{size:32}),s:O(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:aD[i.type],type:i.type}}function ED(e){return Gy(e)}function DD(e,t){let n=e,r=n.account?Rm(n.account):void 0;if(!bD(n))return v_(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=cD({...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`?Rm(n.feePayer):n.feePayer}:{}}}let OD=new Map;async function kD(e){OD.set(e,(OD.get(e)??0)+1),await Promise.resolve();let t=(OD.get(e)??0)>1;return queueMicrotask(()=>{let t=OD.get(e)??0;t<=1?OD.delete(e):OD.set(e,t-1)}),t}O_(),S_();let AD={blockTime:1e3,extendSchema:Cb(),formatters:{transaction:L_({exclude:[`aaAuthorizationList`],format:TD}),transactionReceipt:Ky({format:ED}),transactionRequest:x_({format:DD})},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 kD(e):!1})()?(n.nonceKey=D_,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)=>SD(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=yE(i);if(a.type!==`keychain`){let i=await nb(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return TE(a,{address:n,payload:r})}}return await M(e,xx,`verifyHash`)({...t,chain:null})}},jD=Sb({...AD,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`]}}}),MD=Sb({...AD,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`]}}}),ND=Sb({...AD,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),PD=Sb({...AD,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),Q=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],FD=[{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:[]}],ID=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];A(),zm(),Ip();function LD(e){let{access:t}=e;return t?GD(e):WD(e)}function RD(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Rl({privateKey:e});return LD({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Bu({...t,challenge:n,rpId:r,origin:i});return CE({metadata:a,signature:zl({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function zD(e,t={}){let{access:n,internal_version:r}=t,i=Rl({privateKey:e});return LD({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return CE({signature:zl({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function BD(e,t={}){let{access:n,internal_version:r}=t;return LD({access:n,internal_version:r,keyType:`secp256k1`,publicKey:ml({privateKey:e}),async sign(t){let{hash:n}=t;return yc(_l({payload:n,privateKey:e}))}})}function VD(e,t={}){let{id:n}=e,r=Wi(e.publicKey);return LD({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Vu({...t,challenge:e,credentialId:n});return CE({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function HD(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return LD({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return CE({signature:await Wu({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function UD(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??na(e.publicKey),o=Ki(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Fp(E(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?CE(bE({userAddress:n,inner:bE(o),type:`keychain`,version:i})):t===`secp256k1`?o:E(o,gE)}return{address:ea(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=bE(await s({hash:Yg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:O(a,{size:32}),s:O(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Fb(t)})},async signTransaction(e,t){let{serializer:n=SD}=t??{};return await n(e,bE(await s({hash:Fp(await n(e))})))},async signTypedData(e){return await s({hash:Ub(e)})},publicKey:o,source:r,type:`local`}}function WD(e){let t=UD(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return VE({address:o,chainId:r,expiry:i,limits:a,signature:bE(await t.sign({hash:WE({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function GD(e){let{access:t}=e,{address:n}=Rm(t);return{...UD({...e,parentAddress:n}),accessKeyAddress:na(e.publicKey),source:`accessKey`}}let KD=`0xdec0000000000000000000000000000000000000`;function $(e){return{...e,data:Um(e),to:e.address}}A(),zm();async function qD(e,t){return qD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return $({address:KD,abi:FD,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(qD||={});async function JD(e,t){return JD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:KD,abi:FD,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(JD||={});async function YD(e,t){return YD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:KD,abi:FD,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(YD||={});async function XD(e,t){return XD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return $({address:KD,abi:FD,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(XD||={});async function ZD(e,t){let{account:n=e.account,token:r,...i}=t,a=n?Rm(n).address:void 0;if(!a)throw Error(`account is required.`);return Oy(e,{...i,...ZD.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:KD,abi:FD,args:[t,n],functionName:`balanceOf`})}e.call=t})(ZD||={});async function QD(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Oy(e,{...a,...QD.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(QD||={});async function $D(e,t){let{orderId:n,...r}=t;return Oy(e,{...r,...$D.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return $({address:KD,abi:FD,args:[t],functionName:`getOrder`})}e.call=t})($D||={});async function eO(e,t){let{base:n,quote:r,...i}=t;return Oy(e,{...i,...eO.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return $({address:KD,abi:FD,args:[sO(t,n)],functionName:`books`})}e.call=t})(eO||={});async function tO(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Oy(e,{...a,...tO.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(tO||={});async function nO(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Oy(e,{...a,...nO.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(nO||={});async function rO(e,t){return rO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return $({address:KD,abi:FD,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(rO||={});async function iO(e,t){return iO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return $({address:KD,abi:FD,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=yv({abi:FD,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})(iO||={});async function aO(e,t){return aO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return $({address:KD,abi:FD,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(aO||={});async function oO(e,t){return oO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return $({address:KD,abi:FD,functionName:`withdraw`,args:[t,n]})}e.call=n})(oO||={});function sO(e,t){return Ii(E(e,t))}A(),zm(),Wm();async function cO(e,t){let{token:n,...r}=t;return cO.inner(Vy,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(cO||={});async function lO(e,t){return lO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(lO||={});async function uO(e,t){return uO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Gr(n,32)]}:{functionName:`burn`,args:[t]};return $({address:Z(r),abi:Q,...i})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(uO||={});async function dO(e,t){return dO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return $({address:Z(t),abi:Q,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(dO||={});async function fO(e,t){return fO.inner(Vy,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?Rm(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=qr(32)}=e;return $({address:`0x20fc000000000000000000000000000000000000`,abi:ID,args:[t,n,r,Z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=yv({abi:ID,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(fO||={});async function pO(e,t){let{account:n=e.account}=t,r=n?Rm(n).address:void 0;if(!r)throw Error(`account is required.`);return Oy(e,{...t,...pO.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`allowance`,args:[t,n]})}e.call=t})(pO||={});async function mO(e,t){let{account:n=e.account,...r}=t,i=n?Rm(n).address:void 0;if(!i)throw Error(`account is required.`);return Oy(e,{...r,...mO.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`balanceOf`,args:[t]})}e.call=t})(mO||={});async function hO(e,t){let{token:n,...r}=t,i=Z(n),a=Q;return tD(n)===nD(`0x20c0000000000000000000000000000000000000`)?hx(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})):hx(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 gO(e,t){return Oy(e,{...t,...gO.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`getRoleAdmin`,args:[iD(t)]})}e.call=t})(gO||={});async function _O(e,t){let{account:n=e.account}=t,r=n?Rm(n).address:void 0;if(!r)throw Error(`account is required.`);return Oy(e,{...t,..._O.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`hasRole`,args:[t,iD(n)]})}e.call=t})(_O||={});async function vO(e,t){return vO.inner(By,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:Um(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=iD(r);return $({address:Z(t),abi:Q,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(vO||={});async function yO(e,t){return yO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Gr(r,32)]}:{functionName:`mint`,args:[t,n]};return $({address:Z(i),abi:Q,...a})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(yO||={});async function bO(e,t){return bO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(bO||={});async function xO(e,t){return xO.inner(By,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:Um(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=iD(n);return $({address:Z(t),abi:Q,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(xO||={});async function SO(e,t){return SO.inner(By,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:Um(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=iD(r);return $({address:Z(t),abi:Q,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(SO||={});async function CO(e,t){return CO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return $({address:Z(t),abi:Q,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(CO||={});async function wO(e,t){return wO.inner(Vy,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=iD(n),a=iD(r);return $({address:Z(t),abi:Q,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(wO||={});async function TO(e,t){return TO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Gr(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Gr(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return $({address:Z(i),abi:Q,...o})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(TO||={});async function EO(e,t){return EO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(EO||={});async function DO(e,t){return DO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return $({address:Z(t),abi:Q,functionName:`setNextQuoteToken`,args:[Z(n)]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(DO||={});async function OO(e,t){return OO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(OO||={});function kO(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return kx({key:kO.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(xD(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:kO.type})}}function AO(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 Rm(r)}}function jO(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=tb({chain:i.chain,transport:kO(Mx(e),Mx(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?kO(Mx(a),Mx(n)):Mx(a);return tb({chain:{...t,id:r},transport:o})}}let MO=k(Ii(hi(`mpp`),{as:`Hex`}),0,4);function NO(e){return Zr(k(Ii(hi(e),{as:`Hex`}),0,10))}function PO(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(Zr(MO),0),i[4]=1,i.set(NO(t),5),n&&i.set(NO(n),15),i.set(FO(r),25),D(i)}function FO(e){return Zr(k(Ii(hi(e),{as:`Hex`}),0,7))}function IO(e,t){return e.toLowerCase()===t.toLowerCase()}let LO={mainnet:4217,testnet:42431},RO={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};LO.mainnet,RO.usdc,LO.testnet,RO.pathUsd;let zO={[LO.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[LO.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},BO={[LO.mainnet]:`https://rpc.tempo.xyz`,[LO.testnet]:`https://rpc.moderato.tempo.xyz`},VO=[RO.pathUsd,RO.usdc];async function HO(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!IO(e,i)),c=await Promise.allSettled([Oy(e,mO.call({account:n,token:i})),...s.map(t=>Oy(e,mO.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 QD(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[cO.call({token:l,spender:KD,amount:e}),qD.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new WO({currency:i})}}function UO(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>IO(e,t)))]:t,slippage:e.slippage??1}:!1}var WO=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function GO(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 KO={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function qO(e){return{name:`MPP`,version:`2`,chainId:e}}function JO(e,t){return{challengeId:e,realm:t}}function YO(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let XO=[`push`,`pull`],ZO=G({amount:aT(),memo:q(sT()),recipient:aw(U(),ew(e=>e))}),QO=uE({name:`tempo`,intent:`charge`,schema:{credential:{payload:GC(`type`,[G({hash:sT(),type:K(`hash`)}),G({signature:cT(),type:K(`transaction`)}),G({signature:cT(),type:K(`proof`)})])},request:aw(G({amount:aT(),chainId:q(DC()),currency:U(),decimals:DC(),description:q(U()),externalId:q(U()),feePayer:q(aw(UC([kC(),fw()]),ew(e=>typeof e==`object`?!0:e))),memo:q(sT()),recipient:q(U()),splits:q(W(ZO).check(bC(1),yC(10))),supportedModes:q(W(ZC(XO)).check(bC(1)))}).check(pw(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=mx(e,t),i=n.reduce((e,n)=>e+mx(n.amount,t),0n);return n.every(e=>mx(e.amount,t)>0n)&&i<r},`Invalid splits`)),ew(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:mx(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:mx(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),$O=uE({name:`tempo`,intent:`session`,schema:{credential:{payload:GC(`action`,[G({action:K(`open`),authorizedSigner:q(U()),channelId:sT(),cumulativeAmount:aT(),signature:cT(),transaction:cT(),type:K(`transaction`)}),G({action:K(`topUp`),additionalDeposit:aT(),channelId:sT(),transaction:cT(),type:K(`transaction`)}),G({action:K(`voucher`),channelId:sT(),cumulativeAmount:aT(),signature:cT()}),G({action:K(`close`),channelId:sT(),cumulativeAmount:aT(),signature:cT()})])},request:aw(G({amount:aT(),chainId:q(DC()),channelId:q(sT()),currency:U(),decimals:DC(),escrowContract:q(U()),feePayer:q(aw(UC([kC(),fw()]),ew(e=>typeof e==`object`?!0:e))),minVoucherDelta:q(aT()),recipient:q(U()),suggestedDeposit:q(aT()),unitType:U()}).check(pw(({amount:e,decimals:t})=>mx(e,t)>0n,`Session amount must be greater than 0`)),ew(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:mx(e,r).toString(),...s?{suggestedDeposit:mx(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:mx(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function ek(e={}){let{clientId:t}=e,n=jO({chain:jD,getClient:e.getClient,rpcUrl:BO}),r=AO({account:e.account});return dE(QO,{context:G({account:q(fw()),autoSwap:q(fw()),mode:q(ZC(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 lE({challenge:i,payload:{signature:await Ox(s,{account:c,domain:qO(o),types:KO,primaryType:`Proof`,message:JO(i.id,i.realm)}),type:`proof`},source:YO({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:PO({challengeId:i.id,clientId:t,serverId:i.realm}),g=GO({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>TO.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=UO(a?.autoSwap??e.autoSwap,VO),v=[...(_?await HO(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 Ex(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return lE({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await dv(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,lE({challenge:i,payload:{signature:await Dx(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function tk(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let nk={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function rk(e,t,n,r,i,a){let o=await Ox(e,{account:t,domain:tk(r,i),types:nk,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=bE(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return yc(e.inner.signature)}catch{}return o}function ik(e){return Ii(qa(Ya([`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 ak=[{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 ok(e,t,n){return Oy(e,{address:t,abi:ak,functionName:`getChannel`,args:[n]})}Pm({abi:ak,name:`open`}),Pm({abi:ak,name:`topUp`});function sk(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??zO[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function ck(e,t,n,r){return lE({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function lk(e,t,n,r,i,a,o){let s=await rk(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function uk(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=qr(32),f=ik({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Um({abi:Q,functionName:`approve`,args:[r,o]}),m=Um({abi:ak,functionName:`open`,args:[i,a,o,d,u]}),h=await dv(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await Dx(e,h),_=await rk(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 dk(e,t,n,r){try{let i=await ok(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 fk=G({account:q(fw()),action:q(ZC([`open`,`topUp`,`voucher`,`close`])),channelId:q(U()),cumulativeAmount:q(aT()),cumulativeAmountRaw:q(U()),transaction:q(U()),authorizedSigner:q(U()),additionalDeposit:q(aT()),additionalDepositRaw:q(U()),depositRaw:q(U())});function pk(e={}){let{decimals:t=6}=e,n=jO({chain:jD,getClient:e.getClient,rpcUrl:BO}),r=AO({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:mx(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 sk(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 mx(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),w=u(v,y,_),te=s.get(w);if(!te){let e=p?.channelId??m?.channelId;if(e){let n=await dk(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?mx(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(w,n),c.set(n.channelId,w),o.set(n.channelId,_),te=n,l(te)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(te?.opened)te.cumulativeAmount+=b,ne=await lk(g,f,te.channelId,te.cumulativeAmount,_,h,C),l(te);else{let e=await uk(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(w,e.entry),c.set(e.entry.channelId,w),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return ck(r,ne,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?mx(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?mx(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 rk(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 lk(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 rk(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 ck(e,S,u,r)}return dE($O,{context:fk,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 mk(e){let t=Uc(e);return JSON.parse(t)}function hk(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 gk(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function _k(){return JSON.stringify({mpp:`payment-close-request`})}function vk(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`&&yk(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`&&bk(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&yk(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function yk(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function bk(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let xk={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function Sk(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:mx(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,_=pk({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=WT({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);re(t),re(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function C(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function w(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function ne(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function re(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ie(e){let t=e.headers.get(`Payment-Receipt`),n=t?mk(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ae(e,t){return o=e,ie(await v(e,t))}function oe(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=xk.CLOSED,r=null}if(e===`open`&&(i=xk.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:ae,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ae(e,{...s,headers:{...KT(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=hk(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);re(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let ne=yT(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!ne)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=ne;let ie=await _.createCredential({challenge:ne,context:{}});d=null,c=ne,h=0n,g=BigInt(ne.request.amount);let ae=oE(ie);l=ae.payload.channelId;let se=new n(v,f);u=se;let ce=oe(se),le=e=>{w(Error(e)),te(Error(e)),(se.readyState===xk.CONNECTING||se.readyState===xk.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===ne.id&&e.channelId===l,de=new Promise((e,t)=>{let n=()=>{se.removeEventListener(`error`,r),ce.emit(`open`,{type:`open`}),e()},r=()=>{se.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};se.addEventListener(`open`,n,{once:!0}),se.addEventListener(`error`,r,{once:!0})});return se.addEventListener(`close`,e=>{u===se&&(u=null),c===ne&&(c=null),l===ae.payload.channelId&&(l=null),p=null,w(Error(`WebSocket closed before the payment flow completed.`)),te(Error(`WebSocket closed before the payment flow completed.`)),ce.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),se.addEventListener(`error`,()=>{ce.emit(`error`,{type:`error`})}),se.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=vk(t);if(!n){ce.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,ce.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!ue(n.data)){le(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){le(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),C(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:w(Error(n.message)),te(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){le(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){le(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ne,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(gk(r));break}case`payment-receipt`:if(!ue(n.data)){le(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){le(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{w(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(gk(ie)),await x(),ce.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===xk.OPEN){let t=d??await(async()=>(u.send(_k()),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(gk(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(ne(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return re(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?mk(m):void 0}}}function Ck(e={}){return[ek(e),pk(e)]}(function(e){e.charge=ek,e.session=Sk})(Ck||={});function wk(e){return e}function Tk(){return wk({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return yT(e)},getChallenge(e){return vT(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function Ek(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=Tk()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=TT(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=WT(l);return n&>(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=kT(r,o,Dk(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&&nT(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 Dk(e,t){return t?typeof t==`string`?ET(t):t:e}function Ok(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 kk(e={}){let{account:t}=e,n=await Uu();return{accessKey:HD(n,t?{access:t}:void 0),keyPair:n}}function Ak(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 jk(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 Mk(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 Nk(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 au({message:`Account \"${n}\" not found.`}):new su({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(Ik(t,e))return Pk(t)}}return Fk(l,{signable:r})}function Pk(e){if(`keyPair`in e&&e.keyPair)return HD(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return BD(e.privateKey,{access:e.access});case`p256`:return zD(e.privateKey,{access:e.access})}throw new au({message:`External access key cannot be hydrated for signing.`})}function Fk(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 au({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return BD(e.privateKey);case`p256`:return zD(e.privateKey);case`webCrypto`:return HD(e.keyPair);case`webAuthn`:return VD(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return RD(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new au({message:`Unknown key type.`})}}function Ik(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:ro(e.selector)).toLowerCase():!0:!1)})}function Lk(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function Rk(e={}){let{dialog:t=x()?re():ne(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`,theme:o}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),Lk({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=xu();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 iu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new iu({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=vu({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:Yw});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await kk();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){Mk({address:e,keyAuthorization:HE(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=Ok(n,{store:i});try{let e=await t(n,r??void 0);return jk(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),Ak(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:mS(Vw.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:mS(Vw.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 dv(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:[mS(ww,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 dv(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:[mS(ww,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 dv(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:[mS(ww,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[mS(Vw.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:[mS(Gw.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let zk=new Map;function Bk(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return Hk(r);if(r?.url)return Hk(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=zk.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Mx(),r=i?Vk(i,t):t;u=tb({chain:e,transport:o?Uk(r,o,s):r,pollingInterval:1e3}),zk.set(l,u)}return u}function Vk(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function Hk(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function Uk(e,t,n){return r=>{let i=e(r),a=Mx(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=xD(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 Wk(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Wk.cache.get(n))return Wk.cache.get(n);let r=e().finally(()=>Wk.cache.delete(n));return Wk.cache.set(n,r),r}Wk.cache=new Map;function Gk(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function Kk(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=Gk(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let qk;function Jk(){return qk||=Kk(`keyval-store`,`keyval`),qk}function Yk(e,t=Jk()){return t(`readonly`,t=>Gk(t.get(e)))}function Xk(e,t,n=Jk()){return n(`readwrite`,n=>(n.put(t,e),Gk(n.transaction)))}function Zk(e,t=Jk()){return t(`readwrite`,t=>(t.delete(e),Gk(t.transaction)))}function Qk(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 $k(e={}){let t=typeof indexedDB<`u`?Kk(`tempo`,`store`):void 0;return Qk({async getItem(e){let n=await Yk(e,t);return n===null?null:n},async setItem(e,n){await Xk(e,n,t)},async removeItem(e){await Zk(e,t)}},e)}function eA(e={}){let t=new Map;return Qk({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let tA=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 nA(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 rA=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return rA(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return rA(t)(e)}}}},iA=(e,t)=>(n,r,i)=>{let a={storage:nA(()=>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 rA(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},aA=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},oA=(e=>e?aA(e):aA);function sA(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?$k({key:`tempo`}):eA({key:`tempo`})}=e;return oA(tA(iA(()=>({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 cA(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function lA(e,t){let n=fS(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new ou({message:`Unsupported method \"${t?.method}\".`}):new ru(-32602,`Invalid params: ${uA(n.error.issues)}`)}return{...t,_decoded:n.data}}function uA(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?uA([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let dA=new Set;function fA(e={}){let{adapter:t=Rk(),chains:n=[jD,PD,MD],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?$k():eA()}=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=sA({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>Nk({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return Bk(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=_u();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`,O(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:O(c.getState().chainId)}):m.emit(`disconnect`,new su)});function h(){if(c.getState().accounts.length===0)throw new su({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(vu({...m,async request({method:t,params:r}){return await cA(c),Wk(async()=>{let i;try{i=lA(Zw,{method:t,params:r})}catch(e){if(!(e instanceof ou))throw e;return await Bk(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 O(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=Ok(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...KE(n)}});return jk(e,{store:c}),r}catch{return Ak(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=E(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[mS(ww,l)]}),Gr(O(c.getState().chainId),32),mA);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[mS(ww,l)]}),d=u.transactionHash,f=O(c.getState().chainId),m=E(d,Gr(f,32),mA);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 su({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new eu({message:\"`tokens` is required.\"});let s=Bk(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([mO(s,{account:a,token:e}),hO(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:O(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(mA.slice(2)))throw Error(\"`id` not supported\");Vr(e);let t=k(e,0,32),r=O(Number(k(e,32,64))),a=await Bk(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 au({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(O(e.id))):n,o={};for(let e of a)o[O(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??qr(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new ou({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 ou({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 ou({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new ou({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new du({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:Rr({method:t,params:r})})}},{schema:Yw}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return Bk(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,``)}`;dA.has(e)||(dA.add(e),Qw({info:{icon:t.icon??pA,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&Ek({methods:[Ck({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let pA=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,mA=Ii(Wr(`TEMPO_5792`)),hA={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},gA={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},_A={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var vA=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let yA={accent:new vA(`accent`),background:new vA(`background`),border:new vA(`border`),foreground:new vA(`foreground`),muted:new vA(`muted`),negative:new vA(`negative`),positive:new vA(`positive`),surface:new vA(`surface`),fontFamily:new vA(`font-family`),fontSizeBase:new vA(`font-size-base`),radius:new vA(`radius`),spacingUnit:new vA(`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: ${yA.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 bA(e){let t=new URL(location.href);t.searchParams.set(gA.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 xA(e){let t=document.getElementById(hA.data),n=Lr(t.textContent),r=t.getAttribute(_A.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(_A.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(_A.challengeId),o=a?(i.removeAttribute(_A.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(hA.error)?.remove();return}let t=document.getElementById(hA.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=hA.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:bA,vars:yA}}let SA=xA(`tempo`),CA=String.raw,wA=document.createElement(`style`);wA.textContent=CA`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${SA.vars.spacingUnit} * 8);\n }\n button {\n background: ${SA.vars.accent};\n border-radius: ${SA.vars.radius};\n color: ${SA.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${SA.vars.spacingUnit} * 4) calc(${SA.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`,SA.root.append(wA);let TA=fA({testnet:SA.challenge.request.methodDetails?.chainId===PD.id||SA.challenge.request.methodDetails?.chainId===ND.id}),EA=document.createElement(`button`);EA.innerHTML=`${SA.text.pay===`Pay`?`Continue with`:SA.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>`,EA.onclick=async()=>{try{SA.error(),EA.disabled=!0;let e=await(async()=>{let e=await TA.request({method:`eth_accounts`});return e.length>0?e.at(0):(await TA.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await Ck({account:e,getClient:e=>{let t=e.chainId??SA.challenge.request.methodDetails?.chainId;return tb({chain:[...TA?.chains??[],PD,ND].find(e=>e.id===t),transport:Ax(TA)})}})[0].createCredential({challenge:SA.challenge,context:{}});await SA.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;SA.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{EA.disabled=!1}},SA.root.appendChild(EA)})();</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>"
|