mppx 0.6.26 → 0.6.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/Store.d.ts +32 -9
  3. package/dist/Store.d.ts.map +1 -1
  4. package/dist/Store.js +42 -10
  5. package/dist/Store.js.map +1 -1
  6. package/dist/cli/cli.js +1 -1
  7. package/dist/cli/cli.js.map +1 -1
  8. package/dist/cli/utils.js +2 -2
  9. package/dist/cli/utils.js.map +1 -1
  10. package/dist/proxy/internal/Headers.d.ts +13 -1
  11. package/dist/proxy/internal/Headers.d.ts.map +1 -1
  12. package/dist/proxy/internal/Headers.js +14 -1
  13. package/dist/proxy/internal/Headers.js.map +1 -1
  14. package/dist/stripe/server/Charge.d.ts +31 -1
  15. package/dist/stripe/server/Charge.d.ts.map +1 -1
  16. package/dist/stripe/server/Charge.js +88 -11
  17. package/dist/stripe/server/Charge.js.map +1 -1
  18. package/dist/stripe/server/internal/html.gen.d.ts +1 -1
  19. package/dist/stripe/server/internal/html.gen.js +1 -1
  20. package/dist/tempo/client/ChannelOps.d.ts.map +1 -1
  21. package/dist/tempo/client/ChannelOps.js +7 -2
  22. package/dist/tempo/client/ChannelOps.js.map +1 -1
  23. package/dist/tempo/client/Charge.d.ts.map +1 -1
  24. package/dist/tempo/client/Charge.js +6 -4
  25. package/dist/tempo/client/Charge.js.map +1 -1
  26. package/dist/tempo/client/Session.js +1 -1
  27. package/dist/tempo/client/Session.js.map +1 -1
  28. package/dist/tempo/client/Subscription.js +1 -1
  29. package/dist/tempo/client/Subscription.js.map +1 -1
  30. package/dist/tempo/server/Charge.d.ts +6 -0
  31. package/dist/tempo/server/Charge.d.ts.map +1 -1
  32. package/dist/tempo/server/Charge.js +8 -3
  33. package/dist/tempo/server/Charge.js.map +1 -1
  34. package/dist/tempo/server/Session.d.ts +6 -0
  35. package/dist/tempo/server/Session.d.ts.map +1 -1
  36. package/dist/tempo/server/Session.js +2 -2
  37. package/dist/tempo/server/Session.js.map +1 -1
  38. package/dist/tempo/server/Subscription.d.ts +6 -0
  39. package/dist/tempo/server/Subscription.d.ts.map +1 -1
  40. package/dist/tempo/server/Subscription.js +2 -2
  41. package/dist/tempo/server/Subscription.js.map +1 -1
  42. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  43. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  44. package/dist/tempo/server/internal/html.gen.js +1 -1
  45. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  46. package/dist/tempo/session/Chain.d.ts.map +1 -1
  47. package/dist/tempo/session/Chain.js +6 -1
  48. package/dist/tempo/session/Chain.js.map +1 -1
  49. package/package.json +3 -3
  50. package/src/Store.test-d.ts +58 -0
  51. package/src/Store.test.ts +77 -0
  52. package/src/Store.ts +155 -74
  53. package/src/cli/cli.ts +1 -1
  54. package/src/cli/utils.test.ts +1 -1
  55. package/src/cli/utils.ts +2 -2
  56. package/src/proxy/internal/Headers.test.ts +18 -0
  57. package/src/proxy/internal/Headers.ts +14 -1
  58. package/src/stripe/server/Charge.test.ts +215 -1
  59. package/src/stripe/server/Charge.ts +150 -20
  60. package/src/stripe/server/internal/html.gen.ts +1 -1
  61. package/src/tempo/client/ChannelOps.ts +6 -2
  62. package/src/tempo/client/Charge.ts +5 -4
  63. package/src/tempo/client/Session.ts +1 -1
  64. package/src/tempo/client/Subscription.ts +1 -1
  65. package/src/tempo/server/Charge.test.ts +22 -1
  66. package/src/tempo/server/Charge.ts +17 -3
  67. package/src/tempo/server/Session.ts +10 -2
  68. package/src/tempo/server/Subscription.test.ts +1 -1
  69. package/src/tempo/server/Subscription.ts +8 -2
  70. package/src/tempo/server/internal/html/main.ts +1 -1
  71. package/src/tempo/server/internal/html/package.json +1 -1
  72. package/src/tempo/server/internal/html.gen.ts +1 -1
  73. package/src/tempo/session/Chain.test.ts +16 -8
  74. package/src/tempo/session/Chain.ts +6 -1
  75. package/src/tempo/session/ChannelStore.test.ts +21 -0
  76. package/src/tempo/subscription/Store.test.ts +55 -0
  77. package/src/viem/Account.test.ts +1 -1
  78. package/src/viem/Client.test.ts +1 -1
@@ -1,3 +1,3 @@
1
1
  // Generated — do not edit.
2
- export const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t,n){return n&&v(t,n)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){return y(e)===y(t)}function y(e){let t=e.split(`:`)[0].toLowerCase(),n=t.split(`.`);return n.length<=2?t:n.slice(-2).join(`.`)}function b(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.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,ne,re=[];function ie(){return typeof window>`u`?oe():S({name:`iframe`},e=>{let{host:t}=e;if(C&&C.host===t){let t=w;return w=e.store,t&&t!==w&&!re.includes(t)&&re.push(t),ne?.destroy(),ne=ae()(e),C.instance.syncTheme(e.theme),C.instance}C?.instance.destroy(),w=e.store,ne=ae()(e);let n=!1,r=fe(),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=>{ce(se(w,re,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ue(e)}),e.on(`sync`,({valid:e})=>{e===!1&&w?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),S(),n=!1,l=!0;let e=w?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&ne?.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=()=>le(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`)},ie=!1,oe=()=>{ie||(ie=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(ie){ie=!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(){ne.close(),n=!1,pe(),S()},destroy(){C?.instance===me&&(C=void 0),ne?.close(),n=!1,S(),pe(),ne?.destroy(),f.destroy(),a.remove(),y.disconnect(),w=void 0,ne=void 0,re=[]},open(){n||(n=!0,oe(),ee())},async syncRequests(e){if(l){ne.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(te()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){ne.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`)),ne.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:de(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:me},me})}function ae(e={}){if(typeof window>`u`)return oe();let{size:t=x}=e;return S({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&le(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`,()=>le(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=fe(),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=>ce(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:de(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function oe(){return S({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function se(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 ce(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 le(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 ue(e){if(!w)return;let{accounts:t}=w.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function de(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function fe(){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 pe,me=o((()=>{pe=`1.2.3`})),he,ge=o((()=>{me(),he=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@${pe}`].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 _e(e,t){return e.exec(t)?.groups}var ve,ye,be,xe=o((()=>{ve=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ye=/^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)?$/,be=/^\\(.+?\\).*?$/}));function Se(e){let t=e.type;if(Ce.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+=Se(i),r<n-1&&(t+=`, `)}let r=_e(Ce,e.type);return t+=`)${r?.array||``}`,Se({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Ce,we=o((()=>{xe(),Ce=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function Te(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Se(i),r!==n-1&&(t+=`, `)}return t}var Ee=o((()=>{we()}));function De(e){return e.type===`function`?`function ${e.name}(${Te(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Te(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Te(e.inputs)})`:e.type===`error`?`error ${e.name}(${Te(e.inputs)})`:e.type===`constructor`?`constructor(${Te(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var Oe=o((()=>{Ee()}));function ke(e){return He.test(e)}function Ae(e){return _e(He,e)}function je(e){return Ue.test(e)}function Me(e){return _e(Ue,e)}function Ne(e){return We.test(e)}function Pe(e){return _e(We,e)}function Fe(e){return Ge.test(e)}function Ie(e){return _e(Ge,e)}function Le(e){return Ke.test(e)}function Re(e){return _e(Ke,e)}function ze(e){return qe.test(e)}function Be(e){return _e(qe,e)}function Ve(e){return Je.test(e)}var He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze=o((()=>{xe(),He=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Ue=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,We=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Ge=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,Ke=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,qe=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Je=/^receive\\(\\) external payable$/,Ye=new Set([`indexed`]),Xe=new Set([`calldata`,`memory`,`storage`])})),Qe,$e,et=o((()=>{ge(),Qe=class extends he{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`})}},$e=class extends he{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`})}}})),tt,nt,rt,it,at,ot=o((()=>{ge(),tt=class extends he{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},nt=class extends he{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`})}},rt=class extends he{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`})}},it=class extends he{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`})}},at=class extends he{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`})}}})),st,ct,lt,ut=o((()=>{ge(),st=class extends he{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},ct=class extends he{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},lt=class extends he{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`})}}})),dt,ft=o((()=>{ge(),dt=class extends he{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`})}}})),pt,mt=o((()=>{ge(),pt=class extends he{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 ht(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 gt,_t=o((()=>{gt=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 vt(e,t={}){if(Ne(e))return yt(e,t);if(je(e))return bt(e,t);if(ke(e))return xt(e,t);if(Le(e))return St(e,t);if(ze(e))return Ct(e);if(Ve(e))return{type:`receive`,stateMutability:`payable`};throw new ct({signature:e})}function yt(e,t={}){let n=Pe(e);if(!n)throw new st({signature:e,type:`function`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{modifiers:Xe,structs:t,type:`function`}));let o=[];if(n.returns){let e=Tt(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(wt(e[n],{modifiers:Xe,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function bt(e,t={}){let n=Me(e);if(!n)throw new st({signature:e,type:`event`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{modifiers:Ye,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function xt(e,t={}){let n=Ae(e);if(!n)throw new st({signature:e,type:`error`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function St(e,t={}){let n=Re(e);if(!n)throw new st({signature:e,type:`constructor`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function Ct(e){let t=Be(e);if(!t)throw new st({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function wt(e,t){let n=ht(e,t?.type,t?.structs);if(gt.has(n))return gt.get(n);let r=be.test(e),i=_e(r?At:kt,e);if(!i)throw new tt({param:e});if(i.name&&Dt(i.name))throw new nt({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=Tt(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(wt(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(jt.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Et(c))throw new $e({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new rt({param:e,type:t?.type,modifier:i.modifier});if(Xe.has(i.modifier)&&!Ot(c,!!i.array))throw new it({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return gt.set(n,u),u}function Tt(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?Tt(o,[...t,n.trim()]):Tt(o,t,`${n}${i}`,r);case`(`:return Tt(o,t,`${n}${i}`,r+1);case`)`:return Tt(o,t,`${n}${i}`,r-1);default:return Tt(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new pt({current:n,depth:r});return t.push(n.trim()),t}function Et(e){return e===`address`||e===`bool`||e===`function`||e===`string`||ve.test(e)||ye.test(e)}function Dt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||ve.test(e)||ye.test(e)||Mt.test(e)}function Ot(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var kt,At,jt,Mt,Nt=o((()=>{xe(),et(),ot(),ut(),mt(),_t(),Ze(),kt=/^(?<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$_]*))?$/,At=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,jt=/^u?int$/,Mt=/^(?: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 Pt(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Fe(n))continue;let i=Ie(n);if(!i)throw new st({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=wt(t,{type:`struct`});o.push(n)}if(!o.length)throw new lt({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]=Ft(a,t)}return r}function Ft(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(be.test(i.type))r.push(i);else{let e=_e(It,i.type);if(!e?.type)throw new at({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new dt({type:o});r.push({...i,type:`tuple${a??``}`,components:Ft(t[o],t,new Set([...n,o]))})}else if(Et(o))r.push(i);else throw new Qe({type:o})}}return r}var It,Lt=o((()=>{xe(),et(),ot(),ut(),ft(),Ze(),Nt(),It=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function Rt(e){let t=Pt(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];Fe(r)||n.push(vt(r,t))}return n}var zt=o((()=>{Ze(),Lt(),Nt()})),Bt=o((()=>{ge(),Oe(),we(),Ee(),zt(),et(),Ze(),Lt(),Nt(),ot(),ut(),mt(),ft()}));function T(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 Vt(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new xn(e.type);return`${e.name}(${Ht(e.inputs,{includeName:t})})`}function Ht(e,{includeName:t=!1}={}){return e?e.map(e=>Ut(e,{includeName:t})).join(t?`, `:`,`):``}function Ut(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Ht(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Wt=o((()=>{Sn()}));function E(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Gt=o((()=>{}));function Kt(e){return E(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var qt=o((()=>{Gt()})),Jt,Yt=o((()=>{Jt=`2.47.6`}));function Xt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Xt(e.cause,t):t?null:e}var Zt,D,O=o((()=>{Yt(),Zt={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Jt}`},D=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=Zt.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Zt.version?[`Version: ${Zt.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=Jt}walk(e){return Xt(this,e)}}})),Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn=o((()=>{Wt(),qt(),O(),Qt=class extends D{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`})}},$t=class extends D{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`})}},en=class extends D{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${Ht(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}},tn=class extends D{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},nn=class extends D{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`})}},rn=class extends D{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Kt(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},an=class extends D{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},on=class extends D{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`})}},sn=class extends D{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`})}},cn=class extends D{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}},ln=class extends D{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},un=class extends D{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`})}},dn=class extends D{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`})}},fn=class extends D{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`})}},pn=class extends D{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`})}},mn=class extends D{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Vt(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${Vt(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},hn=class extends D{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},gn=class extends D{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: (${Ht(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}},_n=class extends D{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${Vt(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},vn=class extends D{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`})}},yn=class extends D{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`})}},bn=class extends D{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},xn=class extends D{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),Cn,wn,Tn,En=o((()=>{O(),Cn=class extends D{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},wn=class extends D{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},Tn=class extends D{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 Dn(e,{dir:t,size:n=32}={}){return typeof e==`string`?On(e,{dir:t,size:n}):kn(e,{dir:t,size:n})}function On(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new wn({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function kn(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new wn({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 An=o((()=>{En()})),jn,Mn,Nn,Pn,Fn,In=o((()=>{O(),jn=class extends D{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`})}},Mn=class extends D{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`})}},Nn=class extends D{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},Pn=class extends D{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},Fn=class extends D{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function Ln(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 Rn=o((()=>{}));function zn(e,{size:t}){if(Kt(e)>t)throw new Fn({givenSize:Kt(e),maxSize:t})}function k(e,t={}){let{signed:n}=t;t.size&&zn(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 Bn(e,t={}){let n=e;if(t.size&&(zn(n,{size:t.size}),n=Ln(n)),Ln(n)===`0x00`)return!1;if(Ln(n)===`0x01`)return!0;throw new Nn(n)}function Vn(e,t={}){let n=k(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new jn({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var Hn=o((()=>{In(),qt(),Rn()}));function Un(e,t={}){return typeof e==`number`||typeof e==`bigint`?A(e,t):typeof e==`string`?Kn(e,t):typeof e==`boolean`?Wn(e,t):Gn(e,t)}function Wn(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(zn(n,{size:t.size}),Dn(n,{size:t.size})):n}function Gn(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=qn[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(zn(r,{size:t.size}),Dn(r,{dir:`right`,size:t.size})):r}function A(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 jn({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?Dn(s,{size:r}):s}function Kn(e,t={}){return Gn(Jn.encode(e),t)}var qn,Jn,j=o((()=>{In(),An(),Hn(),qn=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Jn=new TextEncoder}));function Yn(e,t={}){return typeof e==`number`||typeof e==`bigint`?$n(e,t):typeof e==`boolean`?Xn(e,t):E(e)?Qn(e,t):er(e,t)}function Xn(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(zn(n,{size:t.size}),Dn(n,{size:t.size})):n}function Zn(e){if(e>=nr.zero&&e<=nr.nine)return e-nr.zero;if(e>=nr.A&&e<=nr.F)return e-(nr.A-10);if(e>=nr.a&&e<=nr.f)return e-(nr.a-10)}function Qn(e,t={}){let n=e;t.size&&(zn(n,{size:t.size}),n=Dn(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=Zn(r.charCodeAt(t++)),i=Zn(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new D(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function $n(e,t){return Qn(A(e,t))}function er(e,t={}){let n=tr.encode(e);return typeof t.size==`number`?(zn(n,{size:t.size}),Dn(n,{dir:`right`,size:t.size})):n}var tr,nr,rr=o((()=>{O(),Gt(),An(),Hn(),j(),tr=new TextEncoder,nr={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function ir(e,t=!1){return t?{h:Number(e&sr),l:Number(e>>cr&sr)}:{h:Number(e>>cr&sr)|0,l:Number(e&sr)|0}}function ar(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}=ir(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function or(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr,Tr=o((()=>{sr=BigInt(2**32-1),cr=BigInt(32),lr=(e,t,n)=>e>>>n,ur=(e,t,n)=>e<<32-n|t>>>n,dr=(e,t,n)=>e>>>n|t<<32-n,fr=(e,t,n)=>e<<32-n|t>>>n,pr=(e,t,n)=>e<<64-n|t>>>n-32,mr=(e,t,n)=>e>>>n-32|t<<64-n,hr=(e,t,n)=>e<<n|t>>>32-n,gr=(e,t,n)=>t<<n|e>>>32-n,_r=(e,t,n)=>t<<n-32|e>>>64-n,vr=(e,t,n)=>e<<n-32|t>>>64-n,yr=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),br=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,xr=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),Sr=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Cr=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),wr=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0})),Er,Dr=o((()=>{Er=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Or(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function kr(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Ar(e,...t){if(!Or(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 jr(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);kr(e.outputLen),kr(e.blockLen)}function Mr(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 Nr(e,t){Ar(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function Pr(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Fr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Ir(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Lr(e,t){return e<<32-t|e>>>t}function Rr(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function zr(e){for(let t=0;t<e.length;t++)e[t]=Rr(e[t]);return e}function Br(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function Vr(e){return typeof e==`string`&&(e=Br(e)),Ar(e),e}function Hr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Ar(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 Ur(e){let t=t=>e().update(Vr(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Wr(e){let t=(t,n)=>e(n).update(Vr(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Gr(e=32){if(Er&&typeof Er.getRandomValues==`function`)return Er.getRandomValues(new Uint8Array(e));if(Er&&typeof Er.randomBytes==`function`)return Uint8Array.from(Er.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var Kr,qr,Jr,Yr=o((()=>{Dr(),Kr=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,qr=Kr?e=>e:zr,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Jr=class{}}));function Xr(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=li(a,o,1)^n[r],c=ui(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=ii[n],a=li(t,i,r),o=ui(t,i,r),s=ri[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]^=si[r],e[1]^=ci[r]}Fr(n)}var Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi,hi=o((()=>{Tr(),Yr(),Zr=BigInt(0),Qr=BigInt(1),$r=BigInt(2),ei=BigInt(7),ti=BigInt(256),ni=BigInt(113),ri=[],ii=[],ai=[];for(let e=0,t=Qr,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ri.push(2*(5*r+n)),ii.push((e+1)*(e+2)/2%64);let i=Zr;for(let e=0;e<7;e++)t=(t<<Qr^(t>>ei)*ni)%ti,t&$r&&(i^=Qr<<(Qr<<BigInt(e))-Qr);ai.push(i)}oi=ar(ai,!0),si=oi[0],ci=oi[1],li=(e,t,n)=>n>32?_r(e,t,n):hr(e,t,n),ui=(e,t,n)=>n>32?vr(e,t,n):gr(e,t,n),di=class e extends Jr{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,kr(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Pr(this.state)}clone(){return this._cloneInto()}keccak(){qr(this.state32),Xr(this.state32,this.rounds),qr(this.state32),this.posOut=0,this.pos=0}update(e){Mr(this),e=Vr(e),Ar(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){Mr(this,!1),Ar(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 kr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Nr(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,Fr(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}},fi=(e,t,n)=>Ur(()=>new di(t,e,n)),fi(6,144,224/8),fi(6,136,256/8),fi(6,104,384/8),fi(6,72,512/8),fi(1,144,224/8),pi=fi(1,136,256/8),fi(1,104,384/8),fi(1,72,512/8),mi=(e,t,n)=>Wr((r={})=>new di(t,e,r.dkLen===void 0?n:r.dkLen,!0)),mi(31,168,128/8),mi(31,136,256/8)}));function gi(e,t){let n=t||`hex`,r=pi(E(e,{strict:!1})?Yn(e):e);return n===`bytes`?r:Un(r)}var _i=o((()=>{hi(),Gt(),rr(),j()}));function vi(e){return yi(e)}var yi,bi=o((()=>{rr(),_i(),yi=e=>gi(Yn(e))}));function xi(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 D(`Unable to normalize signature.`);return i}var Si=o((()=>{O()})),Ci,wi=o((()=>{Bt(),Si(),Ci=e=>xi(typeof e==`string`?e:De(e))}));function Ti(e){return vi(Ci(e))}var Ei=o((()=>{bi(),wi()})),Di,Oi=o((()=>{Ei(),Di=Ti})),ki,Ai=o((()=>{O(),ki=class extends D{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`})}}})),ji,Mi=o((()=>{ji=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 Ni(e,t){if(Fi.has(`${e}.${t}`))return Fi.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=gi(er(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 Fi.set(`${e}.${t}`,a),a}function Pi(e,t){if(!Li(e,{strict:!1}))throw new ki({address:e});return Ni(e,t)}var Fi,Ii=o((()=>{Ai(),rr(),_i(),Mi(),Bi(),Fi=new ji(8192)}));function Li(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(zi.has(r))return zi.get(r);let i=Ri.test(e)?e.toLowerCase()===e?!0:n?Ni(e)===e:!0:!1;return zi.set(r,i),i}var Ri,zi,Bi=o((()=>{Mi(),Ii(),Ri=/^0x[a-fA-F0-9]{40}$/,zi=new ji(8192)}));function Vi(e){return typeof e[0]==`string`?Ui(e):Hi(e)}function Hi(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 Ui(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var Wi=o((()=>{}));function Gi(e,t,n,{strict:r}={}){return E(e,{strict:!1})?Yi(e,t,n,{strict:r}):Ji(e,t,n,{strict:r})}function Ki(e,t){if(typeof t==`number`&&t>0&&t>Kt(e)-1)throw new Cn({offset:t,position:`start`,size:Kt(e)})}function qi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Kt(e)!==n-t)throw new Cn({offset:n,position:`end`,size:Kt(e)})}function Ji(e,t,n,{strict:r}={}){Ki(e,t);let i=e.slice(t,n);return r&&qi(i,t,n),i}function Yi(e,t,n,{strict:r}={}){Ki(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&qi(i,t,n),i}var Xi=o((()=>{En(),Gt(),qt()})),Zi,Qi,$i=o((()=>{Zi=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Qi=/^(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 ea(e,t){if(e.length!==t.length)throw new an({expectedLength:e.length,givenLength:t.length});let n=ra(ta({params:e,values:t}));return n.length===0?`0x`:n}function ta({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(na({param:e[r],value:t[r]}));return n}function na({param:e,value:t}){let n=da(e.type);if(n){let[r,i]=n;return aa(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return ua(t,{param:e});if(e.type===`address`)return ia(t);if(e.type===`bool`)return sa(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Qi.exec(e.type)??[];return ca(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return oa(t,{param:e});if(e.type===`string`)return la(t);throw new vn(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function ra(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Kt(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(A(t+i,{size:32})),r.push(s),i+=Kt(s)):n.push(s)}return Vi([...n,...r])}function ia(e){if(!Li(e))throw new ki({address:e});return{dynamic:!1,encoded:On(e.toLowerCase())}}function aa(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new bn(e);if(!r&&e.length!==t)throw new nn({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=na({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=ra(a);if(r){let t=A(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?Vi([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Vi(a.map(({encoded:e})=>e))}}function oa(e,{param:t}){let[,n]=t.type.split(`bytes`),r=Kt(e);if(!n){let t=e;return r%32!=0&&(t=On(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:Vi([On(A(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new rn({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:On(e,{dir:`right`})}}function sa(e){if(typeof e!=`boolean`)throw new D(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:On(Wn(e))}}function ca(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 jn({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:A(e,{size:32,signed:t})}}function la(e){let t=Kn(e),n=Math.ceil(Kt(t)/32),r=[];for(let e=0;e<n;e++)r.push(On(Gi(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:Vi([On(A(Kt(t),{size:32})),...r])}}function ua(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=na({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?ra(r):Vi(r.map(({encoded:e})=>e))}}function da(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var fa=o((()=>{Sn(),Ai(),O(),In(),Bi(),Wi(),An(),qt(),Xi(),j(),$i()})),pa,ma=o((()=>{Xi(),Ei(),pa=e=>Gi(Ti(e),0,4)}));function ha(e){let{abi:t,args:n=[],name:r}=e,i=E(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?pa(e)===r:e.type===`event`?Di(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?ga(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=_a(e.inputs,o.inputs,n);if(t)throw new mn({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function ga(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return Li(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`&&ga(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=>ga(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function _a(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return _a(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&Li(n[r],{strict:!1}))return o}}var va=o((()=>{Sn(),Gt(),Bi(),Oi(),ma()}));function ya(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var ba=o((()=>{}));function xa(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=ha({abi:t,args:n,name:r});if(!e)throw new dn(r,{docsPath:Sa});i=e}if(i.type!==`function`)throw new dn(void 0,{docsPath:Sa});return{abi:[i],functionName:pa(Vt(i))}}var Sa,Ca=o((()=>{Sn(),ma(),Wt(),va(),Sa=`/docs/contract/encodeFunctionData`}));function wa(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:xa(e),i=n[0];return Ui([r,(`inputs`in i&&i.inputs?ea(i.inputs,t??[]):void 0)??`0x`])}var Ta=o((()=>{Wi(),fa(),Ca()})),Ea,Da,Oa,ka=o((()=>{Ea={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.`},Da={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Oa={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Aa,ja,Ma,Na=o((()=>{O(),Aa=class extends D{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},ja=class extends D{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Ma=class extends D{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function Pa(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Fa);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Fa,Ia=o((()=>{Na(),Fa={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 Ma({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new ja({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Aa({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 Aa({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 La(e,t={}){return t.size!==void 0&&zn(e,{size:t.size}),k(Gn(e,t),t)}function Ra(e,t={}){let n=e;if(t.size!==void 0&&(zn(n,{size:t.size}),n=Ln(n)),n.length>1||n[0]>1)throw new Mn(n);return!!n[0]}function za(e,t={}){return t.size!==void 0&&zn(e,{size:t.size}),Vn(Gn(e,t),t)}function Ba(e,t={}){let n=e;return t.size!==void 0&&(zn(n,{size:t.size}),n=Ln(n,{dir:`right`})),new TextDecoder().decode(n)}var Va=o((()=>{In(),Rn(),Hn(),j()}));function Ha(e,t){let n=typeof t==`string`?Qn(t):t,r=Pa(n);if(Kt(n)===0&&e.length>0)throw new tn;if(Kt(t)&&Kt(t)<32)throw new en({data:typeof t==`string`?t:Gn(t),params:e,size:Kt(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=Ua(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function Ua(e,t,{staticPosition:n}){let r=da(t.type);if(r){let[i,a]=r;return Ga(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return Ya(e,t,{staticPosition:n});if(t.type===`address`)return Wa(e);if(t.type===`bool`)return Ka(e);if(t.type.startsWith(`bytes`))return qa(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Ja(e,t);if(t.type===`string`)return Xa(e,{staticPosition:n});throw new yn(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function Wa(e){return[Ni(Gn(Ji(e.readBytes(32),-20))),32]}function Ga(e,t,{length:n,staticPosition:r}){if(!n){let n=r+za(e.readBytes($a)),i=n+Qa;e.setPosition(n);let a=za(e.readBytes(Qa)),o=Za(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=Ua(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(Za(t)){let i=r+za(e.readBytes($a)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=Ua(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]=Ua(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function Ka(e){return[Ra(e.readBytes(32),{size:32}),32]}function qa(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=za(e.readBytes(32));e.setPosition(n+t);let r=za(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Gn(i),32]}return[Gn(e.readBytes(Number.parseInt(i,10),32)),32]}function Ja(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?La(i,{signed:n}):za(i,{signed:n}),32]}function Ya(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(Za(t)){let o=n+za(e.readBytes($a));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=Ua(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]=Ua(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function Xa(e,{staticPosition:t}){let n=t+za(e.readBytes(32));e.setPosition(n);let r=za(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Ba(Ln(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Za(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Za);let n=da(e.type);return!!(n&&Za({...e,type:n[1]}))}var Qa,$a,eo=o((()=>{Sn(),Ii(),Ia(),qt(),Xi(),Rn(),Va(),rr(),j(),fa(),Qa=32,$a=32}));function to(e){let{abi:t,data:n,cause:r}=e,i=Gi(n,0,4);if(i===`0x`)throw new tn({cause:r});let a=[...t||[],Da,Oa].find(e=>e.type===`error`&&i===pa(Vt(e)));if(!a)throw new cn(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?Ha(a.inputs,Gi(n,4)):void 0,errorName:a.name}}var no=o((()=>{ka(),Sn(),Xi(),ma(),eo(),Wt()})),ro,io=o((()=>{ro=(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 ao({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`?ro(t[n]):t[n]}`).join(`, `)})`}var oo=o((()=>{io()})),so,co,lo=o((()=>{so={gwei:9,wei:18},co={ether:-9,wei:9}}));function uo(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 fo=o((()=>{}));function po(e,t=`wei`){return uo(e,so[t])}var mo=o((()=>{lo(),fo()}));function ho(e,t=`wei`){return uo(e,co[t])}var go=o((()=>{lo(),fo()}));function _o(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function vo(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+=_o(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=_o(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var yo,bo,xo=o((()=>{O(),yo=class extends D{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},bo=class extends D{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function So(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 Co,wo,To,Eo,Do,Oo,ko=o((()=>{mo(),go(),O(),Co=class extends D{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},wo=class extends D{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,So(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`})}},To=class extends D{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}},Eo=class extends D{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}},Do=class extends D{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Oo=class extends D{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=So({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${po(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${ho(o)} gwei`,maxFeePerGas:s!==void 0&&`${ho(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${ho(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}}})),Ao,jo,Mo=o((()=>{Ao=e=>e,jo=e=>e})),No,Po,Fo,Io,Lo,Ro,zo=o((()=>{ba(),ka(),no(),Wt(),oo(),va(),mo(),go(),Sn(),O(),xo(),ko(),Mo(),No=class extends D{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=So({from:(t?ya(t):void 0)?.address,to:u,value:d!==void 0&&`${po(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${ho(o)} gwei`,maxFeePerGas:s!==void 0&&`${ho(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${ho(c)} gwei`,nonce:l});f&&(p+=`\\n${vo(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}},Po=class extends D{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=ha({abi:t,args:n,name:a}),c=s?ao({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?Vt(s,{includeName:!0}):void 0,u=So({address:r&&Ao(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}},Fo=class extends D{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=to({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=Ea[e]}else{let e=n?Vt(n,{includeName:!0}):void 0,t=n&&a?ao({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 cn&&(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}},Io=class extends D{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})}},Lo=class extends D{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`})}},Ro=class extends D{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}}})),Bo,Vo,Ho,Uo=o((()=>{io(),O(),Mo(),Bo=class extends D{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: ${jo(a)}`,e&&`Request body: ${ro(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}},Vo=class extends D{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${jo(n)}`,`Request body: ${ro(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}},Ho=class extends D{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${jo(t)}`,`Request body: ${ro(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),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,bs=o((()=>{O(),Uo(),Wo=-1,Go=class extends D{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 Vo?e.code:t??Wo}},Ko=class extends Go{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},qo=class e extends Go{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(qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Jo=class e extends Go{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(Jo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Yo=class e extends Go{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(Yo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Xo=class e extends Go{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(Xo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Zo=class e extends Go{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(Zo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Qo=class e extends Go{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(Qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),$o=class e extends Go{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($o,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),es=class e extends Go{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(es,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),ts=class e extends Go{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(ts,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),ns=class e extends Go{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(ns,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),rs=class e extends Go{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(rs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),is=class e extends Go{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(is,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),as=class e extends Ko{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(as,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),os=class e extends Ko{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(os,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),ss=class e extends Ko{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(ss,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),cs=class e extends Ko{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(cs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),ls=class e extends Ko{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(ls,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),us=class e extends Ko{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(us,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),ds=class e extends Ko{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(ds,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),fs=class e extends Ko{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(fs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),ps=class e extends Ko{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(ps,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),ms=class e extends Ko{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(ms,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),hs=class e extends Ko{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(hs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),gs=class e extends Ko{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(gs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),_s=class e extends Ko{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(_s,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),vs=class e extends Ko{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(vs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),ys=class extends Go{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));Sn(),O(),zo(),Uo(),bs();function xs(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof Ro?e:e instanceof D?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Po(e instanceof tn?new Io({functionName:a,cause:e}):[3,Zo.code].includes(c)&&(l||u||d||f)||c===Qo.code&&u===`execution reverted`&&l?new Fo({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof Vo?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}Ii(),_i();function Ss(e){return Ni(`0x${gi(`0x${e.substring(4)}`).substring(26)}`)}function Cs(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 ws(e,t,n){return e&t^~e&n}function Ts(e,t,n){return e&t^e&n^t&n}var Es,Ds,Os,ks,As=o((()=>{Yr(),Es=class extends Jr{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=Ir(this.buffer)}update(e){Mr(this),e=Vr(e),Ar(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=Ir(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){Mr(this),Nr(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,Fr(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;Cs(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=Ir(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()}},Ds=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Os=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),ks=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])})),js,Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs,Us,Ws=o((()=>{As(),Tr(),Yr(),js=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]),Ms=new Uint32Array(64),Ns=class extends Es{constructor(e=32){super(64,e,8,!1),this.A=Ds[0]|0,this.B=Ds[1]|0,this.C=Ds[2]|0,this.D=Ds[3]|0,this.E=Ds[4]|0,this.F=Ds[5]|0,this.G=Ds[6]|0,this.H=Ds[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)Ms[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=Ms[e-15],n=Ms[e-2],r=Lr(t,7)^Lr(t,18)^t>>>3;Ms[e]=(Lr(n,17)^Lr(n,19)^n>>>10)+Ms[e-7]+r+Ms[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=Lr(o,6)^Lr(o,11)^Lr(o,25),u=l+t+ws(o,s,c)+js[e]+Ms[e]|0,d=(Lr(n,2)^Lr(n,13)^Lr(n,22))+Ts(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(){Fr(Ms)}destroy(){this.set(0,0,0,0,0,0,0,0),Fr(this.buffer)}},Ps=ar(`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))),Fs=Ps[0],Is=Ps[1],Ls=new Uint32Array(80),Rs=new Uint32Array(80),zs=class extends Es{constructor(e=64){super(128,e,16,!1),this.Ah=ks[0]|0,this.Al=ks[1]|0,this.Bh=ks[2]|0,this.Bl=ks[3]|0,this.Ch=ks[4]|0,this.Cl=ks[5]|0,this.Dh=ks[6]|0,this.Dl=ks[7]|0,this.Eh=ks[8]|0,this.El=ks[9]|0,this.Fh=ks[10]|0,this.Fl=ks[11]|0,this.Gh=ks[12]|0,this.Gl=ks[13]|0,this.Hh=ks[14]|0,this.Hl=ks[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)Ls[n]=e.getUint32(t),Rs[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Ls[e-15]|0,n=Rs[e-15]|0,r=dr(t,n,1)^dr(t,n,8)^lr(t,n,7),i=fr(t,n,1)^fr(t,n,8)^ur(t,n,7),a=Ls[e-2]|0,o=Rs[e-2]|0,s=dr(a,o,19)^pr(a,o,61)^lr(a,o,6),c=fr(a,o,19)^mr(a,o,61)^ur(a,o,6),l=xr(i,c,Rs[e-7],Rs[e-16]);Ls[e]=Sr(l,r,s,Ls[e-7],Ls[e-16])|0,Rs[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=dr(u,d,14)^dr(u,d,18)^pr(u,d,41),v=fr(u,d,14)^fr(u,d,18)^mr(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Cr(_,v,b,Is[e],Rs[e]),S=wr(x,g,t,y,Fs[e],Ls[e]),ee=x|0,te=dr(n,r,28)^pr(n,r,34)^pr(n,r,39),C=fr(n,r,28)^mr(n,r,34)^mr(n,r,39),w=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}=or(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=yr(ee,C,ne);n=br(re,S,te,w),r=re|0}({h:n,l:r}=or(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=or(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=or(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=or(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=or(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=or(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=or(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=or(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(){Fr(Ls,Rs)}destroy(){Fr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Bs=class extends zs{constructor(){super(48),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}},Vs=Ur(()=>new Ns),Hs=Ur(()=>new zs),Us=Ur(()=>new Bs)})),Gs,Ks,qs=o((()=>{Yr(),Gs=class extends Jr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,jr(e);let n=Vr(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),Fr(i)}update(e){return Mr(this),this.iHash.update(e),this}digestInto(e){Mr(this),Ar(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()}},Ks=(e,t,n)=>new Gs(e,t).update(n).digest(),Ks.create=(e,t)=>new Gs(e,t)}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Js(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Ys(e){if(!Js(e))throw Error(`Uint8Array expected`)}function Xs(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Zs(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Qs(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?gc:BigInt(`0x`+e)}function $s(e){if(Ys(e),vc)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=yc[e[n]];return t}function ec(e){if(e>=bc._0&&e<=bc._9)return e-bc._0;if(e>=bc.A&&e<=bc.F)return e-(bc.A-10);if(e>=bc.a&&e<=bc.f)return e-(bc.a-10)}function tc(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(vc)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=ec(e.charCodeAt(i)),a=ec(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 nc(e){return Qs($s(e))}function rc(e){return Ys(e),Qs($s(Uint8Array.from(e).reverse()))}function ic(e,t){return tc(e.toString(16).padStart(t*2,`0`))}function ac(e,t){return ic(e,t).reverse()}function oc(e,t,n){let r;if(typeof t==`string`)try{r=tc(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Js(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 sc(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Ys(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 cc(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 lc(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function uc(e,t,n){return xc(e)&&xc(t)&&xc(n)&&t<=e&&e<n}function dc(e,t,n,r){if(!uc(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function fc(e){let t;for(t=0;e>gc;e>>=_c,t+=1);return t}function pc(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=Cc(e),i=Cc(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=Cc(0))=>{i=s(wc([0]),e),r=s(),e.length!==0&&(i=s(wc([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 sc(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function mc(e,t,n={}){let r=(t,n,r)=>{let i=Tc[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 hc(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 gc,_c,vc,yc,bc,xc,Sc,Cc,wc,Tc,Ec=o((()=>{gc=BigInt(0),_c=BigInt(1),vc=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,yc=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),bc={_0:48,_9:57,A:65,F:70,a:97,f:102},xc=e=>typeof e==`bigint`&&gc<=e,Sc=e=>(_c<<BigInt(e))-_c,Cc=e=>new Uint8Array(e),wc=e=>Uint8Array.from(e),Tc={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`||Js(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)}}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Dc(e,t){let n=e%t;return n>=Uc?n:t+n}function Oc(e,t,n){let r=e;for(;t-- >Uc;)r*=r,r%=n;return r}function kc(e,t){if(e===Uc)throw Error(`invert: expected non-zero number`);if(t<=Uc)throw Error(`invert: expected positive modulus, got `+t);let n=Dc(e,t),r=t,i=Uc,a=Wc,o=Wc,s=Uc;for(;n!==Uc;){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!==Wc)throw Error(`invert: does not exist`);return Dc(i,t)}function Ac(e,t){let n=(e.ORDER+Wc)/qc,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function jc(e,t){let n=(e.ORDER-Jc)/Yc,r=e.mul(t,Gc),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Gc),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 Mc(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Wc,n=0;for(;t%Gc===Uc;)t/=Gc,n++;let r=Gc,i=zc(e);for(;Lc(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return Ac;let a=i.pow(r,t),o=(t+Wc)/Gc;return function(e,r){if(e.is0(r))return r;if(Lc(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=Wc<<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 Nc(e){return e%qc===Kc?Ac:e%Yc===Jc?jc:Mc(e)}function Pc(e){return mc(e,Xc.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Fc(e,t,n){if(n<Uc)throw Error(`invalid exponent, negatives unsupported`);if(n===Uc)return e.ONE;if(n===Wc)return t;let r=e.ONE,i=t;for(;n>Uc;)n&Wc&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Wc;return r}function Ic(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 Lc(e,t){let n=(e.ORDER-Wc)/Gc,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 Rc(e,t){t!==void 0&&kr(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function zc(e,t,n=!1,r={}){if(e<=Uc)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Rc(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:Sc(i),ZERO:Uc,ONE:Wc,create:t=>Dc(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Uc<=t&&t<e},is0:e=>e===Uc,isOdd:e=>(e&Wc)===Wc,neg:t=>Dc(-t,e),eql:(e,t)=>e===t,sqr:t=>Dc(t*t,e),add:(t,n)=>Dc(t+n,e),sub:(t,n)=>Dc(t-n,e),mul:(t,n)=>Dc(t*n,e),pow:(e,t)=>Fc(s,e,t),div:(t,n)=>Dc(t*kc(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>kc(t,e),sqrt:r.sqrt||(t=>(o||=Nc(e),o(s,t))),toBytes:e=>n?ac(e,a):ic(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?rc(e):nc(e)},invertBatch:e=>Ic(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Bc(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function Vc(e){let t=Bc(e);return t+Math.ceil(t/2)}function Hc(e,t,n=!1){let r=e.length,i=Bc(t),a=Vc(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Dc(n?rc(e):nc(e),t-Wc)+Wc;return n?ac(o,i):ic(o,i)}var Uc,Wc,Gc,Kc,qc,Jc,Yc,Xc,Zc=o((()=>{Yr(),Ec(),Uc=BigInt(0),Wc=BigInt(1),Gc=BigInt(2),Kc=BigInt(3),qc=BigInt(4),Jc=BigInt(5),Yc=BigInt(8),Xc=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Qc(e,t){let n=t.negate();return e?n:t}function $c(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function el(e,t){$c(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:Sc(e),maxNumber:i,shiftBy:BigInt(e)}}function tl(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+=ll);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 nl(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 rl(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 il(e){return dl.get(e)||1}function al(e,t){return{constTimeNegate:Qc,hasPrecomputes(e){return il(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>cl;)n&ll&&(r=r.add(i)),i=i.double(),n>>=ll;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=el(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=el(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=tl(i,e,s);i=t,c?o=o.add(Qc(u,r[d])):a=a.add(Qc(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=el(n,t);for(let e=0;e<o.windows&&i!==cl;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=tl(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=ul.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&ul.set(t,n(r))),r},wNAFCached(e,t,n){let r=il(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=il(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){$c(n,t),dl.set(e,n),ul.delete(e)}}}function ol(e,t,n,r){nl(n,e),rl(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=fc(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=Sc(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 sl(e){return Pc(e.Fp),mc(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Rc(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var cl,ll,ul,dl,fl=o((()=>{Zc(),Ec(),cl=BigInt(0),ll=BigInt(1),ul=new WeakMap,dl=new WeakMap}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction pl(e){e.lowS!==void 0&&Xs(`lowS`,e.lowS),e.prehash!==void 0&&Xs(`prehash`,e.prehash)}function ml(e){let t=sl(e);mc(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 hl(e,t){return $s(ic(e,t))}function gl(e){let t=ml(e),{Fp:n}=t,r=zc(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return sc(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,Tl),El),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 uc(e,M,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Js(e)&&(e=$s(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:nc(oc(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Dc(o,a)),dc(`private key`,o,M,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=hc((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=hc(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=Ic(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(oc(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return ol(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,Tl),{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,Tl),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;dc(`scalar`,e,Cl,i);let a=h.ZERO;if(e===Cl)return a;if(this.is0()||e===M)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>Cl||l>Cl;)s&M&&(u=u.add(f)),l&M&&(d=d.add(f)),f=f.double(),s>>=M,l>>=M;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;dc(`scalar`,e,M,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===Cl||t===M||!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===M)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===M?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Xs(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Xs(`isCompressed`,e),$s(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=al(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function _l(e){let t=sl(e);return mc(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function vl(e){let t=_l(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Dc(e,r)}function l(e){return kc(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=gl({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=sc;return Xs(`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=nc(i);if(!uc(e,M,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&M)===M;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>>M}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>nc(e.slice(t,n));class _{constructor(e,t,n){dc(`r`,e,M,r),dc(`s`,t,M,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=oc(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=Sl.toSig(oc(`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(oc(`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+hl(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 tc(this.toDERHex())}toDERHex(){return Sl.hexFromSig(this)}toCompactRawBytes(){return tc(this.toCompactHex())}toCompactHex(){let e=i;return hl(this.r,e)+hl(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=Vc(t.n);return Hc(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=oc(`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=nc(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},te=Sc(a);function C(e){return dc(`num < 2^`+a,e,Cl,te),ic(e,i)}function w(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=oc(`msgHash`,e),pl(i),f&&(e=oc(`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(oc(`extraEntropy`,e))}let x=sc(...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===Cl)return;let a=c(n*c(te+i*y));if(a===Cl)return;let o=(r.x===i?0:2)|Number(r.y&M),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:w}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=w(e,n,r),o=t;return pc(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=oc(`msgHash`,n),r=oc(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(pl(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`||Js(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 Sl.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:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function yl(e,t){let n=e.ORDER,r=Cl;for(let e=n-M;e%wl===Cl;e/=wl)r+=M;let i=r,a=wl<<i-M-M,o=a*wl,s=(n-M)/o,c=(s-M)/wl,l=o-M,u=a,d=e.pow(t,s),f=e.pow(t,(s+M)/wl),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>M;t--){let n=t-wl;n=wl<<n-M;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%El===Tl){let n=(e.ORDER-Tl)/El,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 bl(e,t){if(Pc(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=yl(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=Ic(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var xl,Sl,Cl,M,wl,Tl,El,Dl=o((()=>{fl(),Zc(),Ec(),xl=class extends Error{constructor(e=``){super(e)}},Sl={Err:xl,_tlv:{encode:(e,t)=>{let{Err:n}=Sl;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=Zs(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Zs(i.length/2|128):``;return Zs(e)+a+i+t},decode(e,t){let{Err:n}=Sl,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}=Sl;if(e<Cl)throw new t(`integer: negative integers are not allowed`);let n=Zs(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}=Sl;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 nc(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=Sl,i=oc(`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}=Sl,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},Cl=BigInt(0),M=BigInt(1),wl=BigInt(2),Tl=BigInt(3),El=BigInt(4)}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Ol(e){return{hash:e,hmac:(t,...n)=>Ks(e,t,Hr(...n)),randomBytes:Gr}}function kl(e,t){let n=t=>vl({...e,...Ol(t)});return{...n(t),create:n}}var Al=o((()=>{qs(),Yr(),Dl()}));function jl(e,t){if(Nl(e),Nl(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 Ml(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 Nl(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Pl(e,t,n,r){Ys(e),Ys(t),Nl(n),t.length>255&&(t=r(sc(lc(`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=sc(t,jl(t.length,1)),c=jl(0,a),l=jl(n,2),u=Array(o),d=r(sc(c,e,l,jl(0,1),s));u[0]=r(sc(d,jl(1,1),s));for(let e=1;e<=o;e++)u[e]=r(sc(Ml(d,u[e-1]),jl(e+1,1),s));return sc(...u).slice(0,n)}function Fl(e,t,n,r,i){if(Ys(e),Ys(t),Nl(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(lc(`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(jl(n,2)).update(t).update(jl(t.length,1)).digest()}function Il(e,t,n){mc(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;Ys(e),Nl(t);let l=typeof c==`string`?lc(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Pl(e,l,f,o);else if(s===`xof`)p=Fl(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]=Dc(zl(p.subarray(i,i+d)),r)}m[e]=t}return m}function Ll(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]=Ic(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function Rl(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=Il(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(Il(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 zl,Bl=o((()=>{Zc(),Ec(),zl=nc})),Vl=c({encodeToCurve:()=>_u,hashToCurve:()=>gu,schnorr:()=>fu,secp256k1:()=>ru,secp256k1_hasher:()=>hu});\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Hl(e){let t=Xl,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=Oc(Oc(Oc(u,n,t)*u%t,n,t)*u%t,eu,t)*l%t,f=Oc(d,i,t)*d%t,p=Oc(f,a,t)*f%t,m=Oc(p,s,t)*p%t,h=Oc(Oc(Oc(Oc(Oc(Oc(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,eu,t);if(!nu.eql(nu.sqr(h),e))throw Error(`Cannot find square root`);return h}function Ul(e,...t){let n=iu[e];if(n===void 0){let t=Vs(Uint8Array.from(e,e=>e.charCodeAt(0)));n=sc(t,t),iu[e]=n}return Vs(sc(n,...t))}function Wl(e){let t=ru.utils.normPrivateKeyToScalar(e),n=lu.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:cu(-t),bytes:au(n)}}function Gl(e){dc(`x`,e,$l,Xl);let t=Hl(su(su(e*e)*e+BigInt(7)));t%eu!==Ql&&(t=su(-t));let n=new lu(e,t,$l);return n.assertValidity(),n}function Kl(...e){return cu(du(Ul(`BIP0340/challenge`,...e)))}function ql(e){return Wl(e).bytes}function Jl(e,t,n=Gr(32)){let r=oc(`message`,e),{bytes:i,scalar:a}=Wl(t),o=cu(du(Ul(`BIP0340/nonce`,ou(a^du(Ul(`BIP0340/aux`,oc(`auxRand`,n,32)))),i,r)));if(o===Ql)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Wl(o),l=Kl(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(ou(cu(c+l*a)),32),!Yl(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Yl(e,t,n){let r=oc(`signature`,e,64),i=oc(`message`,t),a=oc(`publicKey`,n,32);try{let e=Gl(du(a)),t=du(r.subarray(0,32));if(!uc(t,$l,Xl))return!1;let n=du(r.subarray(32,64));if(!uc(n,$l,Zl))return!1;let o=uu(e,n,cu(-Kl(ou(t),au(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Xl,Zl,Ql,$l,eu,tu,nu,ru,iu,au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u,vu=o((()=>{Ws(),Yr(),Al(),Bl(),Zc(),Ec(),Dl(),Xl=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Zl=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Ql=BigInt(0),$l=BigInt(1),eu=BigInt(2),tu=(e,t)=>(e+t/eu)/t,nu=zc(Xl,void 0,void 0,{sqrt:Hl}),ru=kl({a:Ql,b:BigInt(7),Fp:nu,n:Zl,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Zl,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-$l*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=tu(a*e,t),c=tu(-r*e,t),l=Dc(e-s*n-c*i,t),u=Dc(-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}}}},Vs),iu={},au=e=>e.toRawBytes(!0).slice(1),ou=e=>ic(e,32),su=e=>Dc(e,Xl),cu=e=>Dc(e,Zl),lu=ru.ProjectivePoint,uu=(e,t,n)=>lu.BASE.multiplyAndAddUnsafe(e,t,n),du=nc,fu={getPublicKey:ql,sign:Jl,verify:Yl,utils:{randomPrivateKey:ru.utils.randomPrivateKey,lift_x:Gl,pointToBytes:au,numberToBytesBE:ic,bytesToNumberBE:nc,taggedHash:Ul,mod:Dc}},pu=Ll(nu,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),mu=bl(nu,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:nu.create(BigInt(`-11`))}),hu=Rl(ru.ProjectivePoint,e=>{let{x:t,y:n}=mu(nu.create(e[0]));return pu(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:nu.ORDER,m:1,k:128,expand:`xmd`,hash:Vs}),gu=hu.hashToCurve,_u=hu.encodeToCurve}));Gt(),qt(),Hn(),j();async function yu({hash:e,signature:t}){let n=E(e)?e:Un(e),{secp256k1:r}=await Promise.resolve().then(()=>(vu(),Vl));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=bu(Number(a??i));return new r.Signature(k(e),k(n)).addRecoveryBit(o)}let e=E(t)?t:Un(t);if(Kt(e)!==65)throw Error(`invalid signature length`);let n=bu(Vn(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function bu(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 xu({hash:e,signature:t}){return Ss(await yu({hash:e,signature:t}))}O(),Ia(),rr(),j();function Su(e,t=`hex`){let n=Cu(e),r=Pa(new Uint8Array(n.length));return n.encode(r),t===`hex`?Gn(r.bytes):r.bytes}function Cu(e){return Array.isArray(e)?wu(e.map(e=>Cu(e))):Tu(e)}function wu(e){let t=e.reduce((e,t)=>e+t.length,0),n=Eu(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 Tu(e){let t=typeof e==`string`?Qn(e):e,n=Eu(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 Eu(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 D(`Length is too large.`)}Wi(),rr(),j(),_i();function Du(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=gi(Ui([`0x05`,Su([t?A(t):`0x`,i,n?A(n):`0x`])]));return r===`bytes`?Qn(a):a}async function Ou(e){let{authorization:t,signature:n}=e;return xu({hash:Du(t),signature:n??t})}mo(),go(),O(),ko();var ku=class extends D{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=So({from:t?.address,to:u,value:d!==void 0&&`${po(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${ho(o)} gwei`,maxFeePerGas:s!==void 0&&`${ho(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${ho(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}},Au,ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu,Bu,Vu,Hu=o((()=>{go(),O(),Au=class extends D{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(Au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Au,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),ju=class extends D{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${ho(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(ju,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),Mu=class extends D{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${ho(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(Mu,`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/}),Nu=class extends D{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(Nu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),Pu=class extends D{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(Pu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),Fu=class extends D{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(Fu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),Iu=class extends D{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(Iu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),Lu=class extends D{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(Lu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),Ru=class extends D{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(Ru,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),zu=class extends D{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(zu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),Bu=class extends D{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${ho(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${ho(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(Bu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),Vu=class extends D{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function Uu(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof D?e.walk(e=>e?.code===Au.code):e;return r instanceof D?new Au({cause:e,message:r.details}):Au.nodeMessage.test(n)?new Au({cause:e,message:e.details}):ju.nodeMessage.test(n)?new ju({cause:e,maxFeePerGas:t?.maxFeePerGas}):Mu.nodeMessage.test(n)?new Mu({cause:e,maxFeePerGas:t?.maxFeePerGas}):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,nonce:t?.nonce}):Iu.nodeMessage.test(n)?new Iu({cause:e}):Lu.nodeMessage.test(n)?new Lu({cause:e,gas:t?.gas}):Ru.nodeMessage.test(n)?new Ru({cause:e,gas:t?.gas}):zu.nodeMessage.test(n)?new zu({cause:e}):Bu.nodeMessage.test(n)?new Bu({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new Vu({cause:e})}var Wu=o((()=>{O(),Hu()}));Hu(),Wu();function Gu(e,{docsPath:t,...n}){return new ku((()=>{let t=Uu(e,n);return t instanceof Vu?e:t})(),{docsPath:t,...n})}function Ku(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 qu=o((()=>{}));function Ju(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 Yu=o((()=>{}));function Xu(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=Zu(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=>Gn(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=A(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=A(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=A(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=A(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=A(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=A(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=Qu[e.type]),e.value!==void 0&&(n.value=A(e.value)),n}function Zu(e){return e.map(e=>({address:e.address,r:e.r?A(BigInt(e.r)):e.r,s:e.s?A(BigInt(e.s)):e.s,chainId:A(e.chainId),nonce:A(e.nonce),...e.yParity===void 0?{}:{yParity:A(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:A(e.v)}:{}}))}var Qu,$u,ed=o((()=>{j(),Yu(),Qu={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},$u=Ju(`transactionRequest`,Xu)}));function td(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new Tn({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new Tn({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function nd(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=A(t)),n!==void 0&&(o.nonce=A(n)),r!==void 0&&(o.state=td(r)),i!==void 0){if(o.state)throw new bo;o.stateDiff=td(i)}return o}function rd(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!Li(n,{strict:!1}))throw new ki({address:n});if(t[n])throw new yo({address:n});t[n]=nd(r)}return t}var id=o((()=>{Ai(),En(),xo(),Bi(),j()})),ad,od=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)),ad=2n**256n-1n}));function sd(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?ya(t):void 0;if(a&&!Li(a.address))throw new ki({address:a.address});if(i&&!Li(i))throw new ki({address:i});if(n&&n>ad)throw new ju({maxFeePerGas:n});if(r&&n&&r>n)throw new Bu({maxFeePerGas:n,maxPriorityFeePerGas:r})}var cd=o((()=>{ba(),od(),Ai(),Hu(),Bi()}));go(),O();var ld=class extends D{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},ud=class extends D{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},dd=class extends D{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${ho(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};O();var fd=class extends D{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`})}};Hn(),Yu();let pd={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function md(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Vn(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?Vn(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?pd[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=gd(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 hd=Ju(`transaction`,md);function gd(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 _d(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:md(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}}j();async function vd(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:A(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 fd({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||_d)(s,`getBlock`)}async function yd(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}Hn();async function bd(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 T(e,vd,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?k(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):T(e,vd,`getBlock`)({}),T(e,yd,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new ud;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function xd(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 ld;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await T(e,vd,`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 ud;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await bd(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 T(e,yd,`getGasPrice`)({}))}}Hn(),j();async function Sd(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return Vn(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?A(r):n]},{dedupe:!!r}))}rr(),j();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=>Qn(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Gn(e))}rr(),j();function wd(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=>Qn(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Qn(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=>Gn(e))}Ws();let Td=Vs;Gt(),rr(),j();function Ed(e,t){let n=t||`hex`,r=Td(E(e,{strict:!1})?Yn(e):e);return n===`bytes`?r:Un(r)}j();function Dd(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Ed(t,`bytes`);return i.set([n],0),r===`bytes`?i:Gn(i)}function Od(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Dd({commitment:e,to:r,version:n}));return i}let kd=4096,Ad=32*kd;Ad*6-1-1*kd*6,O();var jd=class extends D{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Md=class extends D{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},Nd=class extends D{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Pd=class extends D{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};Ia(),qt(),rr(),j();function Fd(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Qn(e.data):e.data,r=Kt(n);if(!r)throw new Md;if(r>761855)throw new jd({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=Pa(new Uint8Array(Ad)),t=0;for(;t<kd;){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=>Gn(e.bytes))}function Id(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Fd({data:t,to:r}),a=e.commitments??Cd({blobs:i,kzg:n,to:r}),o=e.proofs??wd({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}ko();function Ld(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 wo({transaction:e})}Hu(),ko(),Wu();function Rd(e,{docsPath:t,...n}){return new Oo((()=>{let t=Uu(e,n);return t instanceof Vu?e:t})(),{docsPath:t,...n})}Hn();async function zd(e){return Vn(await e.request({method:`eth_chainId`},{dedupe:!0}))}ba(),qu(),ed(),cd();async function Bd(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=ya(n),r=a?a.id:await T(e,zd,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();sd(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Xu)({...Ku(y,{format:x}),account:n?ya(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||md)(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 T(e,vd,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new ld;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 Rd(n,{...t,chain:e.chain})}}ba(),Mi(),cd();let Vd=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Hd=new Map,Ud=new ji(128);async function Wd(e,t){let n=t;n.account??=e.account,n.parameters??=Vd;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 T(e,zd,`getChainId`)({}),c):n.chainId)}let u=r&&ya(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||Ud.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 T(e,Bd,`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 Ud.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`)})&&Ud.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 T(e,vd,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await T(e,Sd,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=Cd({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Od({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Id({blobs:p,commitments:e,proofs:wd({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=Ld(n)}catch{let t=Hd.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Hd.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 xd(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new dd({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new ud;if(n.gasPrice===void 0){let{gasPrice:t}=await xd(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await T(e,Gd,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),sd(n),delete n.parameters,n}ba(),O(),j(),qu(),ed(),id(),cd();async function Gd(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?ya(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 Ou({authorization:t.authorizationList[0]}).catch(()=>{throw new D(\"`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 Wd(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?A(u):void 0)||d,ee=rd(b);sd(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Xu)({...Ku(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 Gu(n,{...t,account:i,chain:e.chain})}}function Kd(e,t){if(!Li(e,{strict:!1}))throw new ki({address:e});if(!Li(t,{strict:!1}))throw new ki({address:t});return e.toLowerCase()===t.toLowerCase()}var qd=o((()=>{Ai(),Bi()}));function Jd(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}:{}}}Sn(),Na(),qt(),Oi(),eo(),Wt();let Yd=`/docs/contract/decodeEventLog`;function Xd(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new ln({docsPath:Yd});let c=t.find(e=>e.type===`event`&&o===Di(Vt(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new un(o,{docsPath:Yd});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 _n({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=Zd({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=Ha(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 en||e instanceof ja?new gn({abiItem:c,data:n,params:g,size:Kt(n)}):e}else if(a)throw new gn({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Zd({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(Ha([e],t)||[])[0]}qd(),rr(),_i(),Oi();function Qd(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:Di(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Jd(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=Xd({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Xd({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)||!$d({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function $d(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`?Kd(t,n):e.type===`string`||e.type===`bytes`?gi(Yn(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 ef(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=ha({abi:t,args:n,name:r});if(!e)throw new dn(r,{docsPath:tf});a=e}if(a.type!==`function`)throw new dn(void 0,{docsPath:tf});if(!a.outputs)throw new fn(a.name,{docsPath:tf});let o=Ha(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var tf,nf=o((()=>{Sn(),eo(),va(),tf=`/docs/contract/decodeFunctionResult`})),rf,af=o((()=>{rf=`0.1.1`}));function of(){return rf}var sf=o((()=>{af()}));function cf(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?cf(e.cause,t):t?null:e}var N,lf=o((()=>{sf(),N=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 cf(this,e)}},Object.defineProperty(N,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${of()}`}}),N.setStaticOptions(N.defaultStaticOptions)}));function uf(e,t){if(Rf(e)>t)throw new Zf({givenSize:Rf(e),maxSize:t})}function df(e,t){if(typeof t==`number`&&t>0&&t>Rf(e)-1)throw new Qf({offset:t,position:`start`,size:Rf(e)})}function ff(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Rf(e)!==n-t)throw new Qf({offset:n,position:`end`,size:Rf(e)})}function pf(e){if(e>=gf.zero&&e<=gf.nine)return e-gf.zero;if(e>=gf.A&&e<=gf.F)return e-(gf.A-10);if(e>=gf.a&&e<=gf.f)return e-(gf.a-10)}function mf(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new $f({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 hf(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 gf,_f=o((()=>{ep(),gf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function vf(e,t){if(cp(e)>t)throw new xp({givenSize:cp(e),maxSize:t})}function yf(e,t){if(typeof t==`number`&&t>0&&t>cp(e)-1)throw new Sp({offset:t,position:`start`,size:cp(e)})}function bf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&cp(e)!==n-t)throw new Sp({offset:n,position:`end`,size:cp(e)})}function xf(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 Cp({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Sf(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 Cf=o((()=>{R()}));function wf(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=>wf(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)}:${wf(r)}`),t},[]).join(`,`)}}`}function Tf(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Df)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Ef(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Df:n,n)}var Df,Of=o((()=>{Df=`#__bigint`}));function kf(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 Xf(e)}function Af(...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 jf(e){return e instanceof Uint8Array?e:typeof e==`string`?Nf(e):Mf(e)}function Mf(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Nf(e,t={}){let{size:n}=t,r=e;n&&(vf(e,n),r=op(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=pf(i.charCodeAt(t++)),r=pf(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new N(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function Pf(e,t={}){let{size:n}=t,r=Jf.encode(e);return typeof n==`number`?(uf(r,n),If(r,n)):r}function Ff(e,t){return cc(e,t)}function If(e,t){return mf(e,{dir:`right`,size:t})}function Lf(e){return crypto.getRandomValues(new Uint8Array(e))}function Rf(e){return e.length}function zf(e,t,n,r={}){let{strict:i}=r;df(e,t);let a=e.slice(t,n);return i&&ff(a,t,n),a}function Bf(e,t={}){let{size:n}=t;return n!==void 0&&uf(e,n),up(F(e,t),t)}function Vf(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(uf(r,n),r=Wf(r)),r.length>1||r[0]>1)throw new Yf(r);return!!r[0]}function Hf(e,t={}){let{size:n}=t;return n!==void 0&&uf(e,n),fp(F(e,t),t)}function Uf(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(uf(r,n),r=Gf(r)),qf.decode(r)}function Wf(e){return hf(e,{dir:`left`})}function Gf(e){return hf(e,{dir:`right`})}function Kf(e){try{return kf(e),!0}catch{return!1}}var qf,Jf,Yf,Xf,Zf,Qf,$f,ep=o((()=>{Ec(),lf(),R(),_f(),Cf(),Of(),qf=new TextDecoder,Jf=new TextEncoder,Yf=class extends N{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`})}},Xf=class extends N{constructor(e){super(`Value \\`${typeof e==`object`?Ef(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`})}},Zf=class extends N{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`})}},Qf=class extends N{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`})}},$f=class extends N{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 tp(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new vp(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new yp(e)}function P(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function np(e){return e instanceof Uint8Array?F(e):Array.isArray(e)?F(new Uint8Array(e)):e}function rp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(vf(n,t.size),ap(n,t.size)):n}function F(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=gp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(vf(r,t.size),op(r,t.size)):r}function I(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 _p({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?ap(s,r):s}function ip(e,t={}){return F(hp.encode(e),t)}function ap(e,t){return xf(e,{dir:`left`,size:t})}function op(e,t){return xf(e,{dir:`right`,size:t})}function sp(e){return F(Lf(e))}function L(e,t,n,r={}){let{strict:i}=r;yf(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&bf(a,t,n),a}function cp(e){return Math.ceil((e.length-2)/2)}function lp(e){return Sf(e,{dir:`left`})}function up(e,t={}){let{signed:n}=t;t.size&&vf(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 dp(e,t={}){return Nf(e,t)}function fp(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:up(e,t))}function pp(e,t={}){let{size:n}=t,r=Nf(e);return n&&(uf(r,n),r=Gf(r)),new TextDecoder().decode(r)}function mp(e,t={}){let{strict:n=!1}=t;try{return tp(e,{strict:n}),!0}catch{return!1}}var hp,gp,_p,vp,yp,bp,xp,Sp,Cp,R=o((()=>{ep(),lf(),_f(),Cf(),Of(),hp=new TextEncoder,gp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),_p=class extends N{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`})}},vp=class extends N{constructor(e){super(`Value \\`${typeof e==`object`?Ef(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`})}},yp=class extends N{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`})}},bp=class extends N{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`})}},xp=class extends N{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`})}},Sp=class extends N{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`})}},Cp=class extends N{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 wp(e){return{address:e.address,amount:I(e.amount),index:I(e.index),validatorIndex:I(e.validatorIndex)}}var Tp=o((()=>{R()}));function Ep(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:I(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:I(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:I(e.gasLimit)},...typeof e.number==`bigint`&&{number:I(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:I(e.prevRandao)},...typeof e.time==`bigint`&&{time:I(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(wp)}}}var Dp=o((()=>{R(),Tp()})),Op,kp,Ap,jp,Mp,Np=o((()=>{Op=[{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`}],kp=[{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`}]}],Ap=[{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`}],[...Ap],[...Ap],jp=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Mp=[{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`}]})),Pp=o((()=>{})),Fp,Ip,Lp,Rp,zp=o((()=>{Fp=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Ip=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Lp=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Rp=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Bp,Vp,Hp,Up,Wp,Gp=o((()=>{O(),Bp=class extends D{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`})}},Vp=class extends D{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`})}},Hp=class extends D{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`})}},Up=class extends D{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Wp=class extends D{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Kp(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 Qt({docsPath:qp});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new $t({docsPath:qp});return Ui([r,ea(i.inputs,n)])}var qp,Jp=o((()=>{Sn(),Wi(),fa(),qp=`/docs/contract/encodeDeployData`}));function Yp({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Bp({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Bp({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Xp=o((()=>{Gp()}));function Zp(e,{docsPath:t,...n}){return new No((()=>{let t=Uu(e,n);return t instanceof Vu?e:t})(),{docsPath:t,...n})}var Qp=o((()=>{zo(),Hu(),Wu()}));function $p(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var em=o((()=>{}));function tm({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=()=>nm.delete(t),s=()=>c().map(({args:e})=>e),c=()=>nm.get(t)||[],l=e=>nm.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=$p();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 nm,rm=o((()=>{em(),nm=new Map})),im,am,om,sm=o((()=>{io(),O(),Mo(),im=class extends D{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=>` ${jo(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},am=class extends D{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${jo(t)}`,`Response: ${ro(e)}`],name:`OffchainLookupResponseMalformedError`})}},om=class extends D{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 cm(e){let{abi:t,data:n}=e,r=Gi(n,0,4),i=t.find(e=>e.type===`function`&&r===pa(Vt(e)));if(!i)throw new pn(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?Ha(i.inputs,Gi(n,4)):void 0}}var lm=o((()=>{Sn(),Xi(),ma(),eo(),Wt()}));function um(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=ha({abi:t,args:r,name:n});if(!e)throw new sn(n,{docsPath:dm});i=e}if(i.type!==`error`)throw new sn(void 0,{docsPath:dm});let a=pa(Vt(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new on(i.name,{docsPath:dm});o=ea(i.inputs,r)}return Ui([a,o])}var dm,fm=o((()=>{Sn(),Wi(),ma(),fa(),Wt(),va(),dm=`/docs/contract/encodeErrorResult`}));function pm(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=ha({abi:t,name:n});if(!e)throw new dn(n,{docsPath:mm});i=e}if(i.type!==`function`)throw new dn(void 0,{docsPath:mm});if(!i.outputs)throw new fn(i.name,{docsPath:mm});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new bn(r)})();return ea(i.outputs,a)}var mm,hm=o((()=>{Sn(),fa(),va(),mm=`/docs/contract/encodeFunctionResult`}));async function gm(e){let{data:t,ccipRequest:n}=e,{args:[r]}=cm({abi:kp,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await gm({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=_m(e)}})),pm({abi:kp,functionName:`query`,result:[i,a]})}function _m(e){return e.name===`HttpRequestError`&&e.status?um({abi:kp,errorName:`HttpError`,args:[e.status,e.shortMessage]}):um({abi:[Da],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var vm=o((()=>{Np(),ka(),lm(),fm(),hm()})),ym=c({ccipRequest:()=>xm,offchainLookup:()=>bm,offchainLookupAbiItem:()=>Cm,offchainLookupSignature:()=>Sm});async function bm(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=to({data:r,abi:[Cm]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:xm;try{if(!Kd(i,o))throw new om({sender:o,to:i});let{data:r}=await Tm(e,{blockNumber:t,blockTag:n,data:Vi([l,ea([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await gm({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new im({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function xm({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 Bo({body:s,details:i?.error?ro(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!E(i)){r=new am({result:i,url:a});continue}return i}catch(e){r=new Bo({body:s,details:e.message,url:a})}}throw r}var Sm,Cm,wm=o((()=>{jm(),sm(),Uo(),no(),fa(),qd(),Wi(),Gt(),vm(),io(),Sm=`0x556f1830`,Cm={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 Tm(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?ya(n):void 0;if(u&&(f||p))throw new D(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new D(\"Cannot provide both `code` & `to` as parameters.\");let C=u&&d,w=f&&p&&b&&d,ne=C||w,re=C?Om({code:u,data:d}):w?km({data:d,factory:f,factoryData:p,to:b}):d;try{sd(t);let n=(typeof a==`bigint`?A(a):void 0)||o,u=l?Ep(l):void 0,d=rd(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Xu)({...Ku(ee,{format:f}),accessList:s,account:te,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&&Em({request:p})&&!d&&!u)try{return await Dm(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Up)&&!(e instanceof Bp))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=Am(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(wm(),ym));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 Lo({factory:f}):Zp(n,{...t,account:te,chain:e.chain})}}function Em({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 Dm(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 Yp({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Up})(),u=(typeof a==`bigint`?A(a):void 0)||o,{schedule:d}=tm({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=wa({abi:Op,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Om({code:Rp,data:r})}:{to:l,data:r}},u]});return ef({abi:Op,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new Ro({data:f});return f===`0x`?{data:void 0}:{data:f}}function Om(e){let{code:t,data:n}=e;return Kp({abi:Rt([`constructor(bytes, bytes)`]),bytecode:Fp,args:[t,n]})}function km(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Kp({abi:Rt([`constructor(address, bytes, address, bytes)`]),bytecode:Ip,args:[i,t,n,r]})}function Am(e){if(!(e instanceof D))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var jm=o((()=>{Bt(),Dp(),ba(),Np(),Pp(),zp(),O(),Gp(),zo(),nf(),Jp(),Ta(),Xp(),j(),Qp(),qu(),ed(),rm(),id(),cd()}));nf(),Ta(),jm();async function Mm(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=wa({abi:n,args:i,functionName:a});try{let{data:t}=await T(e,Tm,`call`)({...o,data:s,to:r});return ef({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw xs(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let Nm=new Map,Pm=new Map,Fm=0;function Im(e,t,n){let r=++Fm,i=()=>Nm.get(e)||[],a=()=>{let t=i();Nm.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Pm.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(Nm.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`&&Pm.set(e,l),o}async function Lm(e){return new Promise(t=>setTimeout(t,e))}function Rm(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Lm(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Lm(r),s())};s()})(),a}O();var zm=class extends D{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`})}},Bm=class extends D{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Gp();function Vm({chain:e,currentChainId:t}){if(!e)throw new Hp;if(t!==e.id)throw new Vp({chain:e,currentChainId:t})}async function Hm(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}ba(),O(),Wi(),qu(),ed(),Mi(),cd();let Um=new ji(128);async function Wm(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 zm({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?ya(n):null;try{sd(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Ou({authorization:o[0]}).catch(()=>{throw new D(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await T(e,zd,`getChainId`)({}),r&&Vm({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Xu)({...Ku(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?Vi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Um.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=>(Um.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Um.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await T(e,Wd,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?Vi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...Vd,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await T(e,Hm,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Bm({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Bm({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Bm?e:Rd(e,{...t,account:y,chain:t.chain||void 0})}}ba(),Ta();async function Gm(e,t){return Gm.internal(e,Wm,`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 zm({docsPath:`/docs/contract/writeContract`});let u=a?ya(a):null,d=wa({abi:i,args:s,functionName:c});try{return await T(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw xs(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Gm||={}),O();var Km=class extends D{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 qm(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 Lm(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()})}Hn(),Yu();let Jm={\"0x0\":`reverted`,\"0x1\":`success`};function Ym(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=>Jd(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Vn(e.transactionIndex):null,status:e.status?Jm[e.status]:null,type:e.type?pd[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Xm=Ju(`transactionReceipt`,Ym);ba(),O(),bs(),Ta(),Wi(),Hn(),j();let Zm=A(0,{size:32});async function Qm(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?ya(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?wa({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?Vi([n,t.dataSuffix]):n,to:t.to,value:t.value?A(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:A(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 ds(new D(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new _s(new D(e,{details:e}))}let t=[];for(let n of d){let i=Wm(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?k(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:Vi([...n.map(e=>e.status===`fulfilled`?e.value:Zm),A(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Rd(n,{...t,account:l,chain:t.chain})}}Xi(),Rn(),Hn();async function $m(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=Ln(Yi(t,-64,-32)),r=Yi(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>Zm.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:Vn(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?Vn(i):void 0,receipts:a?.map(e=>({...e,blockNumber:k(e.blockNumber),gasUsed:k(e.gasUsed),status:Jm[e.status]}))??[],statusCode:l,status:c,version:o}}O(),em(),io();async function eh(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=ro([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=$p(),p,m=Im(l,{resolve:d,reject:f},t=>{let s=Rm(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await qm(async()=>{let t=await T(e,$m,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Km(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 th({id:n}))},s):void 0,await u}var th=class extends D{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let nh=256,rh;function ih(e=11){if(!rh||nh+e>256*2){rh=``,nh=0;for(let e=0;e<256;e++)rh+=(256+Math.random()*256|0).toString(16).substring(1)}return rh.substring(nh,nh+++e)}ba();function ah(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?ya(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:ih(),...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(_)})}j();async function oh(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:A(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}od(),Ai(),O(),Gp(),Hu(),Bi(),qt(),Xi(),Hn();function sh(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!Li(n))throw new ki({address:n});if(t<0)throw new Wp({chainId:t})}lh(e)}function ch(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Md;for(let e of t){let t=Kt(e),n=Vn(Gi(e,0,1));if(t!==32)throw new Nd({hash:e,size:t});if(n!==1)throw new Pd({hash:e,version:n})}}lh(e)}function lh(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Wp({chainId:t});if(i&&!Li(i))throw new ki({address:i});if(r&&r>ad)throw new ju({maxFeePerGas:r});if(n&&r&&n>r)throw new Bu({maxFeePerGas:r,maxPriorityFeePerGas:n})}function uh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Wp({chainId:t});if(a&&!Li(a))throw new ki({address:a});if(n||i)throw new D(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>ad)throw new ju({maxFeePerGas:r})}function dh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!Li(a))throw new ki({address:a});if(t!==void 0&&t<=0)throw new Wp({chainId:t});if(n||i)throw new D(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>ad)throw new ju({maxFeePerGas:r})}Ai(),ko(),Bi();function fh(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 Do({storageKey:i[e]});if(!Li(r,{strict:!1}))throw new ki({address:r});t.push([r,i])}return t}ko(),Wi(),Rn(),j();function ph(e,t){let n=Ld(e);return n===`eip1559`?gh(e,t):n===`eip2930`?_h(e,t):n===`eip4844`?hh(e,t):n===`eip7702`?mh(e,t):vh(e,t)}function mh(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;sh(e);let f=fh(u),p=bh(n);return Ui([`0x04`,Su([A(r),a?A(a):`0x`,l?A(l):`0x`,c?A(c):`0x`,i?A(i):`0x`,o??`0x`,s?A(s):`0x`,d??`0x`,f,p,...yh(e,t)])])}function hh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;ch(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=>Gn(e)),n=e.kzg,r=Cd({blobs:t,kzg:n});f===void 0&&(f=Od({commitments:r})),p===void 0&&(p=Id({blobs:t,commitments:r,proofs:wd({blobs:t,commitments:r,kzg:n})}))}let m=fh(u),h=[A(n),i?A(i):`0x`,l?A(l):`0x`,c?A(c):`0x`,r?A(r):`0x`,a??`0x`,o?A(o):`0x`,d??`0x`,m,s?A(s):`0x`,f??[],...yh(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 Ui([`0x03`,Su(p?[h,g,_,v]:h)])}function gh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;lh(e);let d=fh(l);return Ui([`0x02`,Su([A(n),i?A(i):`0x`,c?A(c):`0x`,s?A(s):`0x`,r?A(r):`0x`,a??`0x`,o?A(o):`0x`,u??`0x`,d,...yh(e,t)])])}function _h(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;uh(e);let u=fh(c);return Ui([`0x01`,Su([A(n),a?A(a):`0x`,l?A(l):`0x`,r?A(r):`0x`,o??`0x`,s?A(s):`0x`,i??`0x`,u,...yh(e,t)])])}function vh(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;dh(e);let l=[a?A(a):`0x`,c?A(c):`0x`,r?A(r):`0x`,o??`0x`,s?A(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 Co({v:t.v});return e})(),r=Ln(t.r),i=Ln(t.s);l=[...l,A(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,A(n),`0x`,`0x`]);return Su(l)}function yh(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=Ln(n.r),o=Ln(n.s);return[typeof i==`number`?i?A(1):`0x`:r===0n?`0x`:r===1n?A(1):r===27n?`0x`:A(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}j();function bh(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?Un(e):`0x`,a,r?Un(r):`0x`,...yh({},i)])}return t}Ii(),qd();async function xh({address:e,authorization:t,signature:n}){return Kd(Pi(e),await Ou({authorization:t,signature:n}))}Mi();let Sh=new ji(8192);function Ch(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Sh.get(n))return Sh.get(n);let r=e().finally(()=>Sh.delete(n));return Sh.set(n,r),r}O(),Uo(),bs(),j(),io();function wh(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 ns(Error(`method not supported`),{method:l});return Ch(()=>qm(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case qo.code:throw new qo(t);case Jo.code:throw new Jo(t);case Yo.code:throw new Yo(t,{method:n.method});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);case ns.code:throw new ns(t,{method:n.method});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 _s.code:throw new _s(t);case 5e3:throw new as(t);case vs.code:throw new vs(t);default:throw e instanceof D?e:new ys(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof Bo){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})=>Th(e)}),{enabled:i,id:i?Kn(`${c}.${ro(n)}`):void 0})}}function Th(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===rs.code||e.code===Zo.code:e instanceof Bo&&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 Eh(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 Dh(){return{}}O(),In(),Ia(),rr(),j();function Oh(e,t=`hex`){return kh(Pa((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Pn(e);return Qn(e)}return e})(),{recursiveReadLimit:1/0}),t)}function kh(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Gn(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Ah(e,n,128),i=e.readBytes(r);return t===`hex`?Gn(i):i}return jh(e,Ah(e,n,192),t)}function Ah(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new D(`Invalid RLP prefix`)}function jh(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(kh(e,n));return i}Gt(),qt();function Mh(e){return E(e)&&Kt(e)===32}function Nh(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 Ph(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Fh=Ph();Uo(),io();function Ih(e,t={}){let{url:n,headers:r}=Lh(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 Nh(async({signal:e})=>{let t={...l,body:ro(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Fh.take(),...e})):{jsonrpc:`2.0`,id:i.id??Fh.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 Ho({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 Bo({body:i,details:ro(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof Bo||e instanceof Ho?e:new Bo({body:i,cause:e,url:n})}}}}function Lh(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}}}Wi(),qt(),j();function Rh(e){let t=typeof e==`string`?Kn(e):typeof e.raw==`string`?e.raw:Gn(e.raw);return Vi([Kn(`\u0019Ethereum Signed Message:\n${Kt(t)}`),t])}_i();function zh(e,t){return gi(Rh(e),t)}io(),O();var Bh=class extends D{constructor({domain:e}){super(`Invalid domain \"${ro(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Vh=class extends D{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Hh=class extends D{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};Sn(),Ai(),Bi(),qt(),j(),$i(),io();function Uh(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 ro({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Wh(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(Qi);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;A(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!Li(o))throw new ki({address:o});let c=r.match(Zi);if(c){let[e,t]=c;if(t&&Kt(o)!==Number.parseInt(t,10))throw new hn({expectedSize:Number.parseInt(t,10),givenSize:Kt(o)})}let l=i[r];l&&(Kh(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Bh({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Vh({primaryType:r,types:i})}function Gh({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 Kh(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Hh({type:e})}fa(),Wi(),j(),_i();function qh(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Gh({domain:t}),...e.types};Wh({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Jh({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Yh({data:n,primaryType:r,types:i})),gi(Vi(a))}function Jh({domain:e,types:t}){return Yh({data:e,primaryType:`EIP712Domain`,types:t})}function Yh({data:e,primaryType:t,types:n}){return gi(Xh({data:e,primaryType:t,types:n}))}function Xh({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Zh({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=eg({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return ea(r,i)}function Zh({primaryType:e,types:t}){return gi(Un(Qh({primaryType:e,types:t})))}function Qh({primaryType:e,types:t}){let n=``,r=$h({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 $h({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])$h({primaryType:e.type,types:t},n);return n}function eg({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},gi(Xh({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},gi(r)];if(n===`string`)return[{type:`bytes32`},gi(Un(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>eg({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},gi(ea(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}var tg=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 ng(e,t){return e.exec(t)?.groups}let rg=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ig=/^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)?$/,ag=/^\\(.+?\\).*?$/,og=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function sg(e){let t=e.type;if(og.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+=sg(i),r<n-1&&(t+=`, `)}let r=ng(og,e.type);return t+=`)${r?.array||``}`,sg({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function cg(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=sg(i),r!==n-1&&(t+=`, `)}return t}function lg(e){return e.type===`function`?`function ${e.name}(${cg(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${cg(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${cg(e.inputs)})`:e.type===`error`?`error ${e.name}(${cg(e.inputs)})`:e.type===`constructor`?`constructor(${cg(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let ug=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function dg(e){return ug.test(e)}function fg(e){return ng(ug,e)}let pg=new Set([`memory`,`indexed`,`storage`,`calldata`]),mg=new Set([`calldata`,`memory`,`storage`]);var hg=class extends tg{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`})}},gg=class extends tg{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`})}},_g=class extends tg{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`})}},vg=class extends tg{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},yg=class extends tg{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`})}},bg=class extends tg{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`})}},xg=class extends tg{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`})}},Sg=class extends tg{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`})}},Cg=class extends tg{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},wg=class extends tg{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`})}},Tg=class extends tg{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`})}},Eg=class extends tg{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 Dg(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 Og=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}]]),kg=/^(?<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$_]*))?$/,Ag=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,jg=/^u?int$/;function Mg(e,t){let n=Dg(e,t?.type,t?.structs);if(Og.has(n))return Og.get(n);let r=ag.test(e),i=ng(r?Ag:kg,e);if(!i)throw new vg({param:e});if(i.name&&Ig(i.name))throw new yg({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=Ng(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Mg(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(jg.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Pg(c))throw new gg({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new bg({param:e,type:t?.type,modifier:i.modifier});if(mg.has(i.modifier)&&!Lg(c,!!i.array))throw new xg({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Og.set(n,u),u}function Ng(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?Ng(o,[...t,n.trim()]):Ng(o,t,`${n}${i}`,r);case`(`:return Ng(o,t,`${n}${i}`,r+1);case`)`:return Ng(o,t,`${n}${i}`,r-1);default:return Ng(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Eg({current:n,depth:r});return t.push(n.trim()),t}function Pg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||rg.test(e)||ig.test(e)}let Fg=/^(?: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 Ig(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||rg.test(e)||ig.test(e)||Fg.test(e)}function Lg(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Rg(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!dg(n))continue;let i=fg(n);if(!i)throw new Cg({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=Mg(t,{type:`struct`});o.push(n)}if(!o.length)throw new wg({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]=Bg(a,t)}return r}let zg=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Bg(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(ag.test(i.type))r.push(i);else{let e=ng(zg,i.type);if(!e?.type)throw new Sg({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Tg({type:o});r.push({...i,type:`tuple${a??``}`,components:Bg(t[o],t,new Set([...n,o]))})}else if(Pg(o))r.push(i);else throw new hg({type:o})}}return r}function Vg(e){let t=[];if(typeof e==`string`){let n=Ng(e),r=n.length;for(let e=0;e<r;e++)t.push(Mg(n[e],{modifiers:pg}))}else{let n=Rg(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(dg(r))continue;let a=Ng(r),o=a.length;for(let e=0;e<o;e++)t.push(Mg(a[e],{modifiers:pg,structs:n}))}}if(t.length===0)throw new _g({params:e});return t}let Hg={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;qs(),hi(),ep(),R();function Ug(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=pi(jf(e));return n===`Bytes`?r:F(r)}function Wg(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=Ks(Td,jf(e),jf(t));return r===`Bytes`?i:F(i)}function Gg(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Td(jf(e));return n===`Bytes`?r:F(r)}function Kg(e){return mp(e)&&cp(e)===32}ep(),lf(),R(),Of();function qg(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 e_({prefix:r,cause:new n_});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new e_({prefix:r,cause:new t_});return}throw new $g({publicKey:e})}function Jg(e){let t=(()=>{if(mp(e))return Xg(e);if(Kf(e))return Yg(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 qg(t),t}function Yg(e){return Xg(F(e))}function Xg(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new r_({publicKey:e});return e.length===130?{prefix:4,x:BigInt(L(e,0,32)),y:BigInt(L(e,32,64))}:e.length===132?{prefix:Number(L(e,0,1)),x:BigInt(L(e,1,33)),y:BigInt(L(e,33,65))}:{prefix:Number(L(e,0,1)),x:BigInt(L(e,1,33))}}function Zg(e,t={}){return Nf(Qg(e,t))}function Qg(e,t={}){qg(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return P(a?I(n,{size:1}):`0x`,I(r,{size:32}),typeof i==`bigint`?I(i,{size:32}):`0x`)}var $g=class extends N{constructor({publicKey:e}){super(`Value \\`${Ef(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`})}},e_=class extends N{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`})}},t_=class extends N{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`})}},n_=class extends N{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},r_=class extends N{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 ${cp(np(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};ep(),lf();let i_=/^0x[a-fA-F0-9]{40}$/;function a_(e,t={}){let{strict:n=!0}=t;if(!i_.test(e))throw new d_({address:e,cause:new f_});if(n){if(e.toLowerCase()===e)return;if(o_(e)!==e)throw new d_({address:e,cause:new p_})}}function o_(e){if(Hg.has(e))return Hg.get(e);a_(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ug(Pf(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 Hg.set(e,i),i}function s_(e,t={}){let{checksum:n=!1}=t;return a_(e),n?o_(e):e}function c_(e,t={}){return s_(`0x${Ug(`0x${Qg(e).slice(4)}`).substring(26)}`,t)}function l_(e,t){return a_(e,{strict:!1}),a_(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function u_(e,t={}){let{strict:n=!0}=t??{};try{return a_(e,{strict:n}),!0}catch{return!1}}var d_=class extends N{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`})}},f_=class extends N{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`})}},p_=class extends N{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};let m_=/^(.*)\\[([0-9]*)\\]$/,h_=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,g_=/^(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 __=2n**256n-1n;ep(),lf(),R();function v_(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=I_(t.type);if(a){let[n,o]=a;return b_(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return w_(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return y_(e,{checksum:r});if(t.type===`bool`)return x_(e);if(t.type.startsWith(`bytes`))return S_(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return C_(e,t);if(t.type===`string`)return T_(e,{staticPosition:i});throw new $_(t.type)}function y_(e,t={}){let{checksum:n=!1}=t;return[(e=>n?o_(e):e)(F(zf(e.readBytes(32),-20))),32]}function b_(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Hf(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Hf(e.readBytes(32)),s=L_(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=v_(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(L_(t)){let n=a+Hf(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=v_(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]=v_(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function x_(e){return[Vf(e.readBytes(32),{size:32}),32]}function S_(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Hf(e.readBytes(32));e.setPosition(n+t);let r=Hf(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[F(i),32]}return[F(e.readBytes(Number.parseInt(i,10),32)),32]}function C_(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?Bf(i,{signed:n}):Hf(i,{signed:n}),32]}function w_(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(L_(t)){let n=i+Hf(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=v_(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]=v_(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function T_(e,{staticPosition:t}){let n=t+Hf(e.readBytes(32));e.setPosition(n);let r=Hf(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Uf(Wf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function E_({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(D_({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function D_({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=I_(r.type);if(i){let[t,a]=i;return A_(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return F_(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return k_(n,{checksum:e});if(r.type===`bool`)return M_(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=g_.exec(r.type)??[];return N_(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return j_(n,{type:r.type});if(r.type===`string`)return P_(n);throw new $_(r.type)}function O_(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=cp(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(I(t+i,{size:32})),r.push(s),i+=cp(s)):n.push(s)}return P(...n,...r)}function k_(e,t){let{checksum:n=!1}=t;return a_(e,{strict:n}),{dynamic:!1,encoded:ap(e.toLowerCase())}}function A_(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new Q_(e);if(!a&&e.length!==r)throw new Y_({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=D_({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=O_(s);if(a){let t=I(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?P(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:P(...s.map(({encoded:e})=>e))}}function j_(e,{type:t}){let[,n]=t.split(`bytes`),r=cp(e);if(!n){let t=e;return r%32!=0&&(t=op(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:P(ap(I(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new X_({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:op(e)}}function M_(e){if(typeof e!=`boolean`)throw new N(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ap(rp(e))}}function N_(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 _p({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:I(e,{size:32,signed:t})}}function P_(e){let t=ip(e),n=Math.ceil(cp(t)/32),r=[];for(let e=0;e<n;e++)r.push(op(L(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:P(op(I(cp(t),{size:32})),...r)}}function F_(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=D_({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?O_(a):P(...a.map(({encoded:e})=>e))}}function I_(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function L_(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(L_);let n=I_(e.type);return!!(n&&L_({...e,type:n[1]}))}lf();let R_={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 H_({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new V_({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new B_({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 B_({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 z_(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(R_);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var B_=class extends N{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},V_=class extends N{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`})}},H_=class extends N{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`})}};ep(),lf(),R();function U_(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?Nf(t):t,o=z_(a);if(Rf(a)===0&&e.length>0)throw new J_;if(Rf(a)&&Rf(a)<32)throw new q_({data:typeof t==`string`?t:F(t),parameters:e,size:Rf(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]=v_(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function W_(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Z_({expectedLength:e.length,givenLength:t.length});let i=O_(E_({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function G_(e,t){if(e.length!==t.length)throw new Z_({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(G_.encode(i,a))}return P(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return a_(e),ap(e.toLowerCase(),r?32:0)}if(e===`string`)return ip(n);if(e===`bytes`)return n;if(e===`bool`)return ap(rp(n),r?32:1);let i=e.match(g_);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return I(n,{size:r?32:o,signed:t===`int`})}let a=e.match(h_);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new X_({expectedSize:Number.parseInt(t,10),value:n});return op(n,r?32:0)}let o=e.match(m_);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`:P(...i)}throw new $_(e)}e.encode=t})(G_||={});function K_(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Vg(e):e}var q_=class extends N{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${cg(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},J_=class extends N{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Y_=class extends N{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`})}},X_=class extends N{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${cp(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Z_=class extends N{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`})}},Q_=class extends N{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},$_=class extends N{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};ep(),lf(),R();function ev(e){return tv(e,`Hex`)}function tv(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return nv(z_((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new bp(e);return Nf(e)}return e})(),{recursiveReadLimit:1/0}),n)}function nv(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?F(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=rv(e,n,128),i=e.readBytes(r);return t===`Hex`?F(i):i}return iv(e,rv(e,n,192),t)}function rv(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 N(`Invalid RLP prefix`)}function iv(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(nv(e,n));return i}function av(e,t){let{as:n}=t,r=sv(e),i=z_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?F(i.bytes):i.bytes}function ov(e,t={}){let{as:n=`Hex`}=t;return av(e,{as:n})}function sv(e){return Array.isArray(e)?cv(e.map(e=>sv(e))):lv(e)}function cv(e){let t=e.reduce((e,t)=>e+t.length,0),n=uv(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 lv(e){let t=typeof e==`string`?Nf(e):e,n=uv(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 uv(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new N(`Length is too large.`)}lf(),R(),Of();function dv(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Tv({signature:e});if(e.r<0n||e.r>__)throw new Ev({value:e.r});if(e.s<0n||e.s>__)throw new Dv({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Ov({value:e.yParity})}function fv(e){return pv(F(e))}function pv(e){if(e.length!==130&&e.length!==132)throw new wv({signature:e});let t=BigInt(L(e,0,32)),n=BigInt(L(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return Sv(t)}catch{throw new Ov({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function mv(e){if(e.r!==void 0&&e.s!==void 0)return hv(e)}function hv(e){let t=typeof e==`string`?pv(e):e instanceof Uint8Array?fv(e):typeof e.r==`string`?_v(e):e.v?gv(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return dv(t),t}function gv(e){return{r:e.r,s:e.s,yParity:Sv(e.v)}}function _v(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=Sv(t)),typeof n!=`number`)throw new Ov({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function vv(e){let[t,n,r]=e;return hv({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function yv(e){dv(e);let t=e.r,n=e.s;return P(I(t,{size:32}),I(n,{size:32}),typeof e.yParity==`number`?I(Cv(e.yParity),{size:1}):`0x`)}function bv(e){let{r:t,s:n,yParity:r}=e;return{r:I(t,{size:32}),s:I(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function xv(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:lp(I(t)),n===0n?`0x`:lp(I(n))]}function Sv(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new kv({value:e})}function Cv(e){if(e===0)return 27;if(e===1)return 28;throw new Ov({value:e})}var wv=class extends N{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${cp(np(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Tv=class extends N{constructor({signature:e}){super(`Signature \\`${Ef(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Ev=class extends N{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`})}},Dv=class extends N{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`})}},Ov=class extends N{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`})}},kv=class extends N{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`})}};R();function Av(e,t={}){return typeof e.chainId==`string`?jv(e):{...e,...t.signature}}function jv(e){let{address:t,chainId:n,nonce:r}=e,i=mv(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Mv(e){return e.map(jv)}function Nv(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:I(n),nonce:I(r),...bv(i)}}function Pv(e){return e.map(Nv)}vu(),ep(),R();function Fv(e){let{privateKey:t}=e;return Jg(ru.ProjectivePoint.fromPrivateKey(np(t).slice(2)))}function Iv(e){return c_(Lv(e))}function Lv(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Jg(new ru.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(np(t).substring(2)))}function Rv(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=ru.sign(jf(r),jf(i),{extraEntropy:typeof t==`boolean`?t:np(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function zv(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?l_(t,Iv({payload:r,signature:a})):ru.verify(a,jf(r),Zg(i),...n?[{prehash:!0,lowS:!0}]:[])}lf(),R();let Bv=K_(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Vv(e){if(typeof e==`string`){if(L(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Wv(e)}else dv(e.authorization)}function Hv(e){Vv(e);let t=fp(L(e,-64,-32)),n=L(e,-t-64,-64),r=L(e,0,-t-64),[i,a,o]=U_(Bv,n);return{authorization:Av({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 Uv(e){try{return Vv(e),!0}catch{return!1}}var Wv=class extends N{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`})}};ko(),Xi(),Hn();function Gv(e){let t=Yi(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`&&Vn(t)>=192)return`legacy`;throw new To({serializedType:t})}Ai(),ko(),Bi(),Gt(),An(),Rn(),Hn();function Kv(e){let t=Gv(e);return t===`eip1559`?Yv(e):t===`eip2930`?Xv(e):t===`eip4844`?Jv(e):t===`eip7702`?qv(e):Zv(e)}function qv(e){let t=Qv(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Eo({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:Vn(n),type:`eip7702`};return E(s)&&s!==`0x`&&(h.to=s),E(o)&&o!==`0x`&&(h.gas=k(o)),E(l)&&l!==`0x`&&(h.data=l),E(r)&&(h.nonce=r===`0x`?0:Vn(r)),E(c)&&c!==`0x`&&(h.value=k(c)),E(a)&&a!==`0x`&&(h.maxFeePerGas=k(a)),E(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(h.accessList=$v(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=ey(d)),sh(h),{...t.length===13?ty(t):void 0,...h}}function Jv(e){let t=Qv(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 Eo({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:Vn(a),to:u,type:`eip4844`};return E(l)&&l!==`0x`&&(S.gas=k(l)),E(f)&&f!==`0x`&&(S.data=f),E(o)&&(S.nonce=o===`0x`?0:Vn(o)),E(d)&&d!==`0x`&&(S.value=k(d)),E(m)&&m!==`0x`&&(S.maxFeePerBlobGas=k(m)),E(c)&&c!==`0x`&&(S.maxFeePerGas=k(c)),E(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=k(s)),p.length!==0&&p!==`0x`&&(S.accessList=$v(p)),y&&b&&x&&(S.sidecars=Id({blobs:y,commitments:b,proofs:x})),ch(S),{...r.length===14?ty(r):void 0,...S}}function Yv(e){let t=Qv(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Eo({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:Vn(n),type:`eip1559`};return E(s)&&s!==`0x`&&(m.to=s),E(o)&&o!==`0x`&&(m.gas=k(o)),E(l)&&l!==`0x`&&(m.data=l),E(r)&&(m.nonce=r===`0x`?0:Vn(r)),E(c)&&c!==`0x`&&(m.value=k(c)),E(a)&&a!==`0x`&&(m.maxFeePerGas=k(a)),E(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(m.accessList=$v(u)),lh(m),{...t.length===12?ty(t):void 0,...m}}function Xv(e){let t=Qv(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Eo({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:Vn(n),type:`eip2930`};return E(o)&&o!==`0x`&&(p.to=o),E(a)&&a!==`0x`&&(p.gas=k(a)),E(c)&&c!==`0x`&&(p.data=c),E(r)&&(p.nonce=r===`0x`?0:Vn(r)),E(s)&&s!==`0x`&&(p.value=k(s)),E(i)&&i!==`0x`&&(p.gasPrice=k(i)),l.length!==0&&l!==`0x`&&(p.accessList=$v(l)),uh(p),{...t.length===11?ty(t):void 0,...p}}function Zv(e){let t=Oh(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Eo({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(E(a)&&a!==`0x`&&(d.to=a),E(i)&&i!==`0x`&&(d.gas=k(i)),E(s)&&s!==`0x`&&(d.data=s),E(n)&&(d.nonce=n===`0x`?0:Vn(n)),E(o)&&o!==`0x`&&(d.value=k(o)),E(r)&&r!==`0x`&&(d.gasPrice=k(r)),dh(d),t.length===6)return d;let f=E(c)&&c!==`0x`?k(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 Co({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Qv(e){return Oh(`0x${e.slice(4)}`,`hex`)}function $v(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Li(r,{strict:!1}))throw new ki({address:r});t.push({address:r,storageKeys:i.map(e=>Mh(e)?e:Ln(e))})}return t}function ey(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:Vn(r),nonce:a===`0x`?0:Vn(a),...ty([o,s,c])})}return t}function ty(e){let t=e.slice(-3),n=t[0]===`0x`||k(t[0])===0n?27n:28n;return{r:On(t[1],{size:32}),s:On(t[2],{size:32}),v:n,yParity:n===27n?0:1}}O();var ny=class extends D{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function ry(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new ny({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}`)}Np(),zp(),Sn(),O(),zo(),nf(),Ta(),Xp();async function iy(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 Yp({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=wa({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=xs(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=>T(e,Mm,`readContract`)({...f===null?{code:Rp}:{address:f},abi:Op,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 tn;if(!a)throw new Ro({data:r});let e=ef({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=xs(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 D(`multicall results mismatch`);return _}lf();function ay(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 N(`Unable to normalize signature.`);return i}function oy(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return u_(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)=>oy(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=>oy(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function sy(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 sy(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`))&&u_(n[r],{strict:!1}))return o}}lf(),R();function cy(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=mp(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?ly(e)===L(t,0,4):e.type===`event`?dy(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new py({name:t});if(o.length===1)return{...o[0],...i?{hash:dy(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:dy(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?oy(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=sy(e.inputs,s.inputs,r);if(t)throw new fy({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 py({name:t});return{...c,...i?{hash:dy(c)}:{}}}function ly(...e){return L(dy((()=>{if(Array.isArray(e[0])){let[t,n]=e;return cy(t,n)}return e[0]})()),0,4)}function uy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return cy(t,n)}return e[0]})();return ay(typeof t==`string`?t:lg(t))}function dy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return cy(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Ug(ip(uy(t)))}var fy=class extends N{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ay(lg(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${ay(lg(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`})}},py=class extends N{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 my(e){return ly(e)}lf(),R();function hy(e){if(L(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new vy(e)}function gy(e){let{data:t,signature:n,to:r}=e;return P(W_(K_(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function _y(e){try{return hy(e),!0}catch{return!1}}var vy=class extends N{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`})}};vu(),Hn(),rr();function yy({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 ru.Signature(k(e),k(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Qn(o)}Np(),zp(),zo(),Jp(),Ta(),Ii(),qd(),Wi(),Gt(),Hn(),j(),jm();async function by(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 E(e)?e:typeof e==`object`&&`r`in e&&`s`in e?yy(e):Gn(e)})();try{if(s===`eoa`)try{if(Kd(Pi(n),await xu({hash:i,signature:c})))return!0}catch{}return Uv(c)?await xy(e,{...t,multicallAddress:o,signature:c}):await Sy(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Kd(Pi(n),await xu({hash:i,signature:c})))return!0}catch{}if(e instanceof wy)return!1;throw e}}async function xy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Hv(t.signature);if(await oh(e,{address:n,blockNumber:r,blockTag:i})===Ui([`0xef0100`,s.address]))return await Cy(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:A(s.r,{size:32}),s:A(s.s,{size:32}),yParity:s.yParity};if(!await xh({address:n,authorization:d}))throw new wy;let f=await T(e,Mm,`readContract`)({...o?{address:o}:{code:Rp},authorizationList:[d],abi:Op,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:wa({abi:jp,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new wy}async function Sy(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||_y(o)?o:gy({data:i,signature:o,to:r}))(),u=s?{to:s,data:wa({abi:Mp,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Kp({abi:Mp,args:[n,a,l],bytecode:Lp}),...c},{data:d}=await T(e,Tm,`call`)(u).catch(e=>{throw e instanceof No?new wy:e});if(Bn(d??`0x0`))return!0;throw new wy}async function Cy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await T(e,Mm,`readContract`)({address:n,abi:jp,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Po?new wy:e})).startsWith(`0x1626ba7e`))return!0;throw new wy}var wy=class extends Error{};function Ty(e){let{scheme:t,statement:n,...r}=e.match(Ey)?.groups??{},{chainId:i,expirationTime:a,issuedAt:o,notBefore:s,requestId:c,...l}=e.match(Dy)?.groups??{},u=e.split(`Resources:`)[1]?.split(`\n- `).slice(1);return{...r,...l,...i?{chainId:Number(i)}:{},...a?{expirationTime:new Date(a)}:{},...o?{issuedAt:new Date(o)}:{},...s?{notBefore:new Date(s)}:{},...c?{requestId:c}:{},...u?{resources:u}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}let Ey=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\\/\\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\\n)(?<address>0x[a-fA-F0-9]{40})\\n\\n(?:(?<statement>.*)\\n\\n)?/,Dy=/(?:URI: (?<uri>.+))\\n(?:Version: (?<version>.+))\\n(?:Chain ID: (?<chainId>\\d+))\\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\\n(?:Issued At: (?<issuedAt>.+))(?:\\nExpiration Time: (?<expirationTime>.+))?(?:\\nNot Before: (?<notBefore>.+))?(?:\\nRequest ID: (?<requestId>.+))?/;async function Oy(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await T(e,Qm,`sendCalls`)(t);return await T(e,eh,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}ba(),j(),ed(),cd();async function ky(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new zm({docsPath:`/docs/actions/wallet/signTransaction`});let a=ya(n);sd({account:a,...t});let o=await T(e,zd,`getChainId`)({});r!==null&&Vm({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Xu;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:A(o),from:a.address}]},{retryCount:0})}ba();async function Ay(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new zm({docsPath:`/docs/actions/wallet/signTypedData`});let o=ya(n),s={EIP712Domain:Gh({domain:r}),...t.types};if(Wh({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Uh({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function jy({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=ih();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:wh(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function My(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>jy({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}O();var Ny=class extends D{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};Uo(),rm();function Py(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 Ny;let b=Ih(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return jy({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=tm({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 Vo({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Ws(),Al(),Bl(),Zc(),Dl();\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nlet Fy=zc(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),Iy=Fy.create(BigInt(`-3`)),Ly=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Ry=kl({a:Iy,b:Ly,Fp:Fy,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Vs),zy=Ry,By=bl(Fy,{A:Iy,B:Ly,Z:Fy.create(BigInt(`-10`))}),Vy=Rl(zy.ProjectivePoint,e=>By(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:Fy.ORDER,m:1,k:128,expand:`xmd`,hash:Vs}),Hy=zc(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Uy=Hy.create(BigInt(`-3`)),Wy=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),Gy=kl({a:Uy,b:Wy,Fp:Hy,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Us),Ky=bl(Hy,{A:Uy,B:Wy,Z:Hy.create(BigInt(`-12`))});Rl(Gy.ProjectivePoint,e=>Ky(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Hy.ORDER,m:1,k:192,expand:`xmd`,hash:Us});let qy=zc(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Jy=qy.create(BigInt(`-3`)),Yy=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Xy=kl({a:Jy,b:Yy,Fp:qy,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Hs),Zy=bl(qy,{A:Jy,B:Yy,Z:qy.create(BigInt(`-4`))});Rl(Xy.ProjectivePoint,e=>Zy(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:qy.ORDER,m:1,k:256,expand:`xmd`,hash:Hs});\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nlet Qy=Ry,$y=Ry;Vy.hashToCurve,Vy.encodeToCurve,ep(),R();function eb(e){let{privateKey:t}=e;return Jg($y.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):F(t).slice(2)))}function tb(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=$y.sign(r instanceof Uint8Array?r:Nf(r),i instanceof Uint8Array?i:Nf(i),{extraEntropy:typeof t==`boolean`?t:np(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function nb(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return $y.verify(i,n instanceof Uint8Array?n:Nf(n),Qg(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}ep();let rb=new TextEncoder,ib=new TextDecoder,ab=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),ob={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function sb(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]=ab[r>>18],i[t+1]=ab[r>>12&63],i[t+2]=ab[r>>6&63],i[t+3]=ab[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=ib.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function cb(e,t={}){return sb(Nf(e),t)}function lb(e,t={}){return sb(Pf(e),t)}function ub(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);rb.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(ob[r[e]]<<18)+(ob[r[e+1]]<<12)+(ob[r[e+2]]<<6)+ob[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 db(e){return Uf(ub(e))}ep(),lf(),R();function fb(e,t={}){let{as:n=`Hex`}=t,r=Eb(e),i=z_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?F(i.bytes):i.bytes}var pb=class extends N{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},mb=class extends N{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},hb=class extends N{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},gb=class extends N{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`})}},_b=class extends N{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},vb=class extends N{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},yb=class extends N{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},bb=class extends N{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},xb=class extends N{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`})}},Sb=class extends N{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},Cb=class extends N{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},wb=class extends N{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},Tb=class extends N{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 Eb(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 Eb.number(e);if(typeof e==`bigint`)throw new yb;if(typeof e==`string`)return Eb.string(e);if(Array.isArray(e))return Eb.array(e);if(e instanceof Uint8Array)return Eb.byteString(e);if(e instanceof ArrayBuffer)return Eb.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return Eb.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return Eb.map(e);if(typeof e==`object`)return Eb.object(e);throw new bb({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 xb({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 xb({number:e.toString(10)})}e.number=t;function n(e){let t=Pf(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 Sb({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 Cb({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 Tb({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 wb({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 wb({size:i})}e.map=o})(Eb||={});function Db(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Db.readUnsignedInteger(e,r);case 1:return Db.readNegativeInteger(e,r);case 2:return Db.readByteString(e,r);case 3:return Db.readTextString(e,r);case 4:return Db.readArray(e,r);case 5:return Db.readMap(e,r);case 6:throw new gb({tag:r});case 7:return Db.readSimpleOrFloat(e,r);default:throw new pb({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 hb:new mb({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 _b({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 _b({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Uf(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 vb({value:t});return}throw new mb({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}})(Db||={}),lf();function Ob(e){let t=Zg(e),n=t.slice(1,33),r=t.slice(33,65);return fb(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}function kb(e){let t=Qy.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}R();function Ab(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=P(Gg(ip(r)),I(n,{size:1}),I(i,{size:4}));if(!t)return a;let o=F(new Uint8Array(16)),s=F(t.id);return P(a,o,I(t.id.length,{size:2}),s,Ob(t.publicKey))}function jb(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:cb(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}ep(),lf(),R();function Mb(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:ub(e),type:`public-key`})):[{id:ub(t),type:`public-key`}]}:{},challenge:Nf(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Nb(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Ab({flag:i,rpId:o,signCount:s}),u=jb({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Gg(ip(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:P(l,d)}}async function Pb(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Mb(n);try{let e=await t(r);if(!e)throw new Fb;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=kb(o);return{id:s,metadata:{authenticatorData:F(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Fb({cause:e})}}var Fb=class extends N{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function Ib(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=Nf(s);if(u.length<37||a!==void 0&&!Ff(u.slice(0,32),Gg(ip(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||F(ub(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:nb({hash:!0,payload:Af(u,Gg(Pf(c),{as:`Bytes`})),publicKey:i,signature:o})}let Lb=Nb;async function Rb(e){return Pb(e)}function zb(e){return Ib(e)}lf(),R(),Of();let Bb=`0x01`,Vb=`0x02`,Hb=`0x03`,Ub=`0x04`,Wb=`0x7777777777777777777777777777777777777777777777777777777777777777`;function Gb(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:Gb({...e,signature:t.inner}):c_(Kb(e))}function Kb(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Lv({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return Kb({payload:t,signature:n.inner})}}function qb(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?L(e,0,-cp(Wb)):e;if(cp(t)===65){let e=pv(t);return dv(e),{signature:e,type:`secp256k1`}}let n=L(t,0,1),r=L(t,1),i=cp(r);if(n===Bb){if(i!==129)throw new tx({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:up(L(r,64,96)),y:up(L(r,96,128))},prehash:fp(L(r,128,129))!==0,signature:{r:up(L(r,0,32)),s:up(L(r,32,64))},type:`p256`}}if(n===Vb){if(i<128)throw new tx({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=L(r,0,e),a,o;for(let t=37;t<e;t++){let e=pp(L(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=L(n,0,t),o=e;break}catch{}}if(!a||!o)throw new tx({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:up(L(r,e+64,e+96)),y:up(L(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:up(L(r,e,e+32)),s:up(L(r,e+32,e+64))},type:`webAuthn`}}if(n===Hb||n===Ub)return{userAddress:L(r,0,20),inner:qb(L(r,20)),type:`keychain`,version:n===Ub?`v2`:`v1`};throw new tx({reason:`Unknown signature type identifier: ${n}. Expected ${Bb} (P256), ${Vb} (WebAuthn), ${Hb} (Keychain V1), or ${Ub} (Keychain V2)`,serialized:t})}function Jb(e,t){if(typeof e==`string`)return qb(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=Xb(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:c_(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:c_(Lv({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function Yb(e){if(e.type===`secp256k1`)return{signature:_v(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:up(e.pubKeyX),y:up(e.pubKeyY)},signature:{r:up(e.r),s:up(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=cp(t),r,i;for(let e=37;e<n;e++){let n=pp(L(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=L(t,0,e),i=n;break}catch{}}if(!r||!i)throw new tx({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:up(e.pubKeyX),y:up(e.pubKeyY)},signature:{r:up(e.r),s:up(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:Yb(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new ex({envelope:e})}function Xb(e){if(typeof e!=`object`||!e)throw new ex({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 ex({envelope:e})}function Zb(e,t={}){let n=Xb(e);if(n===`secp256k1`)return P(yv(e.signature),t.magic?Wb:`0x`);if(n===`p256`){let n=e;return P(Bb,I(n.signature.r,{size:32}),I(n.signature.s,{size:32}),I(n.publicKey.x,{size:32}),I(n.publicKey.y,{size:32}),I(+!!n.prehash,{size:1}),t.magic?Wb:`0x`)}if(n===`webAuthn`){let n=e;return P(Vb,P(n.metadata.authenticatorData,ip(n.metadata.clientDataJSON)),I(n.signature.r,{size:32}),I(n.signature.s,{size:32}),I(n.publicKey.x,{size:32}),I(n.publicKey.y,{size:32}),t.magic?Wb:`0x`)}if(n===`keychain`){let n=e;return P(n.version===`v1`?Hb:Ub,n.userAddress,Zb(n.inner),t.magic?Wb:`0x`)}throw new ex({envelope:e})}function Qb(e){let t=Xb(e);if(t===`secp256k1`)return{...bv(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:I(t.publicKey.x,{size:32}),pubKeyY:I(t.publicKey.y,{size:32}),r:I(t.signature.r,{size:32}),s:I(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=P(t.metadata.authenticatorData,ip(t.metadata.clientDataJSON));return{pubKeyX:I(t.publicKey.x,{size:32}),pubKeyY:I(t.publicKey.y,{size:32}),r:I(t.signature.r,{size:32}),s:I(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:Qb(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new ex({envelope:e})}function $b(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return c_(t.publicKey)})();if(!r)return!1;let i=Jb(e);if(i.type===`secp256k1`)return r?zv({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return l_(c_(i.publicKey),r)?nb({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return l_(c_(i.publicKey),r)?zb({challenge:np(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new nx(`Unable to verify signature envelope of type \"${i.type}\".`)}var ex=class extends N{constructor({envelope:e}){super(`Unable to coerce value (\\`${Ef(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},tx=class extends N{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`})}},nx=class extends N{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};lf(),R();function rx(e){return e.startsWith(`tempo`)?ix(e).address:e}function ix(e){if(!e.startsWith(`tempox`))throw new ax({address:e});let t=e.slice(6);return tp(t,{strict:!0}),{address:o_(t)}}var ax=class extends N{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`})}};R();function ox(e,t={}){if(typeof e.chainId==`string`)return sx(e);let n={...e,address:rx(e.address)};return t.signature?{...n,signature:t.signature}:n}function sx(e){let{address:t,chainId:n,nonce:r}=e,i=Yb(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function cx(e){return e.map(e=>sx(e))}function lx(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=qb(i)),ox(a)}function ux(e){let t=[];for(let n of e)t.push(lx(n));return t}function dx(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:I(n),nonce:I(r),signature:Qb(i)}}function fx(e){return e.map(e=>dx(e))}function px(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?Zb(e.signature):void 0;return[n?I(n):`0x`,t,r?I(r):`0x`,...i?[i]:[]]}function mx(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(px(n));return t}R();function hx(e,t={}){if(`keyId`in e)return gx(e);let n=e,r={...n,address:rx(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:rx(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:rx(e.address),selector:kx(e.selector),...e.recipients?{recipients:e.recipients.map(e=>rx(e))}:{}}))}:{}};return t.signature?{...r,signature:Jb(t.signature)}:r}function gx(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=Yb(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:Ox(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:up(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&Dx(e.period)>0?{period:Dx(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function _x(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:Dx(o)||void 0,type:l,chainId:r===`0x`?0n:up(r),...o===void 0?{}:{expiry:Dx(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:Ex(n),...r===void 0?{}:{period:Dx(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=qb(n)),hx(u)}function vx(e){return bx(e)}function yx(e){return _x(ev(e))}function bx(e){let[t]=Cx(e);return Ug(ov(t))}function xx(e){return ov(Cx(e))}function Sx(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:kx(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`:I(r),expiry:typeof i==`number`?I(i):null,keyId:rx(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:I(t),...n?{period:Tx(n)}:{}})),signature:Qb(s),...c?{allowedCalls:c}:{}}}function Cx(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?Zb(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,wx(e.limit)];return e.period&&e.period>0&&t.push(Tx(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([kx(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[wx(n),s,t,i!=null&&i!==0||c||l?Tx(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function wx(e){return e===0n?`0x`:I(e)}function Tx(e){return e===0?`0x`:I(e)}function Ex(e){return e===`0x`?0n:BigInt(e)}function Dx(e){return e===`0x`?0:fp(e)}function Ox(e){return typeof e==`string`?e:Array.isArray(e)?F(new Uint8Array(e)):e}function kx(e){if(e)return e.startsWith(`0x`)?e:ly(e)}R();let Ax=`0x20c0`;function jx(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):Mx(e)}function Mx(e){let t=rx(e);if(!t.toLowerCase().startsWith(Ax))throw Error(`invalid tip20 address.`);return up(L(t,6))}function z(e){if(typeof e==`string`){let t=rx(e);return a_(t),t}return P(Ax,I(e,{size:18}))}R();let Nx={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function Px(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ug(ip(Nx[e]??e))}let Fx={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Ix={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Lx(e,t={}){if(!e)return null;let n=mv(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=Mv(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=Ix[e.type]??e.type),n&&(r.v=Cv(n.yParity)),r}let Rx={...Fx,tempo:`0x76`},zx={...Ix,\"0x76\":`tempo`};function Bx(e,t={}){if(!e)return null;let n=Lx(e);return n.type=zx[e.type],e.aaAuthorizationList&&(n.authorizationList=cx(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=Yb(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=gx(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=_v(e.feePayerSignature),n.feePayerSignature.v=Cv(n.feePayerSignature.yParity)),n}R();function Vx(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Pv(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=I(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=I(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=I(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=I(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=I(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=I(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=I(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=I(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Fx[e.type]||e.type),e.value!==void 0&&(t.value=I(e.value)),t}R();function Hx(e){let t=Vx({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=fx(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?rx(e.to):e.to,value:e.value?I(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?rx(e.to):void 0,value:e.value?I(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=Sx(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=I(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=I(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return sp(6);if(typeof e.nonceKey==`bigint`)return I(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=Rx.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}lf(),R();function Ux(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&a_(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Kg(e)?e:lp(e))})}return t}function Wx(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(cp(r[e])!==32)throw new Gx({storageKey:r[e]});n&&a_(n,{strict:!1}),t.push([n,r])}return t}var Gx=class extends N{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${cp(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};lf();let Kx={wei:0,gwei:9,szabo:12,finney:15,ether:18};function qx(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 Jx(e,t=`wei`){return qx(e,Kx.gwei-Kx[t])}lf();var Yx=class extends N{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Jx(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`})}},Xx=class extends N{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`})}},Zx=class extends N{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`})}},Qx=class extends N{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Jx(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Jx(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};lf(),R();let $x=`tempo`;function eS(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new sS;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new cS({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&a_(e.to,{strict:!1});if(n<=0)throw new Xx({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Yx({feeCap:r});if(i&&r&&i>r)throw new Qx({maxFeePerGas:r,maxPriorityFeePerGas:i})}function tS(e){let t=ev(L(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 Zx({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:$x});let y={chainId:Number(n),type:$x};mp(a)&&a!==`0x`&&(y.gas=BigInt(a)),mp(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),mp(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),mp(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),mp(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),mp(u)&&u!==`0x`&&(y.validBefore=Number(u)),mp(d)&&d!==`0x`&&(y.validAfter=Number(d)),mp(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=Ux(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=ux(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||u_(p)?(y.feePayerSignature=null,u_(p)&&(y.from=p)):y.feePayerSignature=vv(p)),_&&(y.keyAuthorization=_x(_));let b=v?qb(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=Gb({payload:iS(nS(y)),signature:b,root:!0})}catch{}return eS(y),y}function nS(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?tS(e):e;return i.from&&=rx(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:rx(e.to)}:{}})),eS(i),{...i,...r?{signature:Jb(r)}:{},...n?{feePayerSignature:hv(n)}:{},type:`tempo`}}function rS(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;eS(e);let h=Wx(n),g=t.signature||e.signature,_=mx(r),v=i.map(e=>[e.to?rx(e.to):`0x`,e.value?I(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=Jb(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return c_(t.publicKey);if(t.type===`secp256k1`)return Iv({payload:iS(nS(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?xv(n):`0x`})(),x=[I(a),f?I(f):`0x`,d?I(d):`0x`,s?I(s):`0x`,v,h,u?I(u):`0x`,l?I(l):`0x`,typeof p==`number`?I(p):`0x`,typeof m==`number`?I(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?z(o):`0x`,b,_,...c?[Cx(c)]:[],...g?[Zb(Jb(g))]:[]];return P(t.format===`feePayer`?`0x78`:`0x76`,ov(x))}function iS(e,t={}){let n=aS(e,{presign:!0});return t.from?Ug(P(`0x04`,n,rx(t.from))):n}function aS(e,t={}){return Ug(rS({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function oS(e,t){let n=rx(t.sender);return Ug(rS({...e,signature:void 0},{sender:n,format:`feePayer`}))}var sS=class extends N{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},cS=class extends N{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 B=[{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:[]}],lS=[{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:[]}],uS=[{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`}]}];ep();async function dS(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=Jg(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function fS(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,jf(t)),i=Mf(new Uint8Array(r)),a=Bf(zf(i,0,32)),o=Bf(zf(i,32,64));return o>Qy.CURVE.n/2n&&(o=Qy.CURVE.n-o),{r:a,s:o}}R();function pS(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:Ld(e)}function mS(e){try{return pS(e)===`tempo`}catch{return!1}}function hS(e){let t=L(e,0,1);return t===`0x76`||t===`0x78`?_S(e):Kv(e)}async function gS(e,t){if(!mS(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 ph(e,{r:I(n,{size:32}),s:I(r,{size:32}),yParity:i})}return ph(e,t)}if(pS(e)===`tempo`)return vS(e,t);throw Error(`Unsupported transaction type`)}function _S(e){let{feePayerSignature:t,nonce:n,...r}=tS(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:I(t.r,{size:32}),s:I(t.s,{size:32}),yParity:t.yParity}}}async function vS(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return Jb({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=nS(c,{signature:n}),r=oS(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Iv({payload:iS(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return rS(t,{feePayerSignature:hv(await e.feePayer.sign({hash:r}))})}return i===!0?n?rS(c,{format:`feePayer`,sender:e.from,signature:n}):rS(c,{feePayerSignature:null}):rS({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}R(),ba(),_i();function yS(e){let{access:t}=e;return t?DS(e):ES(e)}function bS(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=eb({privateKey:e});return yS({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Lb({...t,challenge:n,rpId:r,origin:i});return Zb({metadata:a,signature:tb({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function xS(e,t={}){let{access:n,internal_version:r}=t,i=eb({privateKey:e});return yS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return Zb({signature:tb({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function SS(e,t={}){let{access:n,internal_version:r}=t;return yS({access:n,internal_version:r,keyType:`secp256k1`,publicKey:Fv({privateKey:e}),async sign(t){let{hash:n}=t;return yv(Rv({payload:n,privateKey:e}))}})}function CS(e,t={}){let{id:n}=e,r=Xg(e.publicKey);return yS({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Rb({...t,challenge:e,credentialId:n});return Zb({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function wS(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return yS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return Zb({signature:await fS({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function TS(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??c_(e.publicKey),o=Qg(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?gi(P(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?Zb(Jb({userAddress:n,inner:Jb(o),type:`keychain`,version:i})):t===`secp256k1`?o:P(o,Wb)}return{address:o_(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=Jb(await s({hash:Du({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:I(a,{size:32}),s:I(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:zh(t)})},async signTransaction(e,t){let{serializer:n=gS}=t??{};return await n(e,Jb(await s({hash:gi(await n(e))})))},async signTypedData(e){return await s({hash:qh(e)})},publicKey:o,source:r,type:`local`}}function ES(e){let t=TS(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return hx({address:o,chainId:r,expiry:i,limits:a,signature:Jb(await t.sign({hash:vx({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function DS(e){let{access:t}=e,{address:n}=ya(t);return{...TS({...e,parentAddress:n}),accessKeyAddress:c_(e.publicKey),source:`accessKey`}}let OS=`0xdec0000000000000000000000000000000000000`;function V(e){return{...e,data:wa(e),to:e.address}}R(),ba();async function kS(e,t){return kS.inner(Gm,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 V({address:OS,abi:lS,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(kS||={});async function AS(e,t){return AS.inner(Gm,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 V({address:OS,abi:lS,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=Qd({abi:lS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(AS||={});async function jS(e,t){return jS.inner(Gm,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 V({address:OS,abi:lS,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=Qd({abi:lS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(jS||={});async function MS(e,t){return MS.inner(Gm,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 V({address:OS,abi:lS,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=Qd({abi:lS,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(MS||={});async function NS(e,t){let{account:n=e.account,token:r,...i}=t,a=n?ya(n).address:void 0;if(!a)throw Error(`account is required.`);return Mm(e,{...i,...NS.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return V({address:OS,abi:lS,args:[t,n],functionName:`balanceOf`})}e.call=t})(NS||={});async function PS(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Mm(e,{...a,...PS.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return V({address:OS,abi:lS,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(PS||={});async function FS(e,t){let{orderId:n,...r}=t;return Mm(e,{...r,...FS.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return V({address:OS,abi:lS,args:[t],functionName:`getOrder`})}e.call=t})(FS||={});async function IS(e,t){let{base:n,quote:r,...i}=t;return Mm(e,{...i,...IS.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return V({address:OS,abi:lS,args:[US(t,n)],functionName:`books`})}e.call=t})(IS||={});async function LS(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Mm(e,{...a,...LS.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 V({address:OS,abi:lS,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(LS||={});async function RS(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Mm(e,{...a,...RS.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return V({address:OS,abi:lS,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(RS||={});async function zS(e,t){return zS.inner(Gm,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 V({address:OS,abi:lS,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=Qd({abi:lS,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(zS||={});async function BS(e,t){return BS.inner(Gm,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 V({address:OS,abi:lS,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=Qd({abi:lS,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})(BS||={});async function VS(e,t){return VS.inner(Gm,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 V({address:OS,abi:lS,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(VS||={});async function HS(e,t){return HS.inner(Gm,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 V({address:OS,abi:lS,functionName:`withdraw`,args:[t,n]})}e.call=n})(HS||={});function US(e,t){return Ug(P(e,t))}R(),ba(),Ta();async function WS(e,t){let{token:n,...r}=t;return WS.inner(Gm,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 V({address:z(r),abi:B,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(WS||={});async function GS(e,t){return GS.inner(Gm,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 V({address:z(r),abi:B,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(GS||={});async function KS(e,t){return KS.inner(Gm,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,ap(n,32)]}:{functionName:`burn`,args:[t]};return V({address:z(r),abi:B,...i})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(KS||={});async function qS(e,t){return qS.inner(Gm,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 V({address:z(t),abi:B,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(qS||={});async function JS(e,t){return JS.inner(Gm,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?ya(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=sp(32)}=e;return V({address:`0x20fc000000000000000000000000000000000000`,abi:uS,args:[t,n,r,z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=Qd({abi:uS,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(JS||={});async function YS(e,t){let{account:n=e.account}=t,r=n?ya(n).address:void 0;if(!r)throw Error(`account is required.`);return Mm(e,{...t,...YS.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return V({address:z(r),abi:B,functionName:`allowance`,args:[t,n]})}e.call=t})(YS||={});async function XS(e,t){let{account:n=e.account,...r}=t,i=n?ya(n).address:void 0;if(!i)throw Error(`account is required.`);return Mm(e,{...r,...XS.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return V({address:z(n),abi:B,functionName:`balanceOf`,args:[t]})}e.call=t})(XS||={});async function ZS(e,t){let{token:n,...r}=t,i=z(n),a=B;return jx(n)===Mx(`0x20c0000000000000000000000000000000000000`)?iy(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})):iy(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 QS(e,t){return Mm(e,{...t,...QS.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return V({address:z(n),abi:B,functionName:`getRoleAdmin`,args:[Px(t)]})}e.call=t})(QS||={});async function $S(e,t){let{account:n=e.account}=t,r=n?ya(n).address:void 0;if(!r)throw Error(`account is required.`);return Mm(e,{...t,...$S.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return V({address:z(r),abi:B,functionName:`hasRole`,args:[t,Px(n)]})}e.call=t})($S||={});async function eC(e,t){return eC.inner(Wm,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:wa(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=Px(r);return V({address:z(t),abi:B,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=Qd({abi:B,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(Gm,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,ap(r,32)]}:{functionName:`mint`,args:[t,n]};return V({address:z(i),abi:B,...a})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(tC||={});async function nC(e,t){return nC.inner(Gm,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 V({address:z(t),abi:B,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` 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){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:wa(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=Px(n);return V({address:z(t),abi:B,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=Qd({abi:B,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(rC||={});async function iC(e,t){return iC.inner(Wm,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:wa(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=Px(r);return V({address:z(t),abi:B,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=Qd({abi:B,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(iC||={});async function aC(e,t){return aC.inner(Gm,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 V({address:z(t),abi:B,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(aC||={});async function oC(e,t){return oC.inner(Gm,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=Px(n),a=Px(r);return V({address:z(t),abi:B,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(oC||={});async function sC(e,t){return sC.inner(Gm,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,ap(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,ap(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return V({address:z(i),abi:B,...o})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(sC||={});async function cC(e,t){return cC.inner(Gm,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 V({address:z(t),abi:B,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(cC||={});async function lC(e,t){return lC.inner(Gm,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 V({address:z(t),abi:B,functionName:`setNextQuoteToken`,args:[z(n)]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(lC||={});async function uC(e,t){return uC.inner(Gm,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 V({address:z(t),abi:B,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=Qd({abi:B,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(uC||={}),R(),ba(),ed();function dC(e){if(!mS(e))return md(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=Bx(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:I(t.r,{size:32}),s:I(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:Rx[i.type],type:i.type}}function fC(e){return Ym(e)}function pC(e,t){let n=e,r=n.account?ya(n.account):void 0;if(!mS(n))return Xu(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=Hx({...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`?ya(n.feePayer):n.feePayer}:{}}}var mC=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 hC(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw gC(r.error);return r.result}function gC(e){let t=e;if(t instanceof Error&&!(`code`in t))return new OC({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===OC.code?new OC(t):n===vC.code?new vC(t):n===DC.code?new DC(t):n===TC.code?new TC(t):n===CC.code?new CC(t):n===EC.code?new EC(t):n===SC.code?new SC(t):n===kC.code?new kC(t):n===yC.code?new yC(t):n===bC.code?new bC(t):n===xC.code?new xC(t):n===wC.code?new wC(t):new OC({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var _C=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??``}},vC=class e extends _C{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(vC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var yC=class e extends _C{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(yC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var bC=class e extends _C{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(bC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var xC=class e extends _C{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(xC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var SC=class e extends _C{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(SC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var CC=class e extends _C{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(CC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var wC=class e extends _C{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(wC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var TC=class e extends _C{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(TC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var EC=class e extends _C{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(EC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var DC=class e extends _C{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(DC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var OC=class e extends _C{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(OC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var kC=class e extends _C{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(kC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),lf();var AC=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}},jC=class extends AC{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(jC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var MC=class extends AC{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(MC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var NC=class extends AC{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(NC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var PC=class extends AC{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(PC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var FC=class extends AC{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(FC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var IC=class extends AC{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(IC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var LC=class extends AC{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(LC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var RC=class extends AC{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(RC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var zC=class extends AC{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(zC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var BC=class extends AC{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(BC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var VC=class extends AC{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(VC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var HC=class extends AC{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(HC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var UC=class extends AC{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(UC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function WC(){let e=new mC.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 GC(e,t={}){if(!e)throw new qC;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?hC(n):n}catch(e){throw KC(e)}}}}function KC(e){let t=gC(e);if(t instanceof OC){if(!t.data)return t;let{code:e}=t.data;if(e===PC.code)return new PC(t);if(e===FC.code)return new FC(t);if(e===jC.code)return new jC(t);if(e===MC.code)return new MC(t);if(e===NC.code)return new NC(t);if(e===IC.code)return new IC(t);if(e===HC.code)return new HC(t);if(e===UC.code)return new UC(t);if(e===VC.code)return new VC(t);if(e===BC.code)return new BC(t);if(e===zC.code)return new zC(t);if(e===RC.code)return new RC(t);if(e===LC.code)return new LC(t)}return t}var qC=class extends N{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function JC(e={}){let t=e.id??0;return{prepare(e){return YC({id:t++,...e})},get id(){return t}}}function YC(e){return{...e,jsonrpc:`2.0`}}function XC(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return jy({key:XC.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(hS(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:XC.type})}}let ZC={AddressAlreadyHasValidator:`This address already has a validator.`,AddressNotReserved:`Address is not reserved.`,AddressReserved:`Address is reserved.`,AlreadyInitialized:`Already initialized.`,BelowMinimumOrderSize:`Order size is below the minimum allowed ({0}).`,CallNotAllowed:`This call is not allowed.`,CannotChangeWithPendingFees:`Cannot change while fees are pending.`,CannotChangeWithinBlock:`Cannot change within the same block.`,ContractPaused:`Contract is paused.`,DivisionByZero:`Division by zero.`,EmptyV1ValidatorSet:`Validator set is empty.`,ExpiringNonceReplay:`Expiring nonce has already been used.`,ExpiringNonceSetFull:`Expiring nonce set is full.`,ExpiryInPast:`Expiry is in the past.`,IdenticalAddresses:`Addresses must be different.`,IdenticalTokens:`Cannot swap a token for itself — input and output tokens must be different.`,IncompatiblePolicyType:`Incompatible policy type.`,IngressAlreadyExists:`Ingress \"{0}\" already exists.`,InsufficientAllowance:`Insufficient allowance.`,InsufficientBalance:`Insufficient balance. Required: {1}, available: {0}.`,InsufficientFeeTokenBalance:`Insufficient fee token balance.`,InsufficientLiquidity:`Not enough liquidity in the order book to fill this trade.`,InsufficientOutput:`The output amount is below the slippage minimum — try increasing slippage tolerance.`,InsufficientReserves:`Insufficient reserves.`,InternalError:`Internal error.`,InvalidAmount:`Invalid amount.`,InvalidBaseToken:`This token is not a valid base token for the requested pair.`,InvalidCallScope:`Invalid call scope.`,InvalidCurrency:`Invalid currency.`,InvalidExpiringNonceExpiry:`Invalid expiring nonce expiry.`,InvalidFlipTick:`The flip-order price tick is invalid.`,InvalidFormat:`Invalid format.`,InvalidMasterAddress:`Invalid master address.`,InvalidMigrationIndex:`Invalid migration index.`,InvalidNonceKey:`Invalid nonce key.`,InvalidOwner:`Invalid owner.`,InvalidPayload:`Invalid payload.`,InvalidPolicyType:`Invalid policy type.`,InvalidPublicKey:`Invalid public key.`,InvalidQuoteToken:`Invalid quote token.`,InvalidRecipient:`Invalid recipient.`,InvalidSignature:`Invalid signature.`,InvalidSignatureFormat:`Invalid signature format.`,InvalidSignatureType:`Invalid signature type.`,InvalidSpendingLimit:`Invalid spending limit.`,InvalidSupplyCap:`Invalid supply cap.`,InvalidSwapCalculation:`Invalid swap calculation.`,InvalidTick:`The price tick is invalid.`,InvalidToken:`This token is not supported on the exchange.`,InvalidTransferPolicyId:`Invalid transfer policy.`,InvalidValidatorAddress:`Invalid validator address.`,KeyAlreadyExists:`Key already exists.`,KeyAlreadyRevoked:`Key has already been revoked.`,KeyExpired:`Key has expired.`,KeyNotFound:`Key not found.`,LegacyAuthorizeKeySelectorChanged:`Legacy authorize key selector changed to {0}.`,MasterIdCollision:`Master ID collision with {0}.`,MaxInputExceeded:`The required input exceeds the slippage maximum — try increasing slippage tolerance.`,MigrationNotComplete:`Migration is not complete.`,NoOptedInSupply:`No opted-in supply.`,NonceOverflow:`Nonce overflow.`,NotHostPort:`\"{1}\" is not a valid host:port for {0}.`,NotInitialized:`Not initialized.`,NotIp:`\"{0}\" is not a valid IP address.`,NotIpPort:`\"{1}\" is not a valid IP:port for {0}.`,OnlySystemContract:`Only callable by system contract.`,OnlyValidator:`Only callable by a validator.`,OrderDoesNotExist:`No order exists with the given ID.`,OrderNotStale:`This order is not yet eligible for stale-cleanup.`,PairAlreadyExists:`A trading pair for these tokens has already been created.`,PairDoesNotExist:`No trading pair exists for these tokens.`,PermitExpired:`Permit has expired.`,PolicyForbids:`Forbidden by policy.`,PolicyNotFound:`Policy not found.`,PolicyNotSimple:`Policy is not a simple policy.`,PoolDoesNotExist:`Pool does not exist.`,ProofOfWorkFailed:`Proof of work failed.`,ProtectedAddress:`Address is protected.`,ProtocolNonceNotSupported:`Protocol nonce is not supported.`,PublicKeyAlreadyExists:`Public key already exists.`,SignatureTypeMismatch:`Signature type mismatch. Expected {0}, got {1}.`,SpendingLimitExceeded:`Spending limit exceeded.`,StringTooLong:`String is too long.`,SupplyCapExceeded:`Supply cap exceeded.`,TickOutOfBounds:`Price tick {0} is outside the allowed range.`,TokenAlreadyExists:`Token {0} already exists.`,TokenPolicyForbids:`Forbidden by token policy.`,TransfersDisabled:`Transfers are disabled.`,Unauthorized:`Unauthorized.`,UnauthorizedCaller:`Unauthorized caller.`,Uninitialized:`Uninitialized.`,ValidatorAlreadyDeactivated:`Validator is already deactivated.`,ValidatorAlreadyExists:`Validator already exists.`,ValidatorNotFound:`Validator not found.`,VirtualAddressNotAllowed:`Virtual address is not allowed.`,VirtualAddressUnregistered:`Virtual address is not registered.`,ZeroPublicKey:`Public key cannot be zero.`};function QC(e,t){return t?e.replace(/\\{(\\d+)\\}/g,(e,n)=>{let r=t[Number(n)];return r===void 0?`{${n}}`:String(r)}):e}function $C(e){let t=e.details??e.shortMessage??e.message,n=ew(e);if(n)try{let e=to({abi:void 0,data:n}),r=ZC[e.errorName];return{...e,data:n,message:r?QC(r,e.args):t.replace(/^execution reverted:\\s*/i,``)}}catch{}let r=/:\\s*(\\w+)\\(\\w+/.exec(t)?.[1];return r&&r in ZC?{errorName:`unknown`,message:ZC[r]}:{errorName:`unknown`,message:t.replace(/^execution reverted:\\s*/i,``)}}function ew(e){if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.data==`string`&&t.data.startsWith(`0x`))return t.data;if(t.cause)return ew(t.cause);if(t.error)return ew(t.error);if(typeof t.walk==`function`){let e=t.walk(e=>typeof e.data==`string`);if(e)return ew(e)}return null}function tw(){return null}var nw;function H(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 rw=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},iw=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(nw=globalThis).__zod_globalConfig??(nw.__zod_globalConfig={});let aw=globalThis.__zod_globalConfig;function ow(e){return e&&Object.assign(aw,e),aw}function sw(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 cw(e,t){return typeof t==`bigint`?t.toString():t}function lw(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function uw(e){return e==null}function dw(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let fw=Symbol(`evaluating`);function U(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==fw)return r===void 0&&(r=fw,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let pw=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function mw(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function hw(e){if(mw(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(mw(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let gw=new Set([`string`,`number`,`symbol`]),_w=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function vw(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function yw(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function bw(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 xw(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function Sw(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 Cw(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 ww(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Tw(e){return typeof e==`string`?e:e?.message}function Ew(e,t,n){let r=e.message?e.message:Tw(e.inst?._zod.def?.error?.(e))??Tw(t?.error?.(e))??Tw(n.customError?.(e))??Tw(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 Dw(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Ow(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let kw=(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,cw,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Aw=H(`$ZodError`,kw),jw=H(`$ZodError`,kw,{Parent:Error}),Mw=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 rw;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Ew(e,a,ow())));throw pw(t,i?.callee),t}return o.value},Nw=Mw(jw),Pw=(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=>Ew(e,a,ow())));throw pw(t,i?.callee),t}return o.value})(jw),Fw=(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 rw;return a.issues.length?{success:!1,error:new(e??Aw)(a.issues.map(e=>Ew(e,i,ow())))}:{success:!0,data:a.value}})(jw),Iw=(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=>Ew(e,i,ow())))}:{success:!0,data:a.value}})(jw),Lw=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Mw(e)(t,n,i)})(jw),Rw=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},zw=/^-?\\d+n?$/,Bw=/^-?\\d+(?:\\.\\d+)?$/,Vw=/^(?:true|false)$/i,Hw=/^null$/i,Uw=/^undefined$/i,Ww=H(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Gw={number:`number`,bigint:`bigint`,object:`date`},Kw=H(`$ZodCheckLessThan`,(e,t)=>{Ww.init(e,t);let n=Gw[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})}}),qw=H(`$ZodCheckGreaterThan`,(e,t)=>{Ww.init(e,t);let n=Gw[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})}}),Jw=H(`$ZodCheckMaxLength`,(e,t)=>{var n;Ww.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!uw(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=Dw(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Yw=H(`$ZodCheckMinLength`,(e,t)=>{var n;Ww.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!uw(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=Dw(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Xw=H(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Ww.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=()=>{})}),Zw=H(`$ZodCheckRegex`,(e,t)=>{Xw.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})}}),Qw={major:4,minor:4,patch:3},W=H(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Qw;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=Sw(e),i;for(let a of t){if(a._zod.def.when){if(Cw(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 rw;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=Sw(e,t))});else{if(e.issues.length===t)continue;r||=Sw(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Sw(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new rw;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 rw;return o.then(e=>t(e,r,a))}return t(o,r,a)}}U(e,`~standard`,()=>({validate:t=>{try{let n=Fw(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Iw(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),$w=H(`$ZodString`,(e,t)=>{W.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Rw(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}}),eT=H(`$ZodNumber`,(e,t)=>{W.init(e,t),e._zod.pattern=e._zod.bag.pattern??Bw,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}}),tT=H(`$ZodBoolean`,(e,t)=>{W.init(e,t),e._zod.pattern=Vw,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}}),nT=H(`$ZodBigInt`,(e,t)=>{W.init(e,t),e._zod.pattern=zw,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}}),rT=H(`$ZodUndefined`,(e,t)=>{W.init(e,t),e._zod.pattern=Uw,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}}),iT=H(`$ZodNull`,(e,t)=>{W.init(e,t),e._zod.pattern=Hw,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}}),aT=H(`$ZodUnknown`,(e,t)=>{W.init(e,t),e._zod.parse=e=>e});function oT(e,t,n){e.issues.length&&t.issues.push(...ww(n,e.issues)),t.value[n]=e.value}let sT=H(`$ZodArray`,(e,t)=>{W.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=>oT(t,n,e))):oT(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function cT(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...ww(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 lT(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=xw(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function uT(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=>cT(e,n,i,t,u,d))):cT(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 dT=H(`$ZodObject`,(e,t)=>{if(W.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=lw(()=>lT(t));U(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=mw,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=>cT(n,t,e,s,r,i))):cT(a,t,e,s,r,i)}return i?uT(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function fT(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=>!Sw(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=>Ew(e,r,ow())))}),t)}let pT=H(`$ZodUnion`,(e,t)=>{W.init(e,t),U(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),U(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),U(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),U(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=>dw(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=>fT(t,r,e,i)):fT(o,r,e,i)}}),mT=H(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,pT.init(e,t);let n=e._zod.parse;U(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=lw(()=>{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(!mw(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)}}),hT=H(`$ZodTuple`,(e,t)=>{W.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=gT(n,`optin`),c=gT(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=>_T(t,r,e))):_T(a,r,e)}}return o.length?Promise.all(o).then(()=>vT(l,r,n,a,c)):vT(l,r,n,a,c)}});function gT(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function _T(e,t,n){e.issues.length&&t.issues.push(...ww(n,e.issues)),t.value[n]=e.value}function vT(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(...ww(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 yT=H(`$ZodRecord`,(e,t)=>{W.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!hw(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=>Ew(e,r,ow())),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(...ww(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...ww(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`&&Bw.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=>Ew(e,r,ow())),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(...ww(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...ww(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),bT=H(`$ZodEnum`,(e,t)=>{W.init(e,t);let n=sw(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>gw.has(typeof e)).map(e=>typeof e==`string`?vw(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}}),xT=H(`$ZodLiteral`,(e,t)=>{if(W.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`?vw(e):e?vw(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}}),ST=H(`$ZodTransform`,(e,t)=>{W.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new iw(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 rw;return n.value=i,n.fallback=!0,n}});function CT(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}let wT=H(`$ZodOptional`,(e,t)=>{W.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,U(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),U(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${dw(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=>CT(e,r)):CT(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),TT=H(`$ZodNullable`,(e,t)=>{W.init(e,t),U(e._zod,`optin`,()=>t.innerType._zod.optin),U(e._zod,`optout`,()=>t.innerType._zod.optout),U(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${dw(e.source)}|null)$`):void 0}),U(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)}),ET=H(`$ZodPipe`,(e,t)=>{W.init(e,t),U(e._zod,`values`,()=>t.in._zod.values),U(e._zod,`optin`,()=>t.in._zod.optin),U(e._zod,`optout`,()=>t.out._zod.optout),U(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=>DT(e,t.in,n)):DT(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>DT(e,t.out,n)):DT(r,t.out,n)}});function DT(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 OT=H(`$ZodCodec`,(e,t)=>{W.init(e,t),U(e._zod,`values`,()=>t.in._zod.values),U(e._zod,`optin`,()=>t.in._zod.optin),U(e._zod,`optout`,()=>t.out._zod.optout),U(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=>kT(e,t,n)):kT(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>kT(e,t,n)):kT(r,t,n)}}});function kT(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=>AT(e,r,t.out,n)):AT(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>AT(e,r,t.in,n)):AT(e,r,t.in,n)}}function AT(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let jT=H(`$ZodReadonly`,(e,t)=>{W.init(e,t),U(e._zod,`propValues`,()=>t.innerType._zod.propValues),U(e._zod,`values`,()=>t.innerType._zod.values),U(e._zod,`optin`,()=>t.innerType?._zod?.optin),U(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(MT):MT(r)}});function MT(e){return e.value=Object.freeze(e.value),e}let NT=H(`$ZodTemplateLiteral`,(e,t)=>{W.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||_w.has(typeof e))n.push(vw(`${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)}),PT=H(`$ZodCustom`,(e,t)=>{Ww.init(e,t),W.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=>FT(t,n,r,e));FT(i,n,r,e)}});function FT(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(Ow(e))}}function IT(e,t){return new e({type:`string`,...bw(t)})}function LT(e,t){return new e({type:`number`,checks:[],...bw(t)})}function RT(e,t){return new e({type:`boolean`,...bw(t)})}function zT(e,t){return new e({type:`bigint`,...bw(t)})}function BT(e,t){return new e({type:`undefined`,...bw(t)})}function VT(e,t){return new e({type:`null`,...bw(t)})}function HT(e){return new e({type:`unknown`})}function UT(e,t){return new Kw({check:`less_than`,...bw(t),value:e,inclusive:!0})}function WT(e,t){return new qw({check:`greater_than`,...bw(t),value:e,inclusive:!0})}function GT(e,t){return new Jw({check:`max_length`,...bw(t),maximum:e})}function KT(e,t){return new Yw({check:`min_length`,...bw(t),minimum:e})}function qT(e,t){return new Zw({check:`string_format`,format:`regex`,...bw(t),pattern:e})}function JT(e,t,n){let r=bw(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function YT(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...bw(n)})}let XT=H(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);W.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Nw(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Fw(e,t,n),e.parseAsync=async(t,n)=>Pw(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Iw(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)=>yw(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),ZT=H(`ZodMiniString`,(e,t)=>{$w.init(e,t),XT.init(e,t)});function G(e){return IT(ZT,e)}let QT=H(`ZodMiniNumber`,(e,t)=>{eT.init(e,t),XT.init(e,t)});function $T(e){return LT(QT,e)}let eE=H(`ZodMiniBoolean`,(e,t)=>{tT.init(e,t),XT.init(e,t)});function tE(e){return RT(eE,e)}let nE=H(`ZodMiniBigInt`,(e,t)=>{nT.init(e,t),XT.init(e,t)});function rE(e){return zT(nE,e)}let iE=H(`ZodMiniUndefined`,(e,t)=>{rT.init(e,t),XT.init(e,t)});function aE(e){return BT(iE,e)}let oE=H(`ZodMiniNull`,(e,t)=>{iT.init(e,t),XT.init(e,t)});function sE(e){return VT(oE,e)}let cE=H(`ZodMiniUnknown`,(e,t)=>{aT.init(e,t),XT.init(e,t)});function lE(){return HT(cE)}let uE=H(`ZodMiniArray`,(e,t)=>{sT.init(e,t),XT.init(e,t)});function K(e,t){return new uE({type:`array`,element:e,...bw(t)})}let dE=H(`ZodMiniObject`,(e,t)=>{dT.init(e,t),XT.init(e,t),U(e,`shape`,()=>t.shape)});function q(e,t){return new dE({type:`object`,shape:e??{},...bw(t)})}let fE=H(`ZodMiniUnion`,(e,t)=>{pT.init(e,t),XT.init(e,t)});function pE(e,t){return new fE({type:`union`,options:e,...bw(t)})}let mE=H(`ZodMiniDiscriminatedUnion`,(e,t)=>{mT.init(e,t),XT.init(e,t)});function hE(e,t,n){return new mE({type:`union`,options:t,discriminator:e,...bw(n)})}let gE=H(`ZodMiniTuple`,(e,t)=>{hT.init(e,t),XT.init(e,t)});function _E(e,t,n){let r=t instanceof W;return new gE({type:`tuple`,items:e,rest:r?t:null,...bw(r?n:t)})}let vE=H(`ZodMiniRecord`,(e,t)=>{yT.init(e,t),XT.init(e,t)});function yE(e,t,n){return!t||!t._zod?new vE({type:`record`,keyType:G(),valueType:e,...bw(t)}):new vE({type:`record`,keyType:e,valueType:t,...bw(n)})}let bE=H(`ZodMiniEnum`,(e,t)=>{bT.init(e,t),XT.init(e,t),e.options=Object.values(t.entries)});function xE(e,t){return new bE({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...bw(t)})}let SE=H(`ZodMiniLiteral`,(e,t)=>{xT.init(e,t),XT.init(e,t)});function J(e,t){return new SE({type:`literal`,values:Array.isArray(e)?e:[e],...bw(t)})}let CE=H(`ZodMiniTransform`,(e,t)=>{ST.init(e,t),XT.init(e,t)});function wE(e){return new CE({type:`transform`,transform:e})}let TE=H(`ZodMiniOptional`,(e,t)=>{wT.init(e,t),XT.init(e,t)});function Y(e){return new TE({type:`optional`,innerType:e})}let EE=H(`ZodMiniNullable`,(e,t)=>{TT.init(e,t),XT.init(e,t)});function DE(e){return new EE({type:`nullable`,innerType:e})}let OE=H(`ZodMiniPipe`,(e,t)=>{ET.init(e,t),XT.init(e,t)});function kE(e,t){return new OE({type:`pipe`,in:e,out:t})}let AE=H(`ZodMiniCodec`,(e,t)=>{OE.init(e,t),OT.init(e,t)});function jE(e,t,n){return new AE({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let ME=H(`ZodMiniReadonly`,(e,t)=>{jT.init(e,t),XT.init(e,t)});function X(e){return new ME({type:`readonly`,innerType:e})}let NE=H(`ZodMiniTemplateLiteral`,(e,t)=>{NT.init(e,t),XT.init(e,t)});function PE(e,t){return new NE({type:`template_literal`,parts:e,...bw(t)})}let FE=H(`ZodMiniCustom`,(e,t)=>{PT.init(e,t),XT.init(e,t)});function IE(e,t){return JT(FE,e??(()=>!0),t)}function LE(e,t={}){return YT(FE,e,t)}function RE(e){return e}function zE(e){return e}let Z=()=>PE([`0x`,G().check(qT(/^[0-9a-fA-F]{40}$/))],`Expected address`),BE=()=>jE(pE([Q(),rE()]),rE(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:up(e),encode:e=>I(e)}),Q=()=>PE([`0x`,G()],`Expected hex value`),VE=()=>jE(pE([Q(),$T()]),$T(),{decode:e=>typeof e==`number`?e:e===`0x`?0:fp(e),encode:e=>I(e)}),HE=q({address:Z(),blockHash:Q(),blockNumber:BE(),data:Q(),logIndex:VE(),removed:tE(),topics:X(K(Q())),transactionHash:Q(),transactionIndex:VE()}),UE=q({blobGasPrice:Y(BE()),blobGasUsed:Y(BE()),blockHash:Q(),blockNumber:BE(),contractAddress:DE(Z()),cumulativeGasUsed:BE(),effectiveGasPrice:BE(),feePayer:Y(Z()),feeToken:Y(Z()),from:Z(),gasUsed:BE(),logs:K(HE),logsBloom:Q(),root:Y(Q()),status:jE(Q(),xE([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:DE(Z()),transactionHash:Q(),transactionIndex:VE(),type:Q()}),WE=IE(),GE=pE([J(`secp256k1`),J(`p256`),J(`webAuthn`)]),KE=q({address:Z(),chainId:BE(),expiry:pE([VE(),sE(),aE()]),keyId:Z(),keyType:GE,limits:Y(X(K(q({token:Z(),limit:BE(),period:Y(VE())})))),signature:WE}),qE=q({data:Y(Q()),to:Y(Z()),value:Y(BE())}),JE=q({accessList:Y(K(q({address:Z(),storageKeys:K(Q())}))),calls:Y(X(K(qE))),chainId:Y(VE()),data:Y(Q()),feePayer:Y(pE([tE(),G()])),feePayerSignature:Y(yE(G(),lE())),feeToken:Y(Z()),from:Y(Z()),gas:Y(BE()),keyAuthorization:Y(KE),keyData:Y(Q()),keyId:Y(Z()),keyType:Y(GE),maxFeePerGas:Y(BE()),maxPriorityFeePerGas:Y(BE()),nonce:Y(VE()),nonceKey:Y(BE()),to:Y(Z()),validAfter:Y(VE()),validBefore:Y(VE()),value:Y(BE())});var YE;(function(e){e.schema=RE({method:J(`eth_accounts`),params:void 0,returns:X(K(Z()))})})(YE||={});var XE;(function(e){e.schema=RE({method:J(`eth_chainId`),params:void 0,returns:Q()})})(XE||={});var ZE;(function(e){e.schema=RE({method:J(`eth_requestAccounts`),params:void 0,returns:X(K(Z()))})})(ZE||={});var QE;(function(e){e.schema=RE({method:J(`eth_sendTransaction`),params:X(_E([JE])),returns:Q()})})(QE||={});var $E;(function(e){let t=q({address:Z(),decimals:$T(),direction:xE([`incoming`,`outgoing`]),formatted:G(),name:G(),recipients:X(K(Z())),symbol:G(),value:Q()}),n=q({decimals:$T(),formatted:G(),name:G(),symbol:G(),token:Z(),value:Q()});e.schema=RE({method:J(`eth_fillTransaction`),params:X(_E([JE])),returns:q({capabilities:q({balanceDiffs:Y(yE(Z(),X(K(t)))),error:Y(q({abiItem:Y(yE(G(),lE())),data:Y(Q()),errorName:G(),message:G()})),fee:Y(q({amount:Q(),decimals:$T(),formatted:G(),symbol:G()})),requireFunds:Y(q({amount:Q(),decimals:$T(),formatted:G(),token:Z(),symbol:G()})),autoSwap:Y(q({maxIn:n,minOut:n,slippage:$T()})),sponsor:Y(q({address:Z(),name:Y(G()),url:Y(G())})),sponsored:tE()}),tx:yE(G(),lE())})})})($E||={});var eD;(function(e){e.schema=RE({method:J(`eth_signTransaction`),params:X(_E([JE])),returns:Q()})})(eD||={});var tD;(function(e){e.schema=RE({method:J(`eth_sendTransactionSync`),params:X(_E([JE])),returns:UE})})(tD||={});var nD;(function(e){e.schema=RE({method:J(`eth_signTypedData_v4`),params:X(_E([Z(),G()])),returns:Q()})})(nD||={});var rD;(function(e){e.schema=RE({method:J(`personal_sign`),params:X(_E([Q(),Z()])),returns:Q()})})(rD||={});let iD=Y(q({feePayer:Y(pE([tE(),G()])),sync:Y(tE())}));var aD;(function(e){e.schema=RE({method:J(`wallet_sendCalls`),params:Y(X(_E([q({atomicRequired:Y(tE()),calls:X(K(qE)),capabilities:iD,chainId:Y(VE()),from:Y(Z()),version:Y(G())})]))),returns:q({atomic:Y(tE()),capabilities:iD,chainId:Y(VE()),id:G(),receipts:Y(K(UE)),status:Y($T()),version:Y(G())})})})(aD||={});var oD;(function(e){e.schema=RE({method:J(`wallet_getBalances`),params:Y(X(_E([q({account:Y(Z()),chainId:Y(VE()),tokens:Y(X(K(Z())))})]))),returns:X(K(q({address:Z(),balance:BE(),decimals:$T(),display:G(),name:G(),symbol:G()})))})})(oD||={});var sD;(function(e){e.schema=RE({method:J(`wallet_getCapabilities`),params:Y(X(pE([_E([Z()]),_E([Z(),X(K(Q()))])]))),returns:yE(Q(),q({accessKeys:Y(q({status:pE([J(`supported`),J(`unsupported`)])})),atomic:q({status:pE([J(`supported`),J(`ready`),J(`unsupported`)])}),feePayer:Y(q({status:pE([J(`supported`),J(`unsupported`)])}))}))})})(sD||={});var cD;(function(e){e.parameters=q({address:Y(Z()),chainId:Y(BE()),expiry:$T(),keyType:Y(GE),limits:Y(X(K(q({token:Z(),limit:BE(),period:Y($T())})))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(pE([Q(),G()])),recipients:Y(X(K(Z())))}))))}),e.returns=q({keyAuthorization:KE,rootAddress:Z()}),e.schema=RE({method:J(`wallet_authorizeAccessKey`),params:X(_E([e.parameters])),returns:e.returns})})(cD||={});var lD;(function(e){e.parameters=q({address:Y(Z()),expiry:$T(),keyType:Y(GE),limits:X(K(q({token:Z(),limit:BE(),period:Y($T())}))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(pE([Q(),G()])),recipients:Y(X(K(Z())))}))))})})(lD||={});var uD;(function(e){e.schema=RE({method:J(`wallet_revokeAccessKey`),params:X(_E([q({address:Z(),accessKeyAddress:Z()})])),returns:void 0})})(uD||={});var dD;(function(e){e.authorizeAccessKey=Y(cD.parameters),e.auth=Y(pE([G(),q({url:Y(G()),challenge:Y(G()),verify:Y(G()),logout:Y(G()),returnToken:Y(tE())})])),e.personalSign=Y(q({message:G()})),e.capabilities={request:Y(pE([q({digest:Y(Q()),authorizeAccessKey:e.authorizeAccessKey,auth:e.auth,method:J(`register`),name:Y(G()),personalSign:e.personalSign,userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:e.authorizeAccessKey,auth:e.auth,method:Y(J(`login`)),personalSign:e.personalSign,selectAccount:Y(tE())})])),result:q({email:Y(DE(G())),keyAuthorization:Y(KE),personalSign:Y(q({message:G()})),signature:Y(Q()),username:Y(DE(G())),auth:Y(q({token:Y(G())}))})},e.schema=RE({method:J(`wallet_connect`),params:Y(X(_E([q({capabilities:e.capabilities.request,chainId:Y(VE()),version:Y(G())})]))),returns:q({accounts:X(K(q({address:Z(),capabilities:e.capabilities.result})))})})})(dD||={});var fD;(function(e){let t=Y(lD.parameters),n=dD.auth,r=dD.personalSign;e.parameters=q({capabilities:Y(pE([q({digest:Y(Q()),authorizeAccessKey:t,auth:n,method:J(`register`),name:Y(G()),personalSign:r,userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:t,auth:n,method:Y(J(`login`)),personalSign:r,selectAccount:Y(tE())})])),chainId:Y(VE()),version:Y(G())})})(fD||={});var pD;(function(e){e.schema=RE({method:J(`wallet_disconnect`),params:void 0,returns:void 0})})(pD||={});var mD;(function(e){e.schema=RE({method:J(`wallet_getCallsStatus`),params:Y(X(_E([G()]))),returns:q({atomic:tE(),chainId:VE(),id:G(),receipts:Y(K(UE)),status:$T(),version:G()})})})(mD||={});var hD;(function(e){e.parameters=q({feePayer:Y(pE([tE(),G()])),to:Y(Z()),token:Y(Z()),value:Y(G())}),e.schema=RE({method:J(`wallet_send`),params:Y(X(_E([e.parameters]))),returns:q({chainId:VE(),receipt:UE})})})(hD||={});let gD=q({amount:Y(G()),pairToken:Y(Z()),slippage:Y($T().check(WT(0),UT(1))),token:Y(Z()),type:Y(pE([J(`buy`),J(`sell`)]))});var _D;(function(e){e.schema=RE({method:J(`wallet_swap`),params:Y(X(_E([gD]))),returns:q({receipt:UE})})})(_D||={});var vD;(function(e){e.schema=RE({method:J(`wallet_switchEthereumChain`),params:X(_E([q({chainId:VE()})])),returns:void 0})})(vD||={});var yD;(function(e){e.schema=RE({method:J(`wallet_deposit`),params:X(_E([q({address:Y(Z()),chainId:Y(VE()),displayName:Y(G()),token:Y(Z()),value:Y(G())})])),returns:Y(q({receipts:Y(X(K(UE)))}))})})(yD||={});var bD;(function(e){e.parameters=q({amount:Y(G()),feePayer:Y(pE([tE(),G()])),token:Y(Z()),zoneId:Y(VE())}),e.schema=RE({method:J(`wallet_depositZone`),params:Y(X(_E([e.parameters]))),returns:q({receipt:UE})})})(bD||={});var xD;(function(e){e.parameters=q({amount:Y(G()),token:Y(Z()),zoneId:Y(VE())}),e.schema=RE({method:J(`wallet_withdrawZone`),params:Y(X(_E([e.parameters]))),returns:q({receipt:UE})})})(xD||={}),lD.parameters,fD.parameters;let SD=zE([YE.schema,XE.schema,$E.schema,ZE.schema,QE.schema,tD.schema,eD.schema,nD.schema,rD.schema,cD.schema,dD.schema,yD.schema,bD.schema,pD.schema,oD.schema,mD.schema,sD.schema,uD.schema,hD.schema,aD.schema,_D.schema,vD.schema,xD.schema]),CD=tw();function wD(e){return e.params?q({method:e.method,params:e.params}):q({method:e.method})}let TD=hE(`method`,SD.map(wD));function ED(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 DD=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},OD=class extends DD{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 DD{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.`)}},kD=class extends DD{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 AD(e,t){if(!e)throw new OD({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new OD({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new kD({expires:e})}function jD(e){let t=db(e);return JSON.parse(t)}function MD(e){return lb(wf(e),{pad:!1,url:!0})}function ND(){return G().check(qT(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function PD(){return G().check(qT(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function FD(e=`Invalid ISO 8601 datetime`){return kE(pE([PD(),IE(e=>e instanceof Date)]),wE(ID)).check(LE(e=>Number.isFinite(e.getTime()),e))}function ID(e){return e instanceof Date?e:new Date(e)}function LD(e){return e instanceof Date?Number.isFinite(e.getTime())?e.toISOString():`Invalid Date`:e}function RD(){return G().check(qT(/^0x[0-9a-fA-F]{40}$/,`Invalid address`))}function zD(){return G().check(qT(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function BD(){return G().check(qT(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let VD=q({description:Y(G()),digest:Y(G().check(qT(/^sha-256=/,`Invalid digest format`))),expires:Y(PD()),id:G(),intent:G(),method:G(),meta:Y(yE(G(),G())),opaque:Y(G()),realm:G(),request:yE(G(),lE())});function HD(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires?LD(e.expires):void 0,d=e.opaque??(i===void 0?void 0:MD(i)),f=l?tO({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return VD.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 UD(e,t){let n=WD(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=GD(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 HD({...a,request:jD(r),...i&&{opaque:i}},t)}function WD(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(!JD(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 GD(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]=KD(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function KD(e,t){if(e[t]===`\"`)return qD(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function qD(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 JD(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 YD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return UD(n,t)}function XD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return YD(e.headers,t)}function ZD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return QD(e.headers,t)}function QD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return $D(n,t)}function $D(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 UD(e.slice(r,a).replace(/,\\s*$/,``),t)})}function eO(e){return[e.realm,e.method,e.intent,MD(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?MD(e.meta):``)].join(`|`)}function tO(e,t){let n=eO(e);return sb(Wg(Pf(t.secretKey),Pf(n),{as:`Bytes`}),{url:!0,pad:!1})}function nO(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=sO(n)}return t}function rO(e,t){let n=nO(e),r=pO(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[sO(e)]??1,index:t}));return{definition:r,entries:i,header:aO(i),keys:n}}function iO(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)=>dO(e,t))}function aO(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${_O(n)}`}).join(`, `)}function oO(e,t,n){let r=new Map;for(let e of t){let t=sO(e);r.has(t)||r.set(t,e)}return e.map((e,t)=>{let i=r.get(sO(e));if(!i)return;let a=cO(e,n);if(!(!a||a.q<=0))return{challenge:e,index:t,match:a,method:i}}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(e=>{let{match:t,...n}=e;return n})}function sO(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function cO(e,t){let n;for(let r of t){if(!lO(e,r))continue;let t={...r,specificity:uO(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 lO(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function uO(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function dO(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}`);vO(r,`method`),vO(i,`intent`);let a=1;for(let t of fO(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=hO(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function fO(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function pO(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>sO(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]=mO(t,`payment preference \"${e}\"`)}return a}function mO(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return gO(e,t)}function hO(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 gO(Number(e),t)}function gO(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 _O(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function vO(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let yO=Symbol.for(`mppx.fetch.wrapper`),bO;function xO(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a,orderChallenges:o}=e,s=e.eventDispatcher??wO(),c=t??rO(i),l=UO(r),u=async(e,t)=>{let r=HO(e,t?.headers),u=r.has(`Accept-Payment`),d=KO(r,c),f=VO(e,t,r,d.header,u,n),p=await l(f.input,f.init);if(p.status!==402)return p;let m=t?.context,{context:h,orderChallenges:g,..._}=f.init??{},v,y,b;try{y=ZD(p);let n=(await qO(oO(y,i,d.entries),g??o))[0];if(!n)throw Error(`No method found for challenges: ${y.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let r=n.challenge;v=r,b=n.method,v.expires&&AD(v.expires,v.id);let c=OO(e=>GO(r,n.method,e??m)),u=await s.emit(`challenge.received`,kO({challenge:r,challenges:y,createCredential:c,init:t,input:e,method:n.method,response:p}))??(a?await a(v,{createCredential:c}):void 0)??await c();WO(u),await s.emit(`credential.created`,AO({challenge:r,credential:u,init:t,input:e,method:n.method,response:p}));let h=await l(f.input,{..._,headers:BO(f.headers,u)});return h.ok&&await s.emit(`payment.response`,jO({challenge:r,credential:u,init:t,input:e,method:n.method,response:h})),h}catch(n){throw await s.emit(`payment.failed`,MO({challenge:v,challenges:y,error:n,init:t,input:e,method:b,response:p})),n}};return u[yO]=l,u}function SO(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);bO||=globalThis.fetch,globalThis.fetch=xO({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(XO()?`same-origin`:`always`),fetch:globalThis.fetch})}function CO(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 wO(){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 TO(t,n);if(typeof e==`string`&&e.length>0){r=e;break}}return await DO(e[`*`],t,n),r}case`credential.created`:await EO(e[`credential.created`],n),await DO(e[`*`],t,n);return;case`payment.failed`:await EO(e[`payment.failed`],n),await DO(e[`*`],t,n);return;case`payment.response`:await EO(e[`payment.response`],n),await DO(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 TO(e,t){try{return await e(t)}catch{return}}async function EO(e,t){for(let n of e)try{await n(t)}catch{}}async function DO(e,t,n){await EO(e,Object.freeze({name:t,payload:n}))}function OO(e){let t;return n=>(t??=e(n),t)}function kO(e){return Object.freeze({challenge:LO(e.challenge),challenges:e.challenges.map(e=>LO(e)),createCredential:e.createCredential,init:NO(e.init),input:PO(e.input),method:FO(e.method),response:IO(e.response)})}function AO(e){return Object.freeze({challenge:LO(e.challenge),credential:e.credential,init:NO(e.init),input:PO(e.input),method:FO(e.method),...e.response===void 0?{}:{response:IO(e.response)}})}function jO(e){return Object.freeze({challenge:LO(e.challenge),credential:e.credential,init:NO(e.init),input:PO(e.input),method:FO(e.method),response:IO(e.response)})}function MO(e){return Object.freeze({...e.challenge?{challenge:LO(e.challenge)}:{},...e.challenges?{challenges:e.challenges.map(e=>LO(e))}:{},error:e.error,init:NO(e.init),input:PO(e.input),...e.method?{method:FO(e.method)}:{},...e.response===void 0?{}:{response:IO(e.response)}})}function NO(e){if(e)return zO({...e,...e.headers?{headers:new Headers(e.headers)}:{}})}function PO(e){return e instanceof Request?e.clone():e instanceof URL?new URL(e):e}function FO(e){return zO(Object.assign({},e))}function IO(e){return e instanceof Response?e.clone():LO(e)}function LO(e){try{return RO(structuredClone(e))}catch{return zO(e)}}function RO(e){if(!e||typeof e!=`object`||Object.isFrozen(e))return e;Object.freeze(e);for(let t of Object.values(e))RO(t);return e}function zO(e){return!e||typeof e!=`object`||Object.isFrozen(e)||Object.freeze(e),e}function BO(e,t){let n=CO(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function VO(e,t,n,r,i,a){let o=!!r&&!i&&JO(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 HO(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function UO(e){let t=e;for(;t[yO];)t=t[yO];return t}function WO(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 GO(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 KO(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:iO(n),header:n}}catch{return t}}async function qO(e,t){return t?t(e):e}function JO(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=ZO(e);return t===`same-origin`?XO()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>YO(n,e))}function YO(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 XO(){return globalThis.location!==void 0}function ZO(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,XO()?globalThis.location.href:void 0)}var QO=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},$O=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function ek(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new QO;try{let e=db(t[1]),n=JSON.parse(e),{opaque:r,request:i,meta:a,...o}=n.challenge,{meta:s,opaque:c}=tk(r);return{challenge:VD.parse({...o,...s!==void 0&&{meta:s},...c!==void 0&&{opaque:c},request:jD(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new $O}}function tk(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!nk(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:MD(e)}}function nk(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function rk(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:MD(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:MD(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${lb(JSON.stringify(o),{pad:!1,url:!0})}`}function ik(e){return e}function ak(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}let ok=new Map;async function sk(e){ok.set(e,(ok.get(e)??0)+1),await Promise.resolve();let t=(ok.get(e)??0)>1;return queueMicrotask(()=>{let t=ok.get(e)??0;t<=1?ok.delete(e):ok.set(e,t-1)}),t}od(),ed();let ck={blockTime:1e3,extendSchema:Dh(),formatters:{transaction:hd({exclude:[`aaAuthorizationList`],format:dC}),transactionReceipt:Xm({format:fC}),transactionRequest:$u({format:pC})},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 sk(e):!1})()?(n.nonceKey=ad,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)=>gS(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=qb(i);if(a.type!==`keychain`){let i=await oh(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return $b(a,{address:n,payload:r})}}return await T(e,by,`verifyHash`)({...t,chain:null})}},lk=Eh({...ck,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`]}}}),uk=Eh({...ck,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`]}}}),dk=Eh({...ck,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),fk=Eh({...ck,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 pk(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 ya(r)}}function mk(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=ah({chain:i.chain,transport:XC(Py(e),Py(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?XC(Py(a),Py(n)):Py(a);return ah({chain:{...t,id:r},transport:o})}}let hk={mainnet:4217,testnet:42431},gk={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};hk.mainnet,gk.usdc,hk.testnet,gk.pathUsd;let _k={[hk.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[hk.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},vk={[hk.mainnet]:`https://rpc.tempo.xyz`,[hk.testnet]:`https://rpc.moderato.tempo.xyz`},yk=[`push`,`pull`],bk=q({amount:ND(),memo:Y(zD()),recipient:kE(G(),wE(e=>e))}),xk=(1n<<64n)-1n,Sk={dev_second:1n,day:86400n,week:604800n},Ck=kE(RD(),wE(e=>e.toLowerCase())),wk=q({accessKeyAddress:Ck,keyType:xE([`p256`,`secp256k1`,`webAuthn`])}),Tk=q({accessKey:Y(wk),chainId:Y($T())}),Ek=FD(`subscriptionExpires must be a valid date`).check(LE(e=>e.getTime()%1e3==0,`subscriptionExpires must be representable as whole seconds`)),Dk=xE([`dev_second`,`day`,`week`]),Ok=kE(pE([G(),rE(),IE(e=>typeof e==`number`&&Number.isSafeInteger(e))]),wE(e=>e.toString())).check(qT(/^[1-9]\\d*$/,`Invalid periodCount`),LE(e=>{try{return BigInt(e)<=xk}catch{return!1}},`periodCount exceeds uint64`));function kk(e){return LE(e=>{let{amount:t,decimals:n}=e;return ry(t,n)>0n},e)}function Ak(e){let{periodCount:t,periodUnit:n}=e;try{let e=Sk[n];return e===void 0?!1:BigInt(t)*e<=xk}catch{return!1}}let jk=ik({name:`tempo`,intent:`charge`,schema:{credential:{payload:hE(`type`,[q({hash:zD(),type:J(`hash`)}),q({signature:BD(),type:J(`transaction`)}),q({signature:BD(),type:J(`proof`)})])},request:kE(q({amount:ND(),chainId:Y($T()),currency:G(),decimals:$T(),description:Y(G()),externalId:Y(G()),feePayer:Y(kE(pE([tE(),IE()]),wE(e=>typeof e==`object`?!0:e))),memo:Y(zD()),recipient:Y(G()),splits:Y(K(bk).check(KT(1),GT(10))),supportedModes:Y(K(xE(yk)).check(KT(1)))}).check(LE(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=ry(e,t),i=n.reduce((e,n)=>e+ry(n.amount,t),0n);return n.every(e=>ry(e.amount,t)>0n)&&i<r},`Invalid splits`)),wE(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:ry(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:ry(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),Mk=ik({name:`tempo`,intent:`session`,schema:{credential:{payload:hE(`action`,[q({action:J(`open`),authorizedSigner:Y(G()),channelId:zD(),cumulativeAmount:ND(),signature:BD(),transaction:BD(),type:J(`transaction`)}),q({action:J(`topUp`),additionalDeposit:ND(),channelId:zD(),transaction:BD(),type:J(`transaction`)}),q({action:J(`voucher`),channelId:zD(),cumulativeAmount:ND(),signature:BD()}),q({action:J(`close`),channelId:zD(),cumulativeAmount:ND(),signature:BD()})])},request:kE(q({amount:ND(),chainId:Y($T()),channelId:Y(zD()),currency:G(),decimals:$T(),escrowContract:Y(G()),feePayer:Y(kE(pE([tE(),IE()]),wE(e=>typeof e==`object`?!0:e))),minVoucherDelta:Y(ND()),recipient:Y(G()),suggestedDeposit:Y(ND()),unitType:G()}).check(LE(({amount:e,decimals:t})=>ry(e,t)>0n,`Session amount must be greater than 0`)),wE(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:ry(e,r).toString(),...s?{suggestedDeposit:ry(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:ry(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}}),Nk=ik({name:`tempo`,intent:`subscription`,schema:{credential:{payload:q({signature:BD(),type:J(`keyAuthorization`)})},request:kE(q({amount:ND(),accessKey:Y(wk),chainId:Y($T()),currency:Ck,decimals:$T(),description:Y(G()),externalId:Y(G()),methodDetails:Y(Tk),periodCount:Ok,periodUnit:Dk,recipient:Ck,subscriptionExpires:Ek}).check(kk(`Subscription amount must be greater than 0`),LE(Ak,`Subscription period exceeds uint64`)),wE(({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:ry(t,r).toString(),subscriptionExpires:a.toISOString(),...Object.keys(s).length>0?{methodDetails:s}:{}}}))}}),Pk=(1n<<64n)-1n,Fk={dev_second:1n,day:86400n,week:604800n};function Ik(e){return e instanceof Date?e:new Date(e)}function Lk(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 Rk(e){if(!/^[1-9]\\d*$/.test(e.periodCount))throw new $({reason:`periodCount is invalid`});let t=Fk[e.periodUnit];if(t===void 0)throw new $({reason:`periodUnit is invalid`});let n=BigInt(e.periodCount)*t;if(n>Pk)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 zk(e){let{challengeExpires:t,request:n}=e;Rk(n);let r=Lk(Ik(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 Bk(e){return[{address:Qk(e.currency,`currency`),selector:`0x95777d59`,recipients:[Qk(e.recipient,`recipient`)]}]}async function Vk(e){let{accessKey:t,account:n,chainId:r,request:i}=e;if(typeof n.sign!=`function`)return;let a=Uk({accessKey:t,chainId:r,request:i});return hx(a,{signature:Jb(await n.sign({hash:vx(a)}))})}function Hk(e){let{accessKey:t,chainId:n,payload:r,request:i}=e;if(r.type!==`keyAuthorization`)throw new $({reason:`invalid keyAuthorization payload`});let a=Wk(r.signature),o=Gk(a);return Kk({accessKey:t,authorization:a,chainId:n}),qk(a,i),Yk(Jk(a),i),Xk(a.scopes,i),{authorization:a,source:{address:Zk(a,o),chainId:n}}}function Uk(e){let{accessKey:t,chainId:n,request:r}=e;return hx({address:Qk(t.accessKeyAddress,`accessKeyAddress`),chainId:BigInt(n),expiry:Lk(Ik(r.subscriptionExpires)),limits:[{token:Qk(r.currency,`currency`),limit:BigInt(r.amount),period:Rk(r)}],scopes:Bk(r),type:t.keyType})}function Wk(e){try{return yx(e)}catch{throw new $({reason:`invalid keyAuthorization payload`})}}function Gk(e){let t=e.signature;if(!t||t.type===`keychain`)throw new $({reason:`keyAuthorization must use a primitive signature`});return t}function Kk(e){let{accessKey:t,authorization:n,chainId:r}=e;if(n.chainId!==BigInt(r))throw new $({reason:`keyAuthorization chainId mismatch`});if(t){if(!Kd(n.address,Qk(t.accessKeyAddress,`accessKeyAddress`)))throw new $({reason:`keyAuthorization access key mismatch`});if(n.type!==t.keyType)throw new $({reason:`keyAuthorization key type mismatch`})}}function qk(e,t){if(zk({request:t}),e.expiry!==Lk(Ik(t.subscriptionExpires)))throw new $({reason:`keyAuthorization expiry mismatch`})}function Jk(e){let[t]=e.limits??[];if(!t||e.limits?.length!==1)throw new $({reason:`keyAuthorization must contain exactly one token limit`});return t}function Yk(e,t){if(!Kd(e.token,Qk(t.currency,`currency`)))throw new $({reason:`keyAuthorization currency mismatch`});if(e.limit!==BigInt(t.amount))throw new $({reason:`keyAuthorization amount mismatch`});if(e.period!==Rk(t))throw new $({reason:`keyAuthorization period mismatch`})}function Xk(e,t){if(!e||e.length!==1)throw new $({reason:`keyAuthorization must contain a recipient-scoped transferWithMemo call`});let n=Qk(t.currency,`currency`),r=Qk(t.recipient,`recipient`),i=new Set;for(let t of e){if(!Kd(t.address,n))throw new $({reason:`keyAuthorization call target mismatch`});let e=$k(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||!Kd(t.recipients[0],r))throw new $({reason:`keyAuthorization recipient mismatch`})}if(!i.has(`0x95777d59`))throw new $({reason:`keyAuthorization must allow transferWithMemo`})}function Zk(e,t){let n=vx(e);try{let e=Gb({payload:n,signature:t});if(!$b(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 Qk(e,t){if(!Li(e))throw new $({reason:`${t} must be an address`});return e.toLowerCase()}function $k(e){return typeof e==`string`?e.toLowerCase():``}let eA=q({accessKey:Y(IE()),account:Y(IE())});function tA(e={}){let t=mk({chain:lk,getClient:e.getClient,rpcUrl:vk}),n=pk({account:e.account});return ak(Nk,{context:eA,async createCredential({challenge:r,context:i}){let a=r.request.methodDetails?.chainId??hk.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.\");rA(r.request),await e.validateRequest?.(r.request);let l=await nA(o,{accessKey:c,account:s,chainId:a,request:r.request});if(!Kd(Hk({accessKey:c,chainId:a,payload:{signature:xx(l),type:`keyAuthorization`},request:r.request}).source.address,s.address))throw Error(`keyAuthorization signer does not match the selected account`);return rk({challenge:r,payload:{signature:xx(l),type:`keyAuthorization`},source:`did:pkh:eip155:${a}:${s.address.toLowerCase()}`})}})}async function nA(e,t){let{accessKey:n,account:r,chainId:i,request:a}=t;return await Vk({accessKey:n,account:r,chainId:i,request:a})||gx((await e.request({method:`wallet_authorizeAccessKey`,params:[{address:n.accessKeyAddress,expiry:Lk(Ik(a.subscriptionExpires)),keyType:n.keyType,limits:[{token:a.currency,limit:I(BigInt(a.amount)),period:Rk(a)}],scopes:Bk(a)}]})).keyAuthorization)}function rA(e){Rk(e),Lk(Ik(e.subscriptionExpires))}let iA=L(Ug(Pf(`mpp`),{as:`Hex`}),0,4);function aA(e){return dp(L(Ug(Pf(e),{as:`Hex`}),0,10))}function oA(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(dp(iA),0),i[4]=1,i.set(aA(t),5),n&&i.set(aA(n),15),i.set(sA(r),25),F(i)}function sA(e){return dp(L(Ug(Pf(e),{as:`Hex`}),0,7))}function cA(e,t){return e.toLowerCase()===t.toLowerCase()}let lA=[gk.pathUsd,gk.usdc];async function uA(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!cA(e,i)),c=await Promise.allSettled([Mm(e,XS.call({account:n,token:i})),...s.map(t=>Mm(e,XS.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 PS(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[WS.call({token:l,spender:OS,amount:e}),kS.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new fA({currency:i})}}function dA(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>cA(e,t)))]:t,slippage:e.slippage??1}:!1}var fA=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function pA(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 mA={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function hA(e){return{name:`MPP`,version:`2`,chainId:e}}function gA(e,t){return{challengeId:e,realm:t}}function _A(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}function vA(e={}){let{clientId:t}=e,n=mk({chain:lk,getClient:e.getClient,rpcUrl:vk}),r=pk({account:e.account});return ak(jk,{context:q({account:Y(IE()),autoSwap:Y(IE()),mode:Y(xE(yk))}),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 rk({challenge:i,payload:{signature:await Ay(s,{account:c,domain:hA(o),types:mA,primaryType:`Proof`,message:gA(i.id,i.realm)}),type:`proof`},source:_A({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:oA({challengeId:i.id,clientId:t,serverId:i.realm}),g=pA({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>sC.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=dA(a?.autoSwap??e.autoSwap,lA),v=[...(_?await uA(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 Oy(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return rk({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Wd(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,rk({challenge:i,payload:{signature:await ky(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function yA(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let bA={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function xA(e,t,n,r,i,a){let o=await Ay(e,{account:t,domain:yA(r,i),types:bA,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=Jb(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return yv(e.inner.signature)}catch{}return o}function SA(e){return Ug(W_(K_([`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 CA=[{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 wA(e,t,n){return Mm(e,{address:t,abi:CA,functionName:`getChannel`,args:[n]})}ha({abi:CA,name:`open`}),ha({abi:CA,name:`topUp`});function TA(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??_k[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function EA(e,t,n,r){return rk({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function DA(e,t,n,r,i,a,o){let s=await xA(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function OA(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=sp(32),f=SA({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=wa({abi:B,functionName:`approve`,args:[r,o]}),m=wa({abi:CA,functionName:`open`,args:[i,a,o,d,u]}),h=await Wd(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await ky(e,h),_=await xA(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 kA(e,t,n,r){try{let i=await wA(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 AA=q({account:Y(IE()),action:Y(xE([`open`,`topUp`,`voucher`,`close`])),channelId:Y(G()),cumulativeAmount:Y(ND()),cumulativeAmountRaw:Y(G()),transaction:Y(G()),authorizedSigner:Y(G()),additionalDeposit:Y(ND()),additionalDepositRaw:Y(G()),depositRaw:Y(G())});function jA(e={}){let{decimals:t=6}=e,n=mk({chain:lk,getClient:e.getClient,rpcUrl:vk}),r=pk({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:ry(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return TA(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return ry(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 kA(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?ry(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 ne;if(w?.opened)w.cumulativeAmount+=b,ne=await DA(g,f,w.channelId,w.cumulativeAmount,_,h,te),l(w);else{let e=await OA(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,_),ne=e.payload,l(e.entry)}return EA(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?ry(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?ry(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 xA(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 DA(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 xA(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 EA(e,S,u,r)}return ak(Mk,{context:AA,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 MA(e){let t=db(e);return JSON.parse(t)}function NA(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 PA(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function FA(){return JSON.stringify({mpp:`payment-close-request`})}function IA(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`&&LA(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`&&RA(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&LA(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function LA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function RA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let zA={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function BA(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:ry(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,_=jA({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=xO({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e},orderChallenges:e.orderChallenges});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 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 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?MA(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=zA.CLOSED,r=null}if(e===`open`&&(i=zA.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:{...CO(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=NA(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(r,s){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:f,protocols:m,signal:v}=s??{},b=new URL(r.toString()),S=new URL(b.toString());S.protocol===`ws:`&&(S.protocol=`http:`),S.protocol===`wss:`&&(S.protocol=`https:`),o=S.toString();let ne=await t(S,v?{signal:v}:void 0);if(ne.status!==402)throw Error(`Expected a 402 payment challenge from ${S}, received ${ne.status} instead.`);let ie=(await VA(oO(ZD(ne),[_],rO([_]).entries),s?.orderChallenges??e.orderChallenges))[0]?.challenge;if(!ie)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=ie;let ae=await _.createCredential({challenge:ie,context:{}});d=null,c=ie,h=0n,g=BigInt(ie.request.amount);let se=ek(ae);l=se.payload.channelId;let ce=new n(b,m);u=ce;let le=oe(ce),ue=e=>{C(Error(e)),w(Error(e)),(ce.readyState===zA.CONNECTING||ce.readyState===zA.OPEN)&&ce.close(3008,e)},de=e=>e.challengeId===ie.id&&e.channelId===l,fe=new Promise((e,t)=>{let n=()=>{ce.removeEventListener(`error`,r),le.emit(`open`,{type:`open`}),e()},r=()=>{ce.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${b} failed to open.`))};ce.addEventListener(`open`,n,{once:!0}),ce.addEventListener(`error`,r,{once:!0})});return ce.addEventListener(`close`,e=>{u===ce&&(u=null),c===ie&&(c=null),l===se.payload.channelId&&(l=null),p=null,C(Error(`WebSocket closed before the payment flow completed.`)),w(Error(`WebSocket closed before the payment flow completed.`)),le.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),ce.addEventListener(`error`,()=>{le.emit(`error`,{type:`error`})}),ce.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=IA(t);if(!n){le.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,le.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!de(n.data)){ue(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){ue(`received payment-close-ready beyond local voucher state`);break}y(n.data),f?.(n.data),te(n.data),le.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){ue(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){ue(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ie,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});ce.send(PA(r));break}case`payment-receipt`:if(!de(n.data)){ue(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){ue(`received mismatched payment-close receipt frame`);break}y(n.data),f?.(n.data),ee(n.data);break}}),v&&v.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),w(Error(`WebSocket payment flow aborted.`)),ce.close()},{once:!0}),await fe,ce.send(PA(ae)),await x(),le.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===zA.OPEN){let t=d??await(async()=>(u.send(FA()),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(PA(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?MA(m):void 0}}}async function VA(e,t){let n=t;return n?n(e):e}function HA(e={}){return[vA(e),jA(e)]}(function(e){e.charge=vA,e.session=BA,e.subscription=tA})(HA||={});function UA(e){return e}function WA(){return UA({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return ZD(e)},getChallenge(e){return XD(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function GA(e){let{onChallenge:t,orderChallenges:n,polyfill:r=!0,acceptPaymentPolicy:i=r&&globalThis.location!==void 0?`same-origin`:`always`,transport:a=WA()}=e,o=e.fetch??globalThis.fetch,s=e.methods.flat(),c=rO(s,e.paymentPreferences),l=wO(),u=t,d={acceptPayment:c,acceptPaymentPolicy:i,...e.fetch&&{fetch:e.fetch},eventDispatcher:l,...u&&{onChallenge:u},...n&&{orderChallenges:n},methods:s},f=xO(d);r&&SO(d);function p(e){return l.on(`challenge.received`,e)}function m(e){return l.on(`credential.created`,e)}function h(e){return l.on(`payment.failed`,e)}function g(e){return l.on(`payment.response`,e)}return{fetch:f,rawFetch:o,methods:s,transport:a,on:l.on,onChallengeReceived:p,onCredentialCreated:m,onPaymentFailed:h,onPaymentResponse:g,async createCredential(e,t,r){let i=a.getChallenges?a.getChallenges(e):[a.getChallenge(e)],o=tj(c.entries,r?.acceptPayment),u,d;try{let a=(await nj(oO(i,s,o),r?.orderChallenges??n))[0];if(!a)throw Error(`No method found for challenges: ${i.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${s.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let c=a.challenge;u=c,d=a.method,u.expires&&AD(u.expires,u.id);let f=KA(e=>rj(c,d,e??t)),p=await l.emit(`challenge.received`,qA({challenge:c,challenges:i,createCredential:f,method:d,response:e}))??await f();return WO(p),await l.emit(`credential.created`,JA({challenge:c,credential:p,method:d,response:e})),p}catch(t){throw await l.emit(`payment.failed`,YA({challenge:u,challenges:i,error:t,method:d,response:e})),t}}}}function KA(e){let t;return n=>(t??=e(n),t)}function qA(e){return Object.freeze({challenge:QA(e.challenge),challenges:e.challenges.map(e=>QA(e)),createCredential:e.createCredential,method:XA(e.method),response:ZA(e.response)})}function JA(e){return Object.freeze({challenge:QA(e.challenge),credential:e.credential,method:XA(e.method),response:ZA(e.response)})}function YA(e){return Object.freeze({...e.challenge?{challenge:QA(e.challenge)}:{},...e.challenges?{challenges:e.challenges.map(e=>QA(e))}:{},error:e.error,...e.method?{method:XA(e.method)}:{},response:ZA(e.response)})}function XA(e){return ej(Object.assign({},e))}function ZA(e){return e instanceof Response?e.clone():QA(e)}function QA(e){try{return $A(structuredClone(e))}catch{return ej(e)}}function $A(e){if(!e||typeof e!=`object`||Object.isFrozen(e))return e;Object.freeze(e);for(let t of Object.values(e))$A(t);return e}function ej(e){return!e||typeof e!=`object`||Object.isFrozen(e)||Object.freeze(e),e}function tj(e,t){return t?typeof t==`string`?iO(t):t:e}async function nj(e,t){return t?t(e):e}async function rj(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 ij(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 aj(e={}){let{account:t}=e,n=await dS();return{accessKey:wS(n,t?{access:t}:void 0),keyPair:n}}function oj(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 sj(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 cj(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 lj(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 MC({message:`Account \"${n}\" not found.`}):new PC({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(fj(t,e))return uj(t)}}return dj(l,{signable:r})}function uj(e){if(`keyPair`in e&&e.keyPair)return wS(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return SS(e.privateKey,{access:e.access});case`p256`:return xS(e.privateKey,{access:e.access})}throw new MC({message:`External access key cannot be hydrated for signing.`})}function dj(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 MC({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return SS(e.privateKey);case`p256`:return xS(e.privateKey);case`webCrypto`:return wS(e.keyPair);case`webAuthn`:return CS(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return bS(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new MC({message:`Unknown key type.`})}}function fj(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:my(e.selector)).toLowerCase():!0:!1)})}function pj(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function mj(e={}){let{dialog:t=ee()?ae():ie(),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.`),pj({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=JC();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 jC);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new jC({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=GC({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:CD});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await aj();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){cj({address:e,keyAuthorization:gx(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=ij(n,{store:i});try{let e=await t(n,r??void 0);return sj(n,{store:i}),e}catch(e){if((e instanceof Error?$C(e):void 0)?.errorName===`InsufficientBalance`)return;console.warn(`[accounts] silent sign with access key failed, removing key:`,e),oj(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()},forwardsAuth:!0,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:Lw(dD.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}:{},...r[0]?.capabilities.personalSign?{personalSign:r[0].capabilities.personalSign}:{}}},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:Lw(dD.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}:{},...r[0]?.capabilities.personalSign?{personalSign:r[0].capabilities.personalSign}:{}}},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 Wd(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:[Lw(JE,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 Wd(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:[Lw(JE,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 Wd(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:[Lw(JE,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[Lw(dD.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:[Lw(hD.parameters,e)]})},async swap(e,t){return await l.request(t)},async depositZone(e,t){return await l.request({...t,params:[Lw(bD.parameters,e)]})},async withdrawZone(e,t){return await l.request({...t,params:[Lw(xD.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let hj=new Map,gj=new WeakMap;function _j(e,t){let{chains:n,feePayer:r,provider:i,store:a,transports:o}=t,s=(()=>{if(r!==!1){if(typeof r==`string`)return yj(r);if(r?.url)return yj(r.url)}})(),c=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,l=e??a.getState().chainId,u=`${l}:${i?`p`:``}:${r===!1?`no-fp`:s??``}:${c}`,d=i??o,f=(()=>{if(!d)return hj;let e=gj.get(d);return e||(e=new Map,gj.set(d,e)),e})(),p=f.get(u);if(!p){let e=n.find(e=>e.id===l)??n[0],t=o?.[l]??Py(),r=i?vj(i,t):t;p=ah({chain:e,transport:s?bj(r,s,c):r,pollingInterval:1e3}),f.set(u,p)}return p}function vj(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function yj(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function bj(e,t,n){return r=>{let i=e(r),a=Py(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=hS(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 xj(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(xj.cache.get(n))return xj.cache.get(n);let r=e().finally(()=>xj.cache.delete(n));return xj.cache.set(n,r),r}xj.cache=new Map;function Sj(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function Cj(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=Sj(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let wj;function Tj(){return wj||=Cj(`keyval-store`,`keyval`),wj}function Ej(e,t=Tj()){return t(`readonly`,t=>Sj(t.get(e)))}function Dj(e,t,n=Tj()){return n(`readwrite`,n=>(n.put(t,e),Sj(n.transaction)))}function Oj(e,t=Tj()){return t(`readwrite`,t=>(t.delete(e),Sj(t.transaction)))}function kj(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 Aj(e={}){let t=typeof indexedDB<`u`?Cj(`tempo`,`store`):void 0;return kj({async getItem(e){let n=await Ej(e,t);return n===null?null:n},async setItem(e,n){await Dj(e,n,t)},async removeItem(e){await Oj(e,t)}},e)}function jj(e={}){let t=new Map;return kj({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let Mj=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 Nj(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 Pj=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return Pj(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return Pj(t)(e)}}}},Fj=(e,t)=>(n,r,i)=>{let a={storage:Nj(()=>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 Pj(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},Ij=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},Lj=(e=>e?Ij(e):Ij);function Rj(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?Aj({key:`tempo`}):jj({key:`tempo`})}=e;return Lj(Mj(Fj(()=>({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}:{},...e.auth?{auth:e.auth}:{},chainId:e.chainId}),storage:i,version:0})))}async function zj(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function Bj(e,t){let n=Fw(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new NC({message:`Unsupported method \"${t?.method}\".`}):new AC(-32602,`Invalid params: ${Vj(n.error.issues)}`)}return{...t,_decoded:n.data}}function Vj(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?Vj([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let Hj=new Set;function Uj(e={}){let{adapter:t=mj(),chains:n=[lk,fk,uk],maxAccounts:r,persistCredentials:i,relay:a,testnet:o,storage:s=typeof window<`u`?Aj():jj()}=e,c=(()=>{if(!(!a&&!e.transports))return{...a?Object.fromEntries(n.map(e=>[e.id,Py(`${a.replace(/\\/$/,``)}/${e.id}`)])):{},...e.transports}})(),l=(()=>{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}})(),u=Rj({chainId:(o?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:s}),d=(e={})=>lj({...e,store:u}),f;function p(e={}){let{chainId:t,feePayer:r}=e;return _j(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:l?.precedence}})(),store:u,transports:c})}let m=t({getAccount:d,getClient:p,storage:s,store:u}),{actions:h}=m,g=WC();u.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>g.emit(`accountsChanged`,u.getState().accounts.map(e=>e.address))),u.subscribe(e=>e.chainId,e=>g.emit(`chainChanged`,I(e))),u.subscribe(e=>e.accounts.length>0,e=>{e?g.emit(`connect`,{chainId:I(u.getState().chainId)}):g.emit(`disconnect`,new PC)});function _(){if(u.getState().accounts.length===0)throw new PC({message:`No accounts connected.`})}function v(e){if(!m.persistAccounts)return e;let t=[...e];for(let e of u.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function y(e){if(e===!1)return!1;let t=typeof e==`string`?e:l?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let b=Object.assign(GC({...g,async request({method:t,params:r}){return await zj(u),xj(async()=>{let i;try{i=Bj(TD,{method:t,params:r})}catch(e){if(!(e instanceof NC))throw e;return await _j(void 0,{chains:n,store:u,transports:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=u.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 I(u.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await h.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return u.setState({accounts:v(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{_();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 h.sendTransaction({...r,chainId:e.chainId??u.getState().chainId,...a?{calls:a}:{},feePayer:y(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=y(t.feePayer),a=e=>{let t=p({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 d({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=ij(e,{store:u});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...Sx(n)}});return sj(e,{store:u}),r}catch{return oj(e,{store:u}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{_();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 h.signTransaction({...r,chainId:e.chainId??u.getState().chainId,...a?{calls:a}:{},feePayer:y(e.feePayer)},i)}case`eth_sendTransactionSync`:{_();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 h.sendTransactionSync({...r,chainId:e.chainId??u.getState().chainId,...a?{calls:a}:{},feePayer:y(e.feePayer)},i)}case`eth_signTypedData_v4`:{_();let[e,t]=i._decoded.params;return await h.signTypedData({address:e,data:t},i)}case`personal_sign`:{_();let[e,t]=i._decoded.params;return await h.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{_();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=y(t?.feePayer??(l?!0:void 0)),s={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=P(await h.sendTransaction(s,{method:`eth_sendTransaction`,params:[Lw(JE,s)]}),ap(I(u.getState().chainId),32),Gj);return{capabilities:{sync:a},id:e}}let c=await h.sendTransactionSync(s,{method:`eth_sendTransactionSync`,params:[Lw(JE,s)]}),d=c.transactionHash,f=I(u.getState().chainId),p=P(d,ap(f,32),Gj);return{atomic:!0,capabilities:{sync:a},chainId:f,id:p,receipts:[c],status:c.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=u.getState(),a=e?.account??t[r]?.address;if(!a)throw new PC({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new DC({message:\"`tokens` is required.\"});let s=_j(e?.chainId,{chains:n,store:u,transports:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([XS(s,{account:a,token:e}),ZS(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:I(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(Gj.slice(2)))throw Error(\"`id` not supported\");tp(e);let t=L(e,0,32),r=I(Number(L(e,32,64))),a=await _j(Number(r),{chains:n,store:u,transports: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}=u.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new MC({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(I(e.id))):n,o={};for(let e of a)o[I(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...l?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&u.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),a=n?.auth??e.auth,o=a?Jj(a):void 0;if(o&&n?.personalSign)throw new DC({message:\"`auth` and `personalSign` cannot both be set on `wallet_connect`.\"});o&&(i={...i,params:[{...i.params?.[0],capabilities:{...i.params?.[0]?.capabilities,auth:o}}]});let s=o&&!m.forwardsAuth?await Xj(o,t??u.getState().chainId??0):void 0,c=s?{message:s.message}:n?.personalSign,{keyAuthorization:l,accounts:d,email:f,personalSign:p,signature:g,username:_}=await(async()=>{if(n?.method===`register`){let e=n.name?u.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await h.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r,...c?{personalSign:c}:{}},i):await h.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??sp(16),...c?{personalSign:c}:{}},i)}return await h.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount,...c?{personalSign:c}:{}},i)})();u.setState({accounts:v(d),activeAccount:0,auth:o&&typeof o==`object`?o:void 0});let y=d[0]?.address,b=o&&typeof o==`object`?o.verify:void 0,x=s?.message??p?.message,S=o&&b&&x&&g&&y?await Zj(o,{address:y,message:x,signature:g}):void 0;return{accounts:d.map(e=>({address:e.address,capabilities:e.address===y?{...l?{keyAuthorization:{...l,address:l.keyId}}:{},...g?{signature:g}:{},...f===void 0?{}:{email:f},..._===void 0?{}:{username:_},...S?{auth:S}:{},...p?{personalSign:{message:p.message}}:{}}:{}}))}}case`wallet_disconnect`:{let t=(()=>{let t=u.getState().auth;if(t?.logout)return t.logout;if(e.auth)try{let t=Jj(e.auth);return typeof t==`object`?t.logout:void 0}catch{return}})();t&&await fetch(t,{method:`POST`,credentials:`include`}).catch(()=>{}),await h.disconnect?.(),u.setState({accessKeys:[],accounts:[],activeAccount:0,auth:void 0});return}case`wallet_authorizeAccessKey`:{if(!h.authorizeAccessKey)throw new NC({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await h.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(_(),!h.revokeAccessKey)throw new NC({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await h.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!h.deposit)throw new NC({message:\"`deposit` not supported by adapter.\"});return await h.deposit(i._decoded.params[0],i);case`wallet_send`:{if(_(),!h.send)throw new NC({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:y(e.feePayer)}};return await h.send(t,i)}case`wallet_swap`:if(_(),!h.swap)throw new NC({message:\"`swap` not supported by adapter.\"});return await h.swap(i._decoded.params?.[0]??{},i);case`wallet_depositZone`:{if(_(),!h.depositZone)throw new NC({message:\"`depositZone` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:y(e.feePayer)}};return await h.depositZone(t,i)}case`wallet_withdrawZone`:if(_(),!h.withdrawZone)throw new NC({message:\"`withdrawZone` not supported by adapter.\"});return await h.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 RC({message:`Chain ${e} not configured.`});await h.switchChain?.({chainId:e}),u.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Ef({method:t,params:r})})}},{schema:CD}),{chains:n,getAccount:d,getClient(e={}){let{chainId:t,feePayer:r}=e;return _j(t,{chains:n,feePayer:r,provider:f,store:u,transports:c})},store:u});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;Hj.has(e)||(Hj.add(e),ED({info:{icon:t.icon??Wj,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:b}))}if(e.mpp){let{mode:t=`push`}=typeof e.mpp==`object`?e.mpp:{};GA({methods:[HA({getClient:({chainId:e})=>{let t=b.getClient({chainId:e}),n=b.getAccount();return Object.assign(t,{account:n})},mode:t})]})}return f=b,b}let Wj=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,Gj=Ug(ip(`TEMPO_5792`));function Kj(){return typeof document<`u`&&typeof document.cookie==`string`||typeof navigator<`u`&&navigator.product===`ReactNative`}function qj(e,t){let n=(()=>{if(typeof e==`string`){let n=e.endsWith(`/`)?e.slice(0,-1):e;return t===`verify`?n:`${n}/${t}`}let n=e[t];if(n)return n;if(e.url){let n=e.url.endsWith(`/`)?e.url.slice(0,-1):e.url;return t===`verify`?n:`${n}/${t}`}throw new DC({message:`\\`auth\\` capability must include either \\`url\\` or an explicit \\`${t}\\` endpoint.`})})();return n.startsWith(`http://`)||n.startsWith(`https://`)?n:typeof window<`u`?new URL(n,window.location.origin).href:n}function Jj(e){let t=typeof e==`string`||!!e.url,n=t||typeof e==`object`&&!!e.challenge,r=t||typeof e==`object`&&!!e.verify,i=t||typeof e==`object`&&!!e.logout,a={...n?{challenge:qj(e,`challenge`)}:{},...r?{verify:qj(e,`verify`)}:{},...i?{logout:qj(e,`logout`)}:{},...typeof e==`object`&&e.returnToken?{returnToken:!0}:{}};return Yj(a),a}function Yj(e){if(typeof e!=`object`)return;let t=[e.challenge,e.verify,e.logout].filter(e=>typeof e==`string`);if(t.length<2)return;let n=t.map(e=>{try{return new URL(e).origin}catch{throw new DC({message:`\\`auth\\` endpoint is not a valid URL: ${e}`})}}),r=n[0];if(n.some(e=>e!==r))throw new DC({message:\"`auth` endpoints (`challenge`, `verify`, `logout`) must share the same origin.\"})}async function Xj(e,t){let n=typeof e==`object`?e.challenge:qj(e,`challenge`),r=await fetch(n,{method:`POST`,headers:{\"content-type\":`application/json`},body:JSON.stringify({chainId:t})});if(!r.ok)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` returned ${r.status}.`});let i=await r.json().catch(()=>({}));if(!i.message)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` response missing \\`message\\`.`});let a=Ty(i.message),o=new URL(n);if(a.version!==`1`)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` returned a non-SIWE-v1 message.`});if(!a.nonce)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` response is missing a \\`nonce\\`.`});if(a.domain!==o.host)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` returned a message bound to \\`${a.domain}\\` (expected \\`${o.host}\\`).`});if(a.uri!==o.origin)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` returned a message with \\`uri\\` \\`${a.uri}\\` (expected \\`${o.origin}\\`).`});if(a.chainId!==t)throw new DC({message:`Server Authentication challenge endpoint \\`${n}\\` returned a message bound to chainId \\`${a.chainId}\\` (expected \\`${t}\\`).`});return{message:i.message}}async function Zj(e,t){let n=typeof e==`object`?e.verify:qj(e,`verify`),r=typeof e==`object`&&e.returnToken===!0||!Kj(),i=await fetch(n,{method:`POST`,credentials:`include`,headers:{\"content-type\":`application/json`},body:JSON.stringify({...t,...r?{returnToken:!0}:{}})});if(!i.ok)throw new OC({message:`Server Authentication verify endpoint \\`${n}\\` returned ${i.status}.`});let a=await i.json().catch(()=>({}));return a.token?{token:a.token}:{}}let Qj={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},$j={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},eM={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var tM=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let nM={accent:new tM(`accent`),background:new tM(`background`),border:new tM(`border`),foreground:new tM(`foreground`),muted:new tM(`muted`),negative:new tM(`negative`),positive:new tM(`positive`),surface:new tM(`surface`),fontFamily:new tM(`font-family`),fontSizeBase:new tM(`font-size-base`),radius:new tM(`radius`),spacingUnit:new tM(`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: ${nM.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 rM(e){let t=new URL(location.href);t.searchParams.set($j.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 iM(e){let t=document.getElementById(Qj.data),n=Tf(t.textContent),r=t.getAttribute(eM.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(eM.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(eM.challengeId),o=a?(i.removeAttribute(eM.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(Qj.error)?.remove();return}let t=document.getElementById(Qj.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=Qj.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:rM,vars:nM}}let aM=iM(`tempo`),oM=String.raw,sM=document.createElement(`style`);sM.textContent=oM`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${aM.vars.spacingUnit} * 8);\n }\n button {\n background: ${aM.vars.accent};\n border-radius: ${aM.vars.radius};\n color: ${aM.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${aM.vars.spacingUnit} * 4) calc(${aM.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`,aM.root.append(sM);let cM=Uj({testnet:aM.challenge.request.methodDetails?.chainId===fk.id||aM.challenge.request.methodDetails?.chainId===dk.id}),lM=document.createElement(`button`);lM.innerHTML=`${aM.text.pay===`Pay`?`Continue with`:aM.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>`,lM.onclick=async()=>{try{aM.error(),lM.disabled=!0;let e=await(async()=>{let e=await cM.request({method:`eth_accounts`});return e.length>0?e.at(0):(await cM.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await HA({account:e,getClient:e=>{let t=e.chainId??aM.challenge.request.methodDetails?.chainId;return ah({chain:[...cM?.chains??[],fk,dk].find(e=>e.id===t),transport:My(cM)})}})[0].createCredential({challenge:aM.challenge,context:{}});await aM.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;aM.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{lM.disabled=!1}},aM.root.appendChild(lM)})();</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.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,ne,re=[];function ie(){return typeof window>`u`?oe():S({name:`iframe`},e=>{let{host:t}=e;if(C&&C.host===t){let t=w;return w=e.store,t&&t!==w&&!re.includes(t)&&re.push(t),ne?.destroy(),ne=ae()(e),C.instance.syncTheme(e.theme),C.instance}C?.instance.destroy(),w=e.store,ne=ae()(e);let n=!1,r=fe(),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=>{ce(se(w,re,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ue(e)}),e.on(`sync`,({valid:e})=>{e===!1&&w?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),S(),n=!1,l=!0;let e=w?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&ne?.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=()=>le(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`)},ie=!1,oe=()=>{ie||(ie=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(ie){ie=!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(){ne.close(),n=!1,pe(),S()},destroy(){C?.instance===me&&(C=void 0),ne?.close(),n=!1,S(),pe(),ne?.destroy(),f.destroy(),a.remove(),y.disconnect(),w=void 0,ne=void 0,re=[]},open(){n||(n=!0,oe(),ee())},async syncRequests(e){if(l){ne.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(te()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){ne.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`)),ne.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:de(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:me},me})}function ae(e={}){if(typeof window>`u`)return oe();let{size:t=x}=e;return S({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&le(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`,()=>le(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=fe(),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=>ce(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:de(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function oe(){return S({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function se(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 ce(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 le(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 ue(e){if(!w)return;let{accounts:t}=w.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function de(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function fe(){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 pe,me=o((()=>{pe=`1.2.3`})),he,ge=o((()=>{me(),he=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@${pe}`].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 _e(e,t){return e.exec(t)?.groups}var ve,ye,be,xe=o((()=>{ve=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ye=/^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)?$/,be=/^\\(.+?\\).*?$/}));function Se(e){let t=e.type;if(Ce.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+=Se(i),r<n-1&&(t+=`, `)}let r=_e(Ce,e.type);return t+=`)${r?.array||``}`,Se({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Ce,we=o((()=>{xe(),Ce=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function Te(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Se(i),r!==n-1&&(t+=`, `)}return t}var Ee=o((()=>{we()}));function De(e){return e.type===`function`?`function ${e.name}(${Te(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Te(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Te(e.inputs)})`:e.type===`error`?`error ${e.name}(${Te(e.inputs)})`:e.type===`constructor`?`constructor(${Te(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var Oe=o((()=>{Ee()}));function ke(e){return He.test(e)}function Ae(e){return _e(He,e)}function je(e){return Ue.test(e)}function Me(e){return _e(Ue,e)}function Ne(e){return We.test(e)}function Pe(e){return _e(We,e)}function Fe(e){return Ge.test(e)}function Ie(e){return _e(Ge,e)}function Le(e){return Ke.test(e)}function Re(e){return _e(Ke,e)}function ze(e){return qe.test(e)}function Be(e){return _e(qe,e)}function Ve(e){return Je.test(e)}var He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze=o((()=>{xe(),He=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Ue=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,We=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Ge=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,Ke=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,qe=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Je=/^receive\\(\\) external payable$/,Ye=new Set([`indexed`]),Xe=new Set([`calldata`,`memory`,`storage`])})),Qe,$e,et=o((()=>{ge(),Qe=class extends he{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`})}},$e=class extends he{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`})}}})),tt,nt,rt,it,at,ot=o((()=>{ge(),tt=class extends he{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},nt=class extends he{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`})}},rt=class extends he{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`})}},it=class extends he{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`})}},at=class extends he{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`})}}})),st,ct,lt,ut=o((()=>{ge(),st=class extends he{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},ct=class extends he{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},lt=class extends he{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`})}}})),dt,ft=o((()=>{ge(),dt=class extends he{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`})}}})),pt,mt=o((()=>{ge(),pt=class extends he{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 ht(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 gt,_t=o((()=>{gt=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 vt(e,t={}){if(Ne(e))return yt(e,t);if(je(e))return bt(e,t);if(ke(e))return xt(e,t);if(Le(e))return St(e,t);if(ze(e))return Ct(e);if(Ve(e))return{type:`receive`,stateMutability:`payable`};throw new ct({signature:e})}function yt(e,t={}){let n=Pe(e);if(!n)throw new st({signature:e,type:`function`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{modifiers:Xe,structs:t,type:`function`}));let o=[];if(n.returns){let e=Tt(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(wt(e[n],{modifiers:Xe,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function bt(e,t={}){let n=Me(e);if(!n)throw new st({signature:e,type:`event`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{modifiers:Ye,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function xt(e,t={}){let n=Ae(e);if(!n)throw new st({signature:e,type:`error`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function St(e,t={}){let n=Re(e);if(!n)throw new st({signature:e,type:`constructor`});let r=Tt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(wt(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function Ct(e){let t=Be(e);if(!t)throw new st({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function wt(e,t){let n=ht(e,t?.type,t?.structs);if(gt.has(n))return gt.get(n);let r=be.test(e),i=_e(r?At:kt,e);if(!i)throw new tt({param:e});if(i.name&&Dt(i.name))throw new nt({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=Tt(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(wt(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(jt.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Et(c))throw new $e({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new rt({param:e,type:t?.type,modifier:i.modifier});if(Xe.has(i.modifier)&&!Ot(c,!!i.array))throw new it({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return gt.set(n,u),u}function Tt(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?Tt(o,[...t,n.trim()]):Tt(o,t,`${n}${i}`,r);case`(`:return Tt(o,t,`${n}${i}`,r+1);case`)`:return Tt(o,t,`${n}${i}`,r-1);default:return Tt(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new pt({current:n,depth:r});return t.push(n.trim()),t}function Et(e){return e===`address`||e===`bool`||e===`function`||e===`string`||ve.test(e)||ye.test(e)}function Dt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||ve.test(e)||ye.test(e)||Mt.test(e)}function Ot(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var kt,At,jt,Mt,Nt=o((()=>{xe(),et(),ot(),ut(),mt(),_t(),Ze(),kt=/^(?<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$_]*))?$/,At=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,jt=/^u?int$/,Mt=/^(?: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 Pt(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Fe(n))continue;let i=Ie(n);if(!i)throw new st({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=wt(t,{type:`struct`});o.push(n)}if(!o.length)throw new lt({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]=Ft(a,t)}return r}function Ft(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(be.test(i.type))r.push(i);else{let e=_e(It,i.type);if(!e?.type)throw new at({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new dt({type:o});r.push({...i,type:`tuple${a??``}`,components:Ft(t[o],t,new Set([...n,o]))})}else if(Et(o))r.push(i);else throw new Qe({type:o})}}return r}var It,Lt=o((()=>{xe(),et(),ot(),ut(),ft(),Ze(),Nt(),It=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function Rt(e){let t=Pt(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];Fe(r)||n.push(vt(r,t))}return n}var zt=o((()=>{Ze(),Lt(),Nt()})),Bt=o((()=>{ge(),Oe(),we(),Ee(),zt(),et(),Ze(),Lt(),Nt(),ot(),ut(),mt(),ft()}));function T(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 Vt(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new xn(e.type);return`${e.name}(${Ht(e.inputs,{includeName:t})})`}function Ht(e,{includeName:t=!1}={}){return e?e.map(e=>Ut(e,{includeName:t})).join(t?`, `:`,`):``}function Ut(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Ht(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Wt=o((()=>{Sn()}));function E(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Gt=o((()=>{}));function Kt(e){return E(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var qt=o((()=>{Gt()})),Jt,Yt=o((()=>{Jt=`2.50.4`}));function Xt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Xt(e.cause,t):t?null:e}var Zt,D,O=o((()=>{Yt(),Zt={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Jt}`},D=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=Zt.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Zt.version?[`Version: ${Zt.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=Jt}walk(e){return Xt(this,e)}}})),Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn=o((()=>{Wt(),qt(),O(),Qt=class extends D{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`})}},$t=class extends D{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`})}},en=class extends D{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${Ht(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}},tn=class extends D{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},nn=class extends D{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`})}},rn=class extends D{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Kt(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},an=class extends D{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},on=class extends D{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`})}},sn=class extends D{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`})}},cn=class extends D{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}},ln=class extends D{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},un=class extends D{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`})}},dn=class extends D{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`})}},fn=class extends D{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`})}},pn=class extends D{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`})}},mn=class extends D{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Vt(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${Vt(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},hn=class extends D{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},gn=class extends D{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: (${Ht(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}},_n=class extends D{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${Vt(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},vn=class extends D{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`})}},yn=class extends D{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`})}},bn=class extends D{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},xn=class extends D{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),Cn,wn,Tn,En=o((()=>{O(),Cn=class extends D{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},wn=class extends D{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},Tn=class extends D{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 Dn(e,{dir:t,size:n=32}={}){return typeof e==`string`?On(e,{dir:t,size:n}):kn(e,{dir:t,size:n})}function On(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new wn({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function kn(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new wn({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 An=o((()=>{En()})),jn,Mn,Nn,Pn,Fn,In=o((()=>{O(),jn=class extends D{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`})}},Mn=class extends D{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`})}},Nn=class extends D{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},Pn=class extends D{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},Fn=class extends D{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function Ln(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 Rn=o((()=>{}));function zn(e,{size:t}){if(Kt(e)>t)throw new Fn({givenSize:Kt(e),maxSize:t})}function k(e,t={}){let{signed:n}=t;t.size&&zn(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 Bn(e,t={}){let n=e;if(t.size&&(zn(n,{size:t.size}),n=Ln(n)),Ln(n)===`0x00`)return!1;if(Ln(n)===`0x01`)return!0;throw new Nn(n)}function Vn(e,t={}){let n=k(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new jn({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var Hn=o((()=>{In(),qt(),Rn()}));function Un(e,t={}){return typeof e==`number`||typeof e==`bigint`?A(e,t):typeof e==`string`?Kn(e,t):typeof e==`boolean`?Wn(e,t):Gn(e,t)}function Wn(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(zn(n,{size:t.size}),Dn(n,{size:t.size})):n}function Gn(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=qn[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(zn(r,{size:t.size}),Dn(r,{dir:`right`,size:t.size})):r}function A(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 jn({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?Dn(s,{size:r}):s}function Kn(e,t={}){return Gn(Jn.encode(e),t)}var qn,Jn,j=o((()=>{In(),An(),Hn(),qn=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Jn=new TextEncoder}));function Yn(e,t={}){return typeof e==`number`||typeof e==`bigint`?$n(e,t):typeof e==`boolean`?Xn(e,t):E(e)?Qn(e,t):er(e,t)}function Xn(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(zn(n,{size:t.size}),Dn(n,{size:t.size})):n}function Zn(e){if(e>=nr.zero&&e<=nr.nine)return e-nr.zero;if(e>=nr.A&&e<=nr.F)return e-(nr.A-10);if(e>=nr.a&&e<=nr.f)return e-(nr.a-10)}function Qn(e,t={}){let n=e;t.size&&(zn(n,{size:t.size}),n=Dn(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=Zn(r.charCodeAt(t++)),i=Zn(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new D(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function $n(e,t){return Qn(A(e,t))}function er(e,t={}){let n=tr.encode(e);return typeof t.size==`number`?(zn(n,{size:t.size}),Dn(n,{dir:`right`,size:t.size})):n}var tr,nr,rr=o((()=>{O(),Gt(),An(),Hn(),j(),tr=new TextEncoder,nr={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function ir(e,t=!1){return t?{h:Number(e&sr),l:Number(e>>cr&sr)}:{h:Number(e>>cr&sr)|0,l:Number(e&sr)|0}}function ar(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}=ir(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function or(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr,Tr=o((()=>{sr=BigInt(2**32-1),cr=BigInt(32),lr=(e,t,n)=>e>>>n,ur=(e,t,n)=>e<<32-n|t>>>n,dr=(e,t,n)=>e>>>n|t<<32-n,fr=(e,t,n)=>e<<32-n|t>>>n,pr=(e,t,n)=>e<<64-n|t>>>n-32,mr=(e,t,n)=>e>>>n-32|t<<64-n,hr=(e,t,n)=>e<<n|t>>>32-n,gr=(e,t,n)=>t<<n|e>>>32-n,_r=(e,t,n)=>t<<n-32|e>>>64-n,vr=(e,t,n)=>e<<n-32|t>>>64-n,yr=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),br=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,xr=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),Sr=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Cr=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),wr=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0})),Er,Dr=o((()=>{Er=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Or(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function kr(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Ar(e,...t){if(!Or(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 jr(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);kr(e.outputLen),kr(e.blockLen)}function Mr(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 Nr(e,t){Ar(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function Pr(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Fr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Ir(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Lr(e,t){return e<<32-t|e>>>t}function Rr(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function zr(e){for(let t=0;t<e.length;t++)e[t]=Rr(e[t]);return e}function Br(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function Vr(e){return typeof e==`string`&&(e=Br(e)),Ar(e),e}function Hr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Ar(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 Ur(e){let t=t=>e().update(Vr(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Wr(e){let t=(t,n)=>e(n).update(Vr(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Gr(e=32){if(Er&&typeof Er.getRandomValues==`function`)return Er.getRandomValues(new Uint8Array(e));if(Er&&typeof Er.randomBytes==`function`)return Uint8Array.from(Er.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var Kr,qr,Jr,Yr=o((()=>{Dr(),Kr=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,qr=Kr?e=>e:zr,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Jr=class{}}));function Xr(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=li(a,o,1)^n[r],c=ui(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=ii[n],a=li(t,i,r),o=ui(t,i,r),s=ri[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]^=si[r],e[1]^=ci[r]}Fr(n)}var Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi,hi=o((()=>{Tr(),Yr(),Zr=BigInt(0),Qr=BigInt(1),$r=BigInt(2),ei=BigInt(7),ti=BigInt(256),ni=BigInt(113),ri=[],ii=[],ai=[];for(let e=0,t=Qr,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ri.push(2*(5*r+n)),ii.push((e+1)*(e+2)/2%64);let i=Zr;for(let e=0;e<7;e++)t=(t<<Qr^(t>>ei)*ni)%ti,t&$r&&(i^=Qr<<(Qr<<BigInt(e))-Qr);ai.push(i)}oi=ar(ai,!0),si=oi[0],ci=oi[1],li=(e,t,n)=>n>32?_r(e,t,n):hr(e,t,n),ui=(e,t,n)=>n>32?vr(e,t,n):gr(e,t,n),di=class e extends Jr{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,kr(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Pr(this.state)}clone(){return this._cloneInto()}keccak(){qr(this.state32),Xr(this.state32,this.rounds),qr(this.state32),this.posOut=0,this.pos=0}update(e){Mr(this),e=Vr(e),Ar(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){Mr(this,!1),Ar(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 kr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Nr(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,Fr(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}},fi=(e,t,n)=>Ur(()=>new di(t,e,n)),fi(6,144,224/8),fi(6,136,256/8),fi(6,104,384/8),fi(6,72,512/8),fi(1,144,224/8),pi=fi(1,136,256/8),fi(1,104,384/8),fi(1,72,512/8),mi=(e,t,n)=>Wr((r={})=>new di(t,e,r.dkLen===void 0?n:r.dkLen,!0)),mi(31,168,128/8),mi(31,136,256/8)}));function gi(e,t){let n=t||`hex`,r=pi(E(e,{strict:!1})?Yn(e):e);return n===`bytes`?r:Un(r)}var _i=o((()=>{hi(),Gt(),rr(),j()}));function vi(e){return yi(e)}var yi,bi=o((()=>{rr(),_i(),yi=e=>gi(Yn(e))}));function xi(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 D(`Unable to normalize signature.`);return i}var Si=o((()=>{O()})),Ci,wi=o((()=>{Bt(),Si(),Ci=e=>xi(typeof e==`string`?e:De(e))}));function Ti(e){return vi(Ci(e))}var Ei=o((()=>{bi(),wi()})),Di,Oi=o((()=>{Ei(),Di=Ti})),ki,Ai=o((()=>{O(),ki=class extends D{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`})}}})),ji,Mi=o((()=>{ji=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 Ni(e,t){if(Fi.has(`${e}.${t}`))return Fi.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=gi(er(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 Fi.set(`${e}.${t}`,a),a}function Pi(e,t){if(!Li(e,{strict:!1}))throw new ki({address:e});return Ni(e,t)}var Fi,Ii=o((()=>{Ai(),rr(),_i(),Mi(),Bi(),Fi=new ji(8192)}));function Li(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(zi.has(r))return zi.get(r);let i=Ri.test(e)?e.toLowerCase()===e?!0:n?Ni(e)===e:!0:!1;return zi.set(r,i),i}var Ri,zi,Bi=o((()=>{Mi(),Ii(),Ri=/^0x[a-fA-F0-9]{40}$/,zi=new ji(8192)}));function Vi(e){return typeof e[0]==`string`?Ui(e):Hi(e)}function Hi(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 Ui(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var Wi=o((()=>{}));function Gi(e,t,n,{strict:r}={}){return E(e,{strict:!1})?Yi(e,t,n,{strict:r}):Ji(e,t,n,{strict:r})}function Ki(e,t){if(typeof t==`number`&&t>0&&t>Kt(e)-1)throw new Cn({offset:t,position:`start`,size:Kt(e)})}function qi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Kt(e)!==n-t)throw new Cn({offset:n,position:`end`,size:Kt(e)})}function Ji(e,t,n,{strict:r}={}){Ki(e,t);let i=e.slice(t,n);return r&&qi(i,t,n),i}function Yi(e,t,n,{strict:r}={}){Ki(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&qi(i,t,n),i}var Xi=o((()=>{En(),Gt(),qt()})),Zi,Qi,$i=o((()=>{Zi=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Qi=/^(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 ea(e,t){if(e.length!==t.length)throw new an({expectedLength:e.length,givenLength:t.length});let n=ra(ta({params:e,values:t}));return n.length===0?`0x`:n}function ta({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(na({param:e[r],value:t[r]}));return n}function na({param:e,value:t}){let n=da(e.type);if(n){let[r,i]=n;return aa(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return ua(t,{param:e});if(e.type===`address`)return ia(t);if(e.type===`bool`)return sa(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Qi.exec(e.type)??[];return ca(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return oa(t,{param:e});if(e.type===`string`)return la(t);throw new vn(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function ra(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Kt(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(A(t+i,{size:32})),r.push(s),i+=Kt(s)):n.push(s)}return Vi([...n,...r])}function ia(e){if(!Li(e))throw new ki({address:e});return{dynamic:!1,encoded:On(e.toLowerCase())}}function aa(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new bn(e);if(!r&&e.length!==t)throw new nn({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=na({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=ra(a);if(r){let t=A(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?Vi([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Vi(a.map(({encoded:e})=>e))}}function oa(e,{param:t}){let[,n]=t.type.split(`bytes`),r=Kt(e);if(!n){let t=e;return r%32!=0&&(t=On(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:Vi([On(A(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new rn({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:On(e,{dir:`right`})}}function sa(e){if(typeof e!=`boolean`)throw new D(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:On(Wn(e))}}function ca(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 jn({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:A(e,{size:32,signed:t})}}function la(e){let t=Kn(e),n=Math.ceil(Kt(t)/32),r=[];for(let e=0;e<n;e++)r.push(On(Gi(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:Vi([On(A(Kt(t),{size:32})),...r])}}function ua(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=na({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?ra(r):Vi(r.map(({encoded:e})=>e))}}function da(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var fa=o((()=>{Sn(),Ai(),O(),In(),Bi(),Wi(),An(),qt(),Xi(),j(),$i()})),pa,ma=o((()=>{Xi(),Ei(),pa=e=>Gi(Ti(e),0,4)}));function ha(e){let{abi:t,args:n=[],name:r}=e,i=E(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?pa(e)===r:e.type===`event`?Di(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?ga(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=_a(e.inputs,o.inputs,n);if(t)throw new mn({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function ga(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return Li(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`&&ga(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=>ga(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function _a(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return _a(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&Li(n[r],{strict:!1}))return o}}var va=o((()=>{Sn(),Gt(),Bi(),Oi(),ma()}));function M(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=ha({abi:t,args:n,name:r});if(!e)throw new dn(r,{docsPath:xa});i=e}if(i.type!==`function`)throw new dn(void 0,{docsPath:xa});return{abi:[i],functionName:pa(Vt(i))}}var xa,Sa=o((()=>{Sn(),ma(),Wt(),va(),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 Ui([r,(`inputs`in i&&i.inputs?ea(i.inputs,t??[]):void 0)??`0x`])}var wa=o((()=>{Wi(),fa(),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((()=>{O(),ka=class extends D{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Aa=class extends D{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},ja=class extends D{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&&zn(e,{size:t.size}),k(Gn(e,t),t)}function La(e,t={}){let n=e;if(t.size!==void 0&&(zn(n,{size:t.size}),n=Ln(n)),n.length>1||n[0]>1)throw new Mn(n);return!!n[0]}function Ra(e,t={}){return t.size!==void 0&&zn(e,{size:t.size}),Vn(Gn(e,t),t)}function za(e,t={}){let n=e;return t.size!==void 0&&(zn(n,{size:t.size}),n=Ln(n,{dir:`right`})),new TextDecoder().decode(n)}var Ba=o((()=>{In(),Rn(),Hn(),j()}));function Va(e,t){let n=typeof t==`string`?Qn(t):t,r=Na(n);if(Kt(n)===0&&e.length>0)throw new tn;if(Kt(t)&&Kt(t)<32)throw new en({data:typeof t==`string`?t:Gn(t),params:e,size:Kt(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=da(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 yn(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function Ua(e){return[Ni(Gn(Ji(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),[Gn(i),32]}return[Gn(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(Ln(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=da(e.type);return!!(n&&Xa({...e,type:n[1]}))}var Za,Qa,$a=o((()=>{Sn(),Ii(),Fa(),qt(),Xi(),Rn(),Ba(),rr(),j(),fa(),Za=32,Qa=32}));function eo(e){let{abi:t,data:n,cause:r}=e,i=Gi(n,0,4);if(i===`0x`)throw new tn({cause:r});let a=[...t||[],Ea,Da].find(e=>e.type===`error`&&i===pa(Vt(e)));if(!a)throw new cn(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?Va(a.inputs,Gi(n,4)):void 0,errorName:a.name}}var to=o((()=>{Oa(),Sn(),Xi(),ma(),$a(),Wt()})),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((()=>{O(),vo=class extends D{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},yo=class extends D{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(),O(),So=class extends D{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Co=class extends D{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 D{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 D{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 D{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 D{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}}}));function ko(e){if(e?.reason)return e.reason;if(typeof DOMException==`function`)return new DOMException(`This operation was aborted`,`AbortError`);let t=Error(`This operation was aborted`);return t.name=`AbortError`,t}function Ao(e){return typeof e==`object`&&!!e&&`name`in e&&e.name===`AbortError`}var jo,Mo,No=o((()=>{jo=e=>e,Mo=e=>{try{let t=new URL(e);return!t.username&&!t.password?e:(t.username=``,t.password=``,t.toString())}catch{return e}}})),Po,Fo,Io,Lo,Ro,zo,Bo=o((()=>{ya(),Oa(),to(),Wt(),ao(),va(),po(),ho(),Sn(),O(),bo(),Oo(),No(),Po=class extends D{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?M(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}},Fo=class extends D{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=ha({abi:t,args:n,name:a}),c=s?io({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?Vt(s,{includeName:!0}):void 0,u=xo({address:r&&jo(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}},Io=class extends D{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?Vt(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 cn&&(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}},Lo=class extends D{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})}},Ro=class extends D{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`})}},zo=class extends D{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}}})),Vo,Ho,Uo,Wo=o((()=>{ro(),O(),No(),Vo=class extends D{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: ${Mo(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}},Ho=class extends D{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Mo(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}},Uo=class extends D{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Mo(t)}`,`Request body: ${no(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),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,bs,xs=o((()=>{O(),Wo(),Go=-1,Ko=class extends D{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 Ho?e.code:t??Go}},qo=class extends Ko{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},Jo=class e extends Ko{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(Jo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Yo=class e extends Ko{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(Yo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Xo=class e extends Ko{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(Xo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Zo=class e extends Ko{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(Zo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Qo=class e extends Ko{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(Qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),$o=class e extends Ko{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($o,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),es=class e extends Ko{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(es,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),ts=class e extends Ko{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(ts,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),ns=class e extends Ko{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(ns,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),rs=class e extends Ko{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(rs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),is=class e extends Ko{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(is,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),as=class e extends Ko{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(as,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),os=class e extends qo{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(os,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),ss=class e extends qo{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(ss,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),cs=class e extends qo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(cs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),ls=class e extends qo{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(ls,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),us=class e extends qo{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(us,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),ds=class e extends qo{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(ds,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),fs=class e extends qo{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(fs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),ps=class e extends qo{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(ps,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),ms=class e extends qo{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(ms,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),hs=class e extends qo{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(hs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),gs=class e extends qo{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(gs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),_s=class e extends qo{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(_s,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),vs=class e extends qo{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(vs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),ys=class e extends qo{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(ys,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),bs=class extends Ko{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));Sn(),O(),Bo(),Wo(),xs();function Ss(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof zo?e:e instanceof D?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Fo(e instanceof tn?new Lo({functionName:a,cause:e}):[3,Qo.code].includes(c)&&(l||u||d||f)||c===$o.code&&u===`execution reverted`&&l?new Io({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof Ho?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}Ii(),_i();function Cs(e){return Ni(`0x${gi(`0x${e.substring(4)}`).substring(26)}`)}function ws(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 Ts(e,t,n){return e&t^~e&n}function Es(e,t,n){return e&t^e&n^t&n}var Ds,Os,ks,As,js=o((()=>{Yr(),Ds=class extends Jr{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=Ir(this.buffer)}update(e){Mr(this),e=Vr(e),Ar(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=Ir(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){Mr(this),Nr(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,Fr(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;ws(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=Ir(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()}},Os=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ks=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),As=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])})),Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs,Us,Ws,Gs=o((()=>{js(),Tr(),Yr(),Ms=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]),Ns=new Uint32Array(64),Ps=class extends Ds{constructor(e=32){super(64,e,8,!1),this.A=Os[0]|0,this.B=Os[1]|0,this.C=Os[2]|0,this.D=Os[3]|0,this.E=Os[4]|0,this.F=Os[5]|0,this.G=Os[6]|0,this.H=Os[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)Ns[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=Ns[e-15],n=Ns[e-2],r=Lr(t,7)^Lr(t,18)^t>>>3;Ns[e]=(Lr(n,17)^Lr(n,19)^n>>>10)+Ns[e-7]+r+Ns[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=Lr(o,6)^Lr(o,11)^Lr(o,25),u=l+t+Ts(o,s,c)+Ms[e]+Ns[e]|0,d=(Lr(n,2)^Lr(n,13)^Lr(n,22))+Es(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(){Fr(Ns)}destroy(){this.set(0,0,0,0,0,0,0,0),Fr(this.buffer)}},Fs=ar(`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))),Is=Fs[0],Ls=Fs[1],Rs=new Uint32Array(80),zs=new Uint32Array(80),Bs=class extends Ds{constructor(e=64){super(128,e,16,!1),this.Ah=As[0]|0,this.Al=As[1]|0,this.Bh=As[2]|0,this.Bl=As[3]|0,this.Ch=As[4]|0,this.Cl=As[5]|0,this.Dh=As[6]|0,this.Dl=As[7]|0,this.Eh=As[8]|0,this.El=As[9]|0,this.Fh=As[10]|0,this.Fl=As[11]|0,this.Gh=As[12]|0,this.Gl=As[13]|0,this.Hh=As[14]|0,this.Hl=As[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)Rs[n]=e.getUint32(t),zs[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Rs[e-15]|0,n=zs[e-15]|0,r=dr(t,n,1)^dr(t,n,8)^lr(t,n,7),i=fr(t,n,1)^fr(t,n,8)^ur(t,n,7),a=Rs[e-2]|0,o=zs[e-2]|0,s=dr(a,o,19)^pr(a,o,61)^lr(a,o,6),c=fr(a,o,19)^mr(a,o,61)^ur(a,o,6),l=xr(i,c,zs[e-7],zs[e-16]);Rs[e]=Sr(l,r,s,Rs[e-7],Rs[e-16])|0,zs[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=dr(u,d,14)^dr(u,d,18)^pr(u,d,41),v=fr(u,d,14)^fr(u,d,18)^mr(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Cr(_,v,b,Ls[e],zs[e]),S=wr(x,g,t,y,Is[e],Rs[e]),ee=x|0,te=dr(n,r,28)^pr(n,r,34)^pr(n,r,39),C=fr(n,r,28)^mr(n,r,34)^mr(n,r,39),w=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}=or(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=yr(ee,C,ne);n=br(re,S,te,w),r=re|0}({h:n,l:r}=or(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=or(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=or(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=or(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=or(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=or(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=or(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=or(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(){Fr(Rs,zs)}destroy(){Fr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Vs=class extends Bs{constructor(){super(48),this.Ah=ks[0]|0,this.Al=ks[1]|0,this.Bh=ks[2]|0,this.Bl=ks[3]|0,this.Ch=ks[4]|0,this.Cl=ks[5]|0,this.Dh=ks[6]|0,this.Dl=ks[7]|0,this.Eh=ks[8]|0,this.El=ks[9]|0,this.Fh=ks[10]|0,this.Fl=ks[11]|0,this.Gh=ks[12]|0,this.Gl=ks[13]|0,this.Hh=ks[14]|0,this.Hl=ks[15]|0}},Hs=Ur(()=>new Ps),Us=Ur(()=>new Bs),Ws=Ur(()=>new Vs)})),Ks,qs,Js=o((()=>{Yr(),Ks=class extends Jr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,jr(e);let n=Vr(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),Fr(i)}update(e){return Mr(this),this.iHash.update(e),this}digestInto(e){Mr(this),Ar(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()}},qs=(e,t,n)=>new Ks(e,t).update(n).digest(),qs.create=(e,t)=>new Ks(e,t)}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Ys(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Xs(e){if(!Ys(e))throw Error(`Uint8Array expected`)}function Zs(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Qs(e){let t=e.toString(16);return t.length&1?`0`+t:t}function $s(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?_c:BigInt(`0x`+e)}function ec(e){if(Xs(e),yc)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=bc[e[n]];return t}function tc(e){if(e>=xc._0&&e<=xc._9)return e-xc._0;if(e>=xc.A&&e<=xc.F)return e-(xc.A-10);if(e>=xc.a&&e<=xc.f)return e-(xc.a-10)}function nc(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(yc)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=tc(e.charCodeAt(i)),a=tc(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 rc(e){return $s(ec(e))}function ic(e){return Xs(e),$s(ec(Uint8Array.from(e).reverse()))}function ac(e,t){return nc(e.toString(16).padStart(t*2,`0`))}function oc(e,t){return ac(e,t).reverse()}function sc(e,t,n){let r;if(typeof t==`string`)try{r=nc(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Ys(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 cc(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Xs(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 lc(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 uc(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function dc(e,t,n){return Sc(e)&&Sc(t)&&Sc(n)&&t<=e&&e<n}function fc(e,t,n,r){if(!dc(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function pc(e){let t;for(t=0;e>_c;e>>=vc,t+=1);return t}function mc(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=wc(e),i=wc(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=wc(0))=>{i=s(Tc([0]),e),r=s(),e.length!==0&&(i=s(Tc([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 cc(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function hc(e,t,n={}){let r=(t,n,r)=>{let i=Ec[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 gc(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 _c,vc,yc,bc,xc,Sc,Cc,wc,Tc,Ec,Dc=o((()=>{_c=BigInt(0),vc=BigInt(1),yc=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,bc=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),xc={_0:48,_9:57,A:65,F:70,a:97,f:102},Sc=e=>typeof e==`bigint`&&_c<=e,Cc=e=>(vc<<BigInt(e))-vc,wc=e=>new Uint8Array(e),Tc=e=>Uint8Array.from(e),Ec={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`||Ys(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)}}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Oc(e,t){let n=e%t;return n>=Wc?n:t+n}function kc(e,t,n){let r=e;for(;t-- >Wc;)r*=r,r%=n;return r}function Ac(e,t){if(e===Wc)throw Error(`invert: expected non-zero number`);if(t<=Wc)throw Error(`invert: expected positive modulus, got `+t);let n=Oc(e,t),r=t,i=Wc,a=Gc,o=Gc,s=Wc;for(;n!==Wc;){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!==Gc)throw Error(`invert: does not exist`);return Oc(i,t)}function jc(e,t){let n=(e.ORDER+Gc)/Jc,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function Mc(e,t){let n=(e.ORDER-Yc)/Xc,r=e.mul(t,Kc),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Kc),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 Nc(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Gc,n=0;for(;t%Kc===Wc;)t/=Kc,n++;let r=Kc,i=Bc(e);for(;Rc(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return jc;let a=i.pow(r,t),o=(t+Gc)/Kc;return function(e,r){if(e.is0(r))return r;if(Rc(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=Gc<<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 Pc(e){return e%Jc===qc?jc:e%Xc===Yc?Mc:Nc(e)}function Fc(e){return hc(e,Zc.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Ic(e,t,n){if(n<Wc)throw Error(`invalid exponent, negatives unsupported`);if(n===Wc)return e.ONE;if(n===Gc)return t;let r=e.ONE,i=t;for(;n>Wc;)n&Gc&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Gc;return r}function Lc(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 Rc(e,t){let n=(e.ORDER-Gc)/Kc,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 zc(e,t){t!==void 0&&kr(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Bc(e,t,n=!1,r={}){if(e<=Wc)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=zc(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:Cc(i),ZERO:Wc,ONE:Gc,create:t=>Oc(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Wc<=t&&t<e},is0:e=>e===Wc,isOdd:e=>(e&Gc)===Gc,neg:t=>Oc(-t,e),eql:(e,t)=>e===t,sqr:t=>Oc(t*t,e),add:(t,n)=>Oc(t+n,e),sub:(t,n)=>Oc(t-n,e),mul:(t,n)=>Oc(t*n,e),pow:(e,t)=>Ic(s,e,t),div:(t,n)=>Oc(t*Ac(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>Ac(t,e),sqrt:r.sqrt||(t=>(o||=Pc(e),o(s,t))),toBytes:e=>n?oc(e,a):ac(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?ic(e):rc(e)},invertBatch:e=>Lc(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Vc(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function Hc(e){let t=Vc(e);return t+Math.ceil(t/2)}function Uc(e,t,n=!1){let r=e.length,i=Vc(t),a=Hc(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Oc(n?ic(e):rc(e),t-Gc)+Gc;return n?oc(o,i):ac(o,i)}var Wc,Gc,Kc,qc,Jc,Yc,Xc,Zc,Qc=o((()=>{Yr(),Dc(),Wc=BigInt(0),Gc=BigInt(1),Kc=BigInt(2),qc=BigInt(3),Jc=BigInt(4),Yc=BigInt(5),Xc=BigInt(8),Zc=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction $c(e,t){let n=t.negate();return e?n:t}function el(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function tl(e,t){el(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:Cc(e),maxNumber:i,shiftBy:BigInt(e)}}function nl(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+=ul);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 rl(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 il(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 al(e){return fl.get(e)||1}function ol(e,t){return{constTimeNegate:$c,hasPrecomputes(e){return al(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>ll;)n&ul&&(r=r.add(i)),i=i.double(),n>>=ul;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=tl(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=tl(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=nl(i,e,s);i=t,c?o=o.add($c(u,r[d])):a=a.add($c(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=tl(n,t);for(let e=0;e<o.windows&&i!==ll;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=nl(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=dl.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&dl.set(t,n(r))),r},wNAFCached(e,t,n){let r=al(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=al(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){el(n,t),fl.set(e,n),dl.delete(e)}}}function sl(e,t,n,r){rl(n,e),il(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=pc(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=Cc(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 cl(e){return Fc(e.Fp),hc(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...zc(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var ll,ul,dl,fl,pl=o((()=>{Qc(),Dc(),ll=BigInt(0),ul=BigInt(1),dl=new WeakMap,fl=new WeakMap}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction ml(e){e.lowS!==void 0&&Zs(`lowS`,e.lowS),e.prehash!==void 0&&Zs(`prehash`,e.prehash)}function hl(e){let t=cl(e);hc(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 gl(e,t){return ec(ac(e,t))}function _l(e){let t=hl(e),{Fp:n}=t,r=Bc(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return cc(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,El),Dl),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 dc(e,N,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Ys(e)&&(e=ec(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:rc(sc(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Oc(o,a)),fc(`private key`,o,N,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=gc((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=gc(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=Lc(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(sc(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return sl(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,El),{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,El),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;fc(`scalar`,e,wl,i);let a=h.ZERO;if(e===wl)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>wl||l>wl;)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;fc(`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===wl||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 Zs(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Zs(`isCompressed`,e),ec(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=ol(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function vl(e){let t=cl(e);return hc(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function yl(e){let t=vl(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Oc(e,r)}function l(e){return Ac(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=_l({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=cc;return Zs(`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=rc(i);if(!dc(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)=>rc(e.slice(t,n));class _{constructor(e,t,n){fc(`r`,e,N,r),fc(`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=sc(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=Cl.toSig(sc(`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(sc(`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+gl(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 nc(this.toDERHex())}toDERHex(){return Cl.hexFromSig(this)}toCompactRawBytes(){return nc(this.toCompactHex())}toCompactHex(){let e=i;return gl(this.r,e)+gl(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=Hc(t.n);return Uc(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=sc(`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=rc(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},te=Cc(a);function C(e){return fc(`num < 2^`+a,e,wl,te),ac(e,i)}function w(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=sc(`msgHash`,e),ml(i),f&&(e=sc(`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(sc(`extraEntropy`,e))}let x=cc(...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===wl)return;let a=c(n*c(te+i*y));if(a===wl)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 ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=w(e,n,r),o=t;return mc(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=sc(`msgHash`,n),r=sc(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(ml(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`||Ys(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 Cl.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:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function bl(e,t){let n=e.ORDER,r=wl;for(let e=n-N;e%Tl===wl;e/=Tl)r+=N;let i=r,a=Tl<<i-N-N,o=a*Tl,s=(n-N)/o,c=(s-N)/Tl,l=o-N,u=a,d=e.pow(t,s),f=e.pow(t,(s+N)/Tl),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-Tl;n=Tl<<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%Dl===El){let n=(e.ORDER-El)/Dl,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 xl(e,t){if(Fc(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=bl(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=Lc(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var Sl,Cl,wl,N,Tl,El,Dl,Ol=o((()=>{pl(),Qc(),Dc(),Sl=class extends Error{constructor(e=``){super(e)}},Cl={Err:Sl,_tlv:{encode:(e,t)=>{let{Err:n}=Cl;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=Qs(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Qs(i.length/2|128):``;return Qs(e)+a+i+t},decode(e,t){let{Err:n}=Cl,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}=Cl;if(e<wl)throw new t(`integer: negative integers are not allowed`);let n=Qs(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}=Cl;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 rc(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=Cl,i=sc(`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}=Cl,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},wl=BigInt(0),N=BigInt(1),Tl=BigInt(2),El=BigInt(3),Dl=BigInt(4)}));\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction kl(e){return{hash:e,hmac:(t,...n)=>qs(e,t,Hr(...n)),randomBytes:Gr}}function Al(e,t){let n=t=>yl({...e,...kl(t)});return{...n(t),create:n}}var jl=o((()=>{Js(),Yr(),Ol()}));function Ml(e,t){if(Pl(e),Pl(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 Nl(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 Pl(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Fl(e,t,n,r){Xs(e),Xs(t),Pl(n),t.length>255&&(t=r(cc(uc(`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=cc(t,Ml(t.length,1)),c=Ml(0,a),l=Ml(n,2),u=Array(o),d=r(cc(c,e,l,Ml(0,1),s));u[0]=r(cc(d,Ml(1,1),s));for(let e=1;e<=o;e++)u[e]=r(cc(Nl(d,u[e-1]),Ml(e+1,1),s));return cc(...u).slice(0,n)}function Il(e,t,n,r,i){if(Xs(e),Xs(t),Pl(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(uc(`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(Ml(n,2)).update(t).update(Ml(t.length,1)).digest()}function Ll(e,t,n){hc(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;Xs(e),Pl(t);let l=typeof c==`string`?uc(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Fl(e,l,f,o);else if(s===`xof`)p=Il(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]=Oc(Bl(p.subarray(i,i+d)),r)}m[e]=t}return m}function Rl(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]=Lc(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function zl(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=Ll(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(Ll(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 Bl,Vl=o((()=>{Qc(),Dc(),Bl=rc})),Hl=c({encodeToCurve:()=>vu,hashToCurve:()=>_u,schnorr:()=>pu,secp256k1:()=>iu,secp256k1_hasher:()=>gu});\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nfunction Ul(e){let t=Zl,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=kc(kc(kc(u,n,t)*u%t,n,t)*u%t,tu,t)*l%t,f=kc(d,i,t)*d%t,p=kc(f,a,t)*f%t,m=kc(p,s,t)*p%t,h=kc(kc(kc(kc(kc(kc(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,tu,t);if(!ru.eql(ru.sqr(h),e))throw Error(`Cannot find square root`);return h}function Wl(e,...t){let n=au[e];if(n===void 0){let t=Hs(Uint8Array.from(e,e=>e.charCodeAt(0)));n=cc(t,t),au[e]=n}return Hs(cc(n,...t))}function Gl(e){let t=iu.utils.normPrivateKeyToScalar(e),n=uu.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:lu(-t),bytes:ou(n)}}function Kl(e){fc(`x`,e,eu,Zl);let t=Ul(cu(cu(e*e)*e+BigInt(7)));t%tu!==$l&&(t=cu(-t));let n=new uu(e,t,eu);return n.assertValidity(),n}function ql(...e){return lu(fu(Wl(`BIP0340/challenge`,...e)))}function Jl(e){return Gl(e).bytes}function Yl(e,t,n=Gr(32)){let r=sc(`message`,e),{bytes:i,scalar:a}=Gl(t),o=lu(fu(Wl(`BIP0340/nonce`,su(a^fu(Wl(`BIP0340/aux`,sc(`auxRand`,n,32)))),i,r)));if(o===$l)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Gl(o),l=ql(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(su(lu(c+l*a)),32),!Xl(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Xl(e,t,n){let r=sc(`signature`,e,64),i=sc(`message`,t),a=sc(`publicKey`,n,32);try{let e=Kl(fu(a)),t=fu(r.subarray(0,32));if(!dc(t,eu,Zl))return!1;let n=fu(r.subarray(32,64));if(!dc(n,eu,Ql))return!1;let o=du(e,n,lu(-ql(su(t),ou(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Zl,Ql,$l,eu,tu,nu,ru,iu,au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u,vu,yu=o((()=>{Gs(),Yr(),jl(),Vl(),Qc(),Dc(),Ol(),Zl=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Ql=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),$l=BigInt(0),eu=BigInt(1),tu=BigInt(2),nu=(e,t)=>(e+t/tu)/t,ru=Bc(Zl,void 0,void 0,{sqrt:Ul}),iu=Al({a:$l,b:BigInt(7),Fp:ru,n:Ql,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Ql,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-eu*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=nu(a*e,t),c=nu(-r*e,t),l=Oc(e-s*n-c*i,t),u=Oc(-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}}}},Hs),au={},ou=e=>e.toRawBytes(!0).slice(1),su=e=>ac(e,32),cu=e=>Oc(e,Zl),lu=e=>Oc(e,Ql),uu=iu.ProjectivePoint,du=(e,t,n)=>uu.BASE.multiplyAndAddUnsafe(e,t,n),fu=rc,pu={getPublicKey:Jl,sign:Yl,verify:Xl,utils:{randomPrivateKey:iu.utils.randomPrivateKey,lift_x:Kl,pointToBytes:ou,numberToBytesBE:ac,bytesToNumberBE:rc,taggedHash:Wl,mod:Oc}},mu=Rl(ru,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),hu=xl(ru,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:ru.create(BigInt(`-11`))}),gu=zl(iu.ProjectivePoint,e=>{let{x:t,y:n}=hu(ru.create(e[0]));return mu(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:ru.ORDER,m:1,k:128,expand:`xmd`,hash:Hs}),_u=gu.hashToCurve,vu=gu.encodeToCurve}));Gt(),qt(),Hn(),j();async function bu({hash:e,signature:t}){let n=E(e)?e:Un(e),{secp256k1:r}=await Promise.resolve().then(()=>(yu(),Hl));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=xu(Number(a??i));return new r.Signature(k(e),k(n)).addRecoveryBit(o)}let e=E(t)?t:Un(t);if(Kt(e)!==65)throw Error(`invalid signature length`);let n=xu(Vn(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function xu(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 Su({hash:e,signature:t}){return Cs(await bu({hash:e,signature:t}))}O(),Fa(),rr(),j();function Cu(e,t=`hex`){let n=wu(e),r=Na(new Uint8Array(n.length));return n.encode(r),t===`hex`?Gn(r.bytes):r.bytes}function wu(e){return Array.isArray(e)?Tu(e.map(e=>wu(e))):Eu(e)}function Tu(e){let t=e.reduce((e,t)=>e+t.length,0),n=Du(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 Eu(e){let t=typeof e==`string`?Qn(e):e,n=Du(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 Du(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 D(`Length is too large.`)}Wi(),rr(),j(),_i();function Ou(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=gi(Ui([`0x05`,Cu([t?A(t):`0x`,i,n?A(n):`0x`])]));return r===`bytes`?Qn(a):a}async function ku(e){let{authorization:t,signature:n}=e;return Su({hash:Ou(t),signature:n??t})}po(),ho(),O(),Oo();var Au=class extends D{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}},ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu,Bu,Vu,Hu,Uu=o((()=>{ho(),O(),ju=class extends D{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(ju,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(ju,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),Mu=class extends D{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(Mu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),Nu=class extends D{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(Nu,`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/}),Pu=class extends D{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(Pu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),Fu=class extends D{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(Fu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),Iu=class extends D{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(Iu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),Lu=class extends D{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(Lu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),Ru=class extends D{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(Ru,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),zu=class extends D{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(zu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),Bu=class extends D{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(Bu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),Vu=class extends D{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(Vu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),Hu=class extends D{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function Wu(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof D?e.walk(e=>e?.code===ju.code):e;return r instanceof D?new ju({cause:e,message:r.details}):ju.nodeMessage.test(n)?new ju({cause:e,message:e.details}):Mu.nodeMessage.test(n)?new Mu({cause:e,maxFeePerGas:t?.maxFeePerGas}):Nu.nodeMessage.test(n)?new Nu({cause:e,maxFeePerGas:t?.maxFeePerGas}):Pu.nodeMessage.test(n)?new Pu({cause:e,nonce:t?.nonce}):Fu.nodeMessage.test(n)?new Fu({cause:e,nonce:t?.nonce}):Iu.nodeMessage.test(n)?new Iu({cause:e,nonce:t?.nonce}):Lu.nodeMessage.test(n)?new Lu({cause:e}):Ru.nodeMessage.test(n)?new Ru({cause:e,gas:t?.gas}):zu.nodeMessage.test(n)?new zu({cause:e,gas:t?.gas}):Bu.nodeMessage.test(n)?new Bu({cause:e}):Vu.nodeMessage.test(n)?new Vu({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new Hu({cause:e})}var Gu=o((()=>{O(),Uu()}));Uu(),Gu();function Ku(e,{docsPath:t,...n}){return new Au((()=>{let t=Wu(e,n);return t instanceof Hu?e:t})(),{docsPath:t,...n})}function qu(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 Ju=o((()=>{}));function Yu(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 Xu=o((()=>{}));function Zu(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=Qu(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=>Gn(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=A(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=A(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=A(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=A(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=A(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=A(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=$u[e.type]),e.value!==void 0&&(n.value=A(e.value)),n}function Qu(e){return e.map(e=>({address:e.address,r:e.r?A(BigInt(e.r)):e.r,s:e.s?A(BigInt(e.s)):e.s,chainId:A(e.chainId),nonce:A(e.nonce),...e.yParity===void 0?{}:{yParity:A(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:A(e.v)}:{}}))}var $u,ed,td=o((()=>{j(),Xu(),$u={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},ed=Yu(`transactionRequest`,Zu)}));function nd(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new Tn({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new Tn({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function rd(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=A(t)),n!==void 0&&(o.nonce=A(n)),r!==void 0&&(o.state=nd(r)),i!==void 0){if(o.state)throw new yo;o.stateDiff=nd(i)}return o}function id(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!Li(n,{strict:!1}))throw new ki({address:n});if(t[n])throw new vo({address:n});t[n]=rd(r)}return t}var ad=o((()=>{Ai(),En(),bo(),Bi(),j()})),od,sd=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)),od=2n**256n-1n}));function cd(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?M(t):void 0;if(a&&!Li(a.address))throw new ki({address:a.address});if(i&&!Li(i))throw new ki({address:i});if(n&&n>od)throw new Mu({maxFeePerGas:n});if(r&&n&&r>n)throw new Vu({maxFeePerGas:n,maxPriorityFeePerGas:r})}var ld=o((()=>{ya(),sd(),Ai(),Uu(),Bi()}));ho(),O();var ud=class extends D{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},dd=class extends D{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},fd=class extends D{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${mo(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};O();var pd=class extends D{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`})}};Hn(),Xu();let md={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function hd(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,...e.blockTimestamp!=null&&{blockTimestamp:BigInt(e.blockTimestamp)},chainId:e.chainId?Vn(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?Vn(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?md[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=_d(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 gd=Yu(`transaction`,hd);function _d(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 vd(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:hd(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}}j();async function yd(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:A(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 pd({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||vd)(s,`getBlock`)}async function bd(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}Hn();async function xd(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 T(e,yd,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?k(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):T(e,yd,`getBlock`)({}),T(e,bd,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new dd;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function Sd(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 ud;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await T(e,yd,`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 dd;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await xd(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 T(e,bd,`getGasPrice`)({}))}}function Cd(e){let{blockHash:t,blockNumber:n,blockTag:r,requireCanonical:i}=e;if(i!==void 0&&!t)throw new D(\"`requireCanonical` can only be provided when `blockHash` is set.\");return t?i?{blockHash:t,requireCanonical:i}:{blockHash:t}:typeof n==`bigint`?A(n):r??`latest`}var wd=o((()=>{O(),j()}));wd(),Hn();async function Td(e,{address:t,blockHash:n,blockNumber:r,blockTag:i=`latest`,requireCanonical:a}){let o=Cd({blockHash:n,blockNumber:r,blockTag:i,requireCanonical:a});return Vn(await e.request({method:`eth_getTransactionCount`,params:[t,o]},{dedupe:typeof r==`bigint`||n!==void 0}))}rr(),j();function Ed(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=>Qn(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Gn(e))}rr(),j();function Dd(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=>Qn(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Qn(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=>Gn(e))}Gs();let Od=Hs;Gt(),rr(),j();function kd(e,t){let n=t||`hex`,r=Od(E(e,{strict:!1})?Yn(e):e);return n===`bytes`?r:Un(r)}j();function Ad(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=kd(t,`bytes`);return i.set([n],0),r===`bytes`?i:Gn(i)}function jd(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Ad({commitment:e,to:r,version:n}));return i}let Md=4096,Nd=32*Md;Nd*6-1-1*Md*6,O();var Pd=class extends D{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Fd=class extends D{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},Id=class extends D{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Ld=class extends D{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};Fa(),qt(),rr(),j();function Rd(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Qn(e.data):e.data,r=Kt(n);if(!r)throw new Fd;if(r>761855)throw new Pd({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=Na(new Uint8Array(Nd)),t=0;for(;t<Md;){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=>Gn(e.bytes))}function zd(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Rd({data:t,to:r}),a=e.commitments??Ed({blobs:i,kzg:n,to:r}),o=e.proofs??Dd({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 Bd(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})}Uu(),Oo(),Gu();function Vd(e,{docsPath:t,...n}){return new Do((()=>{let t=Wu(e,n);return t instanceof Hu?e:t})(),{docsPath:t,...n})}Hn();async function Hd(e){return Vn(await e.request({method:`eth_chainId`},{dedupe:!0}))}ya(),Ju(),td(),ld();async function Ud(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=M(n),r=a?a.id:await T(e,Hd,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();cd(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Zu)({...qu(y,{format:x}),account:n?M(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||hd)(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!==void 0&&(r.nonce=t.nonce??r.nonce);let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await T(e,yd,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new ud;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.feePayerSignature||(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},...n.capabilities?{capabilities:n.capabilities}:{}}}catch(n){throw Vd(n,{...t,chain:e.chain})}}ya(),Mi(),ld();let Wd=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Gd=new Map,Kd=new ji(128);async function qd(e,t){let n=t;n.account??=e.account,n.parameters??=Wd;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 T(e,Hd,`getChainId`)({}),c):n.chainId)}let u=r&&M(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||Kd.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 T(e,Ud,`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 Kd.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}:{},...`keyAuthorization`in f&&f.keyAuthorization!==void 0&&f.keyAuthorization!==null&&!(`keyAuthorization`in n)?{keyAuthorization:f.keyAuthorization}:{},...`feePayerSignature`in f&&f.feePayerSignature!==void 0&&f.feePayerSignature!==null?{feePayerSignature:f.feePayerSignature}:{},...`feeToken`in f&&f.feeToken!==void 0&&f.feeToken!==null&&!(`feeToken`in n)?{feeToken:f.feeToken}:{},...t.capabilities?{_capabilities:t.capabilities}:{}}}).catch(t=>{let r=t;if(r.name!==`TransactionExecutionError`)return n;if(r.walk?.(e=>e.name===`ExecutionRevertedError`))throw t;return r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&Kd.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d===void 0?{}:{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 T(e,yd,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await T(e,Td,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=Ed({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=jd({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=zd({blobs:p,commitments:e,proofs:Dd({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=Bd(n)}catch{let t=Gd.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Gd.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 Sd(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new fd({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new dd;if(n.gasPrice===void 0){let{gasPrice:t}=await Sd(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await T(e,Jd,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),cd(n),delete n.parameters,n}ya(),O(),j(),Ju(),td(),ad(),ld();async function Jd(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?M(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 ku({authorization:t.authorizationList[0]}).catch(()=>{throw new D(\"`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 qd(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?A(u):void 0)||d,ee=id(b);cd(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Zu)({...qu(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 Ku(n,{...t,account:i,chain:e.chain})}}function Yd(e,t){if(!Li(e,{strict:!1}))throw new ki({address:e});if(!Li(t,{strict:!1}))throw new ki({address:t});return e.toLowerCase()===t.toLowerCase()}var Xd=o((()=>{Ai(),Bi()}));function Zd(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}:{}}}Sn(),Ma(),qt(),Oi(),$a(),Wt();let Qd=`/docs/contract/decodeEventLog`;function $d(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new ln({docsPath:Qd});let c=t.find(e=>e.type===`event`&&o===Di(Vt(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new un(o,{docsPath:Qd});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new _n({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=ef({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 en||e instanceof Aa?new gn({abiItem:c,data:n,params:g,size:Kt(n)}):e}else if(a)throw new gn({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function ef({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(Va([e],t)||[])[0]}Xd(),rr(),_i(),Oi();function tf(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:Di(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Zd(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=$d({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=$d({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)||!nf({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function nf(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`?Yd(t,n):e.type===`string`||e.type===`bytes`?gi(Yn(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 rf(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=ha({abi:t,args:n,name:r});if(!e)throw new dn(r,{docsPath:af});a=e}if(a.type!==`function`)throw new dn(void 0,{docsPath:af});if(!a.outputs)throw new fn(a.name,{docsPath:af});let o=Va(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var af,of=o((()=>{Sn(),$a(),va(),af=`/docs/contract/decodeFunctionResult`})),sf,cf=o((()=>{sf=`0.1.1`}));function lf(){return sf}var uf=o((()=>{cf()}));function df(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?df(e.cause,t):t?null:e}var P,ff=o((()=>{uf(),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 df(this,e)}},Object.defineProperty(P,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${lf()}`}}),P.setStaticOptions(P.defaultStaticOptions)}));function pf(e,t){if(Vf(e)>t)throw new ep({givenSize:Vf(e),maxSize:t})}function mf(e,t){if(typeof t==`number`&&t>0&&t>Vf(e)-1)throw new tp({offset:t,position:`start`,size:Vf(e)})}function hf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Vf(e)!==n-t)throw new tp({offset:n,position:`end`,size:Vf(e)})}function gf(e){if(e>=yf.zero&&e<=yf.nine)return e-yf.zero;if(e>=yf.A&&e<=yf.F)return e-(yf.A-10);if(e>=yf.a&&e<=yf.f)return e-(yf.a-10)}function _f(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new np({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 vf(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 yf,bf=o((()=>{rp(),yf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function xf(e,t){if(dp(e)>t)throw new wp({givenSize:dp(e),maxSize:t})}function Sf(e,t){if(typeof t==`number`&&t>0&&t>dp(e)-1)throw new Tp({offset:t,position:`start`,size:dp(e)})}function Cf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&dp(e)!==n-t)throw new Tp({offset:n,position:`end`,size:dp(e)})}function wf(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 Ep({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Tf(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 Ef=o((()=>{z()}));function Df(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=>Df(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)}:${Df(r)}`),t},[]).join(`,`)}}`}function Of(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Af)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function kf(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Af:n,n)}var Af,jf=o((()=>{Af=`#__bigint`}));function Mf(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 $f(e)}function Nf(...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 Pf(e){return e instanceof Uint8Array?e:typeof e==`string`?If(e):Ff(e)}function Ff(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function If(e,t={}){let{size:n}=t,r=e;n&&(xf(e,n),r=lp(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=gf(i.charCodeAt(t++)),r=gf(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 Lf(e,t={}){let{size:n}=t,r=Zf.encode(e);return typeof n==`number`?(pf(r,n),zf(r,n)):r}function Rf(e,t){return lc(e,t)}function zf(e,t){return _f(e,{dir:`right`,size:t})}function Bf(e){return crypto.getRandomValues(new Uint8Array(e))}function Vf(e){return e.length}function Hf(e,t,n,r={}){let{strict:i}=r;mf(e,t);let a=e.slice(t,n);return i&&hf(a,t,n),a}function Uf(e,t={}){let{size:n}=t;return n!==void 0&&pf(e,n),pp(I(e,t),t)}function Wf(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(pf(r,n),r=qf(r)),r.length>1||r[0]>1)throw new Qf(r);return!!r[0]}function Gf(e,t={}){let{size:n}=t;return n!==void 0&&pf(e,n),hp(I(e,t),t)}function Kf(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(pf(r,n),r=Jf(r)),Xf.decode(r)}function qf(e){return vf(e,{dir:`left`})}function Jf(e){return vf(e,{dir:`right`})}function Yf(e){try{return Mf(e),!0}catch{return!1}}var Xf,Zf,Qf,$f,ep,tp,np,rp=o((()=>{Dc(),ff(),z(),bf(),Ef(),jf(),Xf=new TextDecoder,Zf=new TextEncoder,Qf=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`})}},$f=class extends P{constructor(e){super(`Value \\`${typeof e==`object`?kf(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`})}},ep=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`})}},tp=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`})}},np=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 ip(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new xp(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new Sp(e)}function F(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function ap(e){return e instanceof Uint8Array?I(e):Array.isArray(e)?I(new Uint8Array(e)):e}function op(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(xf(n,t.size),cp(n,t.size)):n}function I(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=yp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(xf(r,t.size),lp(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 bp({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?cp(s,r):s}function sp(e,t={}){return I(vp.encode(e),t)}function cp(e,t){return wf(e,{dir:`left`,size:t})}function lp(e,t){return wf(e,{dir:`right`,size:t})}function up(e){return I(Bf(e))}function R(e,t,n,r={}){let{strict:i}=r;Sf(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Cf(a,t,n),a}function dp(e){return Math.ceil((e.length-2)/2)}function fp(e){return Tf(e,{dir:`left`})}function pp(e,t={}){let{signed:n}=t;t.size&&xf(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 mp(e,t={}){return If(e,t)}function hp(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:pp(e,t))}function gp(e,t={}){let{size:n}=t,r=If(e);return n&&(pf(r,n),r=Jf(r)),new TextDecoder().decode(r)}function _p(e,t={}){let{strict:n=!1}=t;try{return ip(e,{strict:n}),!0}catch{return!1}}var vp,yp,bp,xp,Sp,Cp,wp,Tp,Ep,z=o((()=>{rp(),ff(),bf(),Ef(),jf(),vp=new TextEncoder,yp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),bp=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`})}},xp=class extends P{constructor(e){super(`Value \\`${typeof e==`object`?kf(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`})}},Sp=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`})}},Cp=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`})}},wp=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`})}},Tp=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`})}},Ep=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 Dp(e){return{address:e.address,amount:L(e.amount),index:L(e.index),validatorIndex:L(e.validatorIndex)}}var Op=o((()=>{z()}));function kp(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(Dp)}}}var Ap=o((()=>{z(),Op()})),jp,Mp,Np,Pp,Fp,Ip=o((()=>{jp=[{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`}],Mp=[{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`}]}],Np=[{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`}],[...Np],[...Np],Pp=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Fp=[{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`}]})),Lp=o((()=>{})),Rp,zp,Bp,Vp,Hp=o((()=>{Rp=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,zp=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Bp=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Vp=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Up,Wp,Gp,Kp,qp,Jp=o((()=>{O(),Up=class extends D{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`})}},Wp=class extends D{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`})}},Gp=class extends D{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`})}},Kp=class extends D{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},qp=class extends D{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Yp(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 Qt({docsPath:Xp});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new $t({docsPath:Xp});return Ui([r,ea(i.inputs,n)])}var Xp,Zp=o((()=>{Sn(),Wi(),fa(),Xp=`/docs/contract/encodeDeployData`}));function Qp({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Up({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Up({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var $p=o((()=>{Jp()}));function em(e,{docsPath:t,...n}){return new Po((()=>{let t=Wu(e,n);return t instanceof Hu?e:t})(),{docsPath:t,...n})}var tm=o((()=>{Bo(),Uu(),Gu()}));function nm(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var rm=o((()=>{}));function im({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=()=>am.delete(t),s=()=>c().map(({args:e})=>e),c=()=>am.get(t)||[],l=e=>am.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=nm();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 am,om=o((()=>{rm(),am=new Map})),sm,cm,lm,um=o((()=>{ro(),O(),No(),sm=class extends D{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=>` ${Mo(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},cm=class extends D{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Mo(t)}`,`Response: ${no(e)}`],name:`OffchainLookupResponseMalformedError`})}},lm=class extends D{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 dm(e){let{abi:t,data:n}=e,r=Gi(n,0,4),i=t.find(e=>e.type===`function`&&r===pa(Vt(e)));if(!i)throw new pn(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?Va(i.inputs,Gi(n,4)):void 0}}var fm=o((()=>{Sn(),Xi(),ma(),$a(),Wt()}));function pm(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=ha({abi:t,args:r,name:n});if(!e)throw new sn(n,{docsPath:mm});i=e}if(i.type!==`error`)throw new sn(void 0,{docsPath:mm});let a=pa(Vt(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new on(i.name,{docsPath:mm});o=ea(i.inputs,r)}return Ui([a,o])}var mm,hm=o((()=>{Sn(),Wi(),ma(),fa(),Wt(),va(),mm=`/docs/contract/encodeErrorResult`}));function gm(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=ha({abi:t,name:n});if(!e)throw new dn(n,{docsPath:_m});i=e}if(i.type!==`function`)throw new dn(void 0,{docsPath:_m});if(!i.outputs)throw new fn(i.name,{docsPath:_m});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new bn(r)})();return ea(i.outputs,a)}var _m,vm=o((()=>{Sn(),fa(),va(),_m=`/docs/contract/encodeFunctionResult`}));async function ym(e){let{data:t,ccipRequest:n}=e,{args:[r]}=dm({abi:Mp,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await ym({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=bm(e)}})),gm({abi:Mp,functionName:`query`,result:[i,a]})}function bm(e){return e.name===`HttpRequestError`&&e.status?pm({abi:Mp,errorName:`HttpError`,args:[e.status,e.shortMessage]}):pm({abi:[Ea],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var xm=o((()=>{Ip(),Oa(),fm(),hm(),vm()})),Sm=c({ccipRequest:()=>wm,offchainLookup:()=>Cm,offchainLookupAbiItem:()=>Em,offchainLookupSignature:()=>Tm});async function Cm(e,{blockNumber:t,blockTag:n,data:r,requestOptions:i,to:a}){let{args:o}=eo({data:r,abi:[Em]}),[s,c,l,u,d]=o,{ccipRead:f}=e,p=f&&typeof f?.request==`function`?f.request:wm;try{if(!Yd(a,s))throw new lm({sender:s,to:a});let{data:r}=await Om(e,{blockNumber:t,blockTag:n,data:Vi([u,ea([{type:`bytes`},{type:`bytes`}],[c.includes(`x-batch-gateway:true`)?await ym({data:l,ccipRequest:e=>p({...e,requestOptions:i})}):await p({data:l,requestOptions:i,sender:s,urls:c}),d])]),requestOptions:i,to:a});return r}catch(e){throw i?.signal?.aborted?ko(i.signal):Ao(e)?e:new sm({callbackSelector:u,cause:e,data:r,extraData:d,sender:s,urls:c})}}async function wm({data:e,requestOptions:t,sender:n,urls:r}){let i=Error(`An unknown error occurred.`);for(let a=0;a<r.length;a++){if(t?.signal?.aborted)throw ko(t.signal);let o=r[a],s=o.includes(`{data}`)?`GET`:`POST`,c=s===`POST`?{data:e,sender:n}:void 0,l=s===`POST`?{\"Content-Type\":`application/json`}:{};try{let r=await fetch(o.replace(`{sender}`,n.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(c),headers:l,method:s,...t?.signal?{signal:t.signal}:{}}),a;if(a=r.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await r.json()).data:await r.text(),!r.ok){i=new Vo({body:c,details:a?.error?no(a.error):r.statusText,headers:r.headers,status:r.status,url:o});continue}if(!E(a)){i=new cm({result:a,url:o});continue}return a}catch(e){if(t?.signal?.aborted)throw ko(t.signal);if(Ao(e))throw e;i=new Vo({body:c,details:e.message,url:o})}}throw i}var Tm,Em,Dm=o((()=>{zm(),um(),Wo(),No(),to(),fa(),Xd(),Wi(),Gt(),xm(),ro(),Tm=`0x556f1830`,Em={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 Om(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockHash:a,blockNumber:o,blockTag:s=e.experimental_blockTag??`latest`,requireCanonical:c,accessList:l,blobs:u,blockOverrides:d,code:f,data:p,factory:m,factoryData:h,gas:g,gasPrice:_,maxFeePerBlobGas:v,maxFeePerGas:y,maxPriorityFeePerGas:b,nonce:x,requestOptions:S,to:ee,value:te,stateOverride:C,...w}=t,ne=n?M(n):void 0;if(f&&(m||h))throw new D(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(f&&ee)throw new D(\"Cannot provide both `code` & `to` as parameters.\");let re=f&&p,ie=m&&h&&ee&&p,ae=re||ie,oe=re?Pm({code:f,data:p}):ie?Fm({data:p,factory:m,factoryData:h,to:ee}):p;try{cd(t);let n=Cd({blockHash:a,blockNumber:o,blockTag:s,requireCanonical:c}),f=d?kp(d):void 0,p=id(C),m=e.chain?.formatters?.transactionRequest?.format,h=(m||Zu)({...qu(w,{format:m}),accessList:l,account:ne,authorizationList:r,blobs:u,data:oe,gas:g,gasPrice:_,maxFeePerBlobGas:v,maxFeePerGas:y,maxPriorityFeePerGas:b,nonce:x,to:ae?void 0:ee,value:te},`call`);if(i&&km({request:h})&&!f&&a===void 0)try{let{deployless:t=!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},n=Mm(e,{blockNumber:o,deployless:t});if(!n||!Nm(p,n))return await jm(e,{...h,blockHash:a,blockNumber:o,blockTag:s,multicallAddress:n,requestOptions:S,requireCanonical:c,rpcStateOverride:p})}catch(e){if(!(e instanceof Kp)&&!(e instanceof Up))throw e}let re=(()=>{let e=[h,n];return p&&f?[...e,p,f]:p?[...e,p]:f?[...e,{},f]:e})(),ie=await e.request({method:`eth_call`,params:re},S);return ie===`0x`?{data:void 0}:{data:ie}}catch(n){if(S?.signal?.aborted)throw ko(S.signal);if(Ao(n))throw n;let r=Im(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Dm(),Sm));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&ee)return{data:await i(e,{data:r,requestOptions:S,to:ee})};throw ae&&r?.slice(0,10)===`0x101bb98d`?new Ro({factory:m}):em(n,{...t,account:ne,chain:e.chain})}}function km({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)}function Am(e){if(!e)return`default`;let t=Rm.get(e);if(t!==void 0)return t;let n=Lm++;return Rm.set(e,n),n}async function jm(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockHash:a,blockNumber:o,blockTag:s=e.experimental_blockTag??`latest`,requireCanonical:c,data:l,multicallAddress:u,requestOptions:d,rpcStateOverride:f,to:p}=t,m=u===void 0?Mm(e,{blockNumber:o,deployless:r}):u,h=Cd({blockHash:a,blockNumber:o,blockTag:s,requireCanonical:c}),g=typeof h==`string`?h:JSON.stringify(h),_=f?`.${JSON.stringify(f)}`:``,{schedule:v}=im({id:`${e.uid}.${g}.${Am(d)}${_}`,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:jp,args:[n],functionName:`aggregate3`}),i={...m===null?{data:Pm({code:Vp,data:r})}:{to:m,data:r}},a=await e.request({method:`eth_call`,params:f?[i,h,f]:[i,h]},d);return rf({abi:jp,args:[n],functionName:`aggregate3`,data:a||`0x`})}}),[{returnData:y,success:b}]=await v({data:l,to:p});if(!b)throw new zo({data:y});return y===`0x`?{data:void 0}:{data:y}}function Mm(e,t){let{blockNumber:n,deployless:r}=t;if(r)return null;if(e.chain)return Qp({blockNumber:n,chain:e.chain,contract:`multicall3`});throw new Kp}function Nm(e,t){return e?Object.keys(e).some(e=>Yd(e,t)):!1}function Pm(e){let{code:t,data:n}=e;return Yp({abi:Rt([`constructor(bytes, bytes)`]),bytecode:Rp,args:[t,n]})}function Fm(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Yp({abi:Rt([`constructor(address, bytes, address, bytes)`]),bytecode:zp,args:[i,t,n,r]})}function Im(e){if(!(e instanceof D))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Lm,Rm,zm=o((()=>{Bt(),Ap(),ya(),Ip(),Lp(),Hp(),O(),Jp(),Bo(),No(),of(),Zp(),wa(),Xd(),wd(),$p(),tm(),Ju(),td(),om(),ad(),ld(),Lm=0,Rm=new WeakMap}));of(),wa(),zm();async function Bm(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 T(e,Om,`call`)({...o,data:s,to:r});return rf({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw Ss(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let Vm=new Map,Hm=new Map,Um=0;function Wm(e,t,n){let r=++Um,i=()=>Vm.get(e)||[],a=()=>{let t=i().filter(e=>e.id!==r);if(t.length===0){Vm.delete(e),Hm.delete(e);return}Vm.set(e,t)},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Hm.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(Vm.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`&&Hm.set(e,l),o}No();async function Gm(e,{signal:t}={}){return new Promise((n,r)=>{if(t?.aborted){r(ko(t));return}let i=()=>t?.removeEventListener(`abort`,o),a=setTimeout(()=>{i(),n()},e),o=()=>{clearTimeout(a),i(),r(ko(t))};t?.addEventListener(`abort`,o,{once:!0})})}function Km(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Gm(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Gm(r),s())};s()})(),a}O();var qm=class extends D{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`})}},Jm=class extends D{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Jp();function Ym({chain:e,currentChainId:t}){if(!e)throw new Gp;if(t!==e.id)throw new Wp({chain:e,currentChainId:t})}async function Xm(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}ya(),O(),Wi(),Ju(),td(),Mi(),ld();let Zm=new ji(128);async function Qm(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 qm({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?M(n):null,b;try{cd(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await ku({authorization:o[0]}).catch(()=>{throw new D(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await T(e,Hd,`getChainId`)({}),r&&Ym({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Zu)({...qu(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?Vi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Zm.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=>(Zm.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Zm.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){if(y.nonceManager&&h===void 0){let t=v.chainId,n=await(async()=>typeof t==`number`?t:i?i.id:T(e,Hd,`getChainId`)({}))();b={address:y.address,chainId:n}}let t=await T(e,qd,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?Vi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...Wd,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,x=await y.signTransaction(t,{serializer:r});return await T(e,Xm,`sendRawTransaction`)({serializedTransaction:x})}throw y?.type===`smart`?new Jm({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Jm({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Jm?e:(b&&y?.nonceManager?.reset(b),Vd(e,{...t,account:y,chain:t.chain||void 0}))}}ya(),wa();async function B(e,t){return B.internal(e,Qm,`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 qm({docsPath:`/docs/contract/writeContract`});let u=a?M(a):null,d=Ca({abi:i,args:s,functionName:c});try{return await T(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw Ss(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(B||={}),O();var $m=class extends D{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}};No();function eh(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0,signal:i}={}){return new Promise((a,o)=>{let s=async({count:c=0}={})=>{if(i?.aborted){o(ko(i));return}let l=async({error:e})=>{let n=typeof t==`function`?t({count:c,error:e}):t;if(n)try{await Gm(n,{signal:i})}catch(e){o(e);return}s({count:c+1})};try{a(await e())}catch(e){if(i?.aborted){o(ko(i));return}if(Ao(e)){o(e);return}if(c<n&&await r({count:c,error:e}))return l({error:e});o(e)}};s()})}Hn(),Xu();let th={\"0x0\":`reverted`,\"0x1\":`success`};function nh(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=>Zd(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Vn(e.transactionIndex):null,status:e.status?th[e.status]:null,type:e.type?md[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let rh=Yu(`transactionReceipt`,nh);ya(),O(),xs(),wa(),Wi(),Hn(),j();let ih=A(0,{size:32});async function ah(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?M(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?Vi([n,t.dataSuffix]):n,to:t.to,value:t.value?A(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:A(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 fs(new D(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new vs(new D(e,{details:e}))}let t=[];for(let n of d){let i=Qm(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?k(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:Vi([...n.map(e=>e.status===`fulfilled`?e.value:ih),A(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Vd(n,{...t,account:l,chain:t.chain})}}Xi(),Rn(),Hn();async function oh(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=Ln(Yi(t,-64,-32)),r=Yi(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>ih.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:Vn(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?Vn(i):void 0,receipts:a?.map(e=>({...e,blockNumber:k(e.blockNumber),gasUsed:k(e.gasUsed),status:th[e.status]}))??[],statusCode:l,status:c,version:o}}O(),rm(),ro();async function sh(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}=nm(),p,m=Wm(l,{resolve:d,reject:f},t=>{let s=Km(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await eh(async()=>{let t=await T(e,oh,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new $m(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 ch({id:n}))},s):void 0,await u}var ch=class extends D{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let lh=256,uh;function dh(e=11){if(!uh||lh+e>256*2){uh=``,lh=0;for(let e=0;e<256;e++)uh+=(256+Math.random()*256|0).toString(16).substring(1)}return uh.substring(lh,lh+++e)}ya();function fh(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?M(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:dh(),...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(_)})}wd();async function ph(e,{address:t,blockHash:n,blockNumber:r,blockTag:i=`latest`,requireCanonical:a}){let o=Cd({blockHash:n,blockNumber:r,blockTag:i,requireCanonical:a}),s=await e.request({method:`eth_getCode`,params:[t,o]},{dedupe:typeof r==`bigint`||n!==void 0});if(s!==`0x`)return s}sd(),Ai(),O(),Jp(),Uu(),Bi(),qt(),Xi(),Hn();function mh(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!Li(n))throw new ki({address:n});if(t<0)throw new qp({chainId:t})}gh(e)}function hh(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Fd;for(let e of t){let t=Kt(e),n=Vn(Gi(e,0,1));if(t!==32)throw new Id({hash:e,size:t});if(n!==1)throw new Ld({hash:e,version:n})}}gh(e)}function gh(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new qp({chainId:t});if(i&&!Li(i))throw new ki({address:i});if(r&&r>od)throw new Mu({maxFeePerGas:r});if(n&&r&&n>r)throw new Vu({maxFeePerGas:r,maxPriorityFeePerGas:n})}function _h(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new qp({chainId:t});if(a&&!Li(a))throw new ki({address:a});if(n||i)throw new D(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>od)throw new Mu({maxFeePerGas:r})}function vh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!Li(a))throw new ki({address:a});if(t!==void 0&&t<=0)throw new qp({chainId:t});if(n||i)throw new D(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>od)throw new Mu({maxFeePerGas:r})}Ai(),Oo(),Bi();function yh(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(!Li(r,{strict:!1}))throw new ki({address:r});t.push([r,i])}return t}Oo(),Wi(),Rn(),j();function bh(e,t){let n=Bd(e);return n===`eip1559`?Ch(e,t):n===`eip2930`?wh(e,t):n===`eip4844`?Sh(e,t):n===`eip7702`?xh(e,t):Th(e,t)}function xh(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;mh(e);let f=yh(u),p=Dh(n);return Ui([`0x04`,Cu([A(r),a?A(a):`0x`,l?A(l):`0x`,c?A(c):`0x`,i?A(i):`0x`,o??`0x`,s?A(s):`0x`,d??`0x`,f,p,...Eh(e,t)])])}function Sh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;hh(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=>Gn(e)),n=e.kzg,r=Ed({blobs:t,kzg:n});f===void 0&&(f=jd({commitments:r})),p===void 0&&(p=zd({blobs:t,commitments:r,proofs:Dd({blobs:t,commitments:r,kzg:n})}))}let m=yh(u),h=[A(n),i?A(i):`0x`,l?A(l):`0x`,c?A(c):`0x`,r?A(r):`0x`,a??`0x`,o?A(o):`0x`,d??`0x`,m,s?A(s):`0x`,f??[],...Eh(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 Ui([`0x03`,Cu(p?[h,g,_,v]:h)])}function Ch(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;gh(e);let d=yh(l);return Ui([`0x02`,Cu([A(n),i?A(i):`0x`,c?A(c):`0x`,s?A(s):`0x`,r?A(r):`0x`,a??`0x`,o?A(o):`0x`,u??`0x`,d,...Eh(e,t)])])}function wh(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;_h(e);let u=yh(c);return Ui([`0x01`,Cu([A(n),a?A(a):`0x`,l?A(l):`0x`,r?A(r):`0x`,o??`0x`,s?A(s):`0x`,i??`0x`,u,...Eh(e,t)])])}function Th(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;vh(e);let l=[a?A(a):`0x`,c?A(c):`0x`,r?A(r):`0x`,o??`0x`,s?A(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=Ln(t.r),i=Ln(t.s);l=[...l,A(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,A(n),`0x`,`0x`]);return Cu(l)}function Eh(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=Ln(n.r),o=Ln(n.s);return[typeof i==`number`?i?A(1):`0x`:r===0n?`0x`:r===1n?A(1):r===27n?`0x`:A(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}j();function Dh(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?Un(e):`0x`,a,r?Un(r):`0x`,...Eh({},i)])}return t}Ii(),Xd();async function Oh({address:e,authorization:t,signature:n}){return Yd(Pi(e),await ku({authorization:t,signature:n}))}Mi();let kh=new ji(8192);function Ah(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(kh.get(n))return kh.get(n);let r=e().finally(()=>kh.delete(n));return kh.set(n,r),r}O(),Wo(),xs(),No(),ro();function jh(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,signal:c,uid:l}={...t,...r},{method:u}=n;if(a?.exclude?.includes(u)||a?.include&&!a.include.includes(u))throw new rs(Error(`method not supported`),{method:u});if(c?.aborted)throw ko(c);return Ah(()=>eh(async()=>{try{return await e(n,c?{signal:c}:void 0)}catch(e){if(c?.aborted)throw ko(c);if(Ao(e))throw e;let t=e;switch(t.code){case Jo.code:throw new Jo(t);case Yo.code:throw new Yo(t);case Xo.code:throw new Xo(t,{method:n.method});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);case ns.code:throw new ns(t);case rs.code:throw new rs(t,{method:n.method});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 _s.code:throw new _s(t);case vs.code:throw new vs(t);case 5e3:throw new os(t);case ys.code:throw new ys(t);default:throw e instanceof D?e:new bs(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof Vo){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,signal:c,shouldRetry:({error:e})=>Mh(e)}),{enabled:i,id:i?Nh(`${l}.${no(n)}`):void 0})}}function Mh(e){return Ao(e)?!1:`code`in e&&typeof e.code==`number`?e.code===-1||e.code===is.code||e.code===Qo.code||e.code===429:e instanceof Vo&&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 Nh(e,t=0){let n=3735928559^t,r=1103547991^t;for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);n=Math.imul(n^i,2654435761),r=Math.imul(r^i,1597334677)}return n=Math.imul(n^n>>>16,2246822507),n^=Math.imul(r^r>>>16,3266489909),r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(n^n>>>16,3266489909),(4294967296*(2097151&r)+(n>>>0)).toString(36)}function Ph(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 Fh(){return{}}O(),In(),Fa(),rr(),j();function Ih(e,t=`hex`){return Lh(Na((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Pn(e);return Qn(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Lh(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Gn(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Rh(e,n,128),i=e.readBytes(r);return t===`hex`?Gn(i):i}return zh(e,Rh(e,n,192),t)}function Rh(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 D(`Invalid RLP prefix`)}function zh(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Lh(e,n));return i}Gt(),qt();function Bh(e){return E(e)&&Kt(e)===32}No();function Vh(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o,s=new AbortController;try{n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){if(s?.signal.aborted&&Ao(e)){a(t);return}a(e)}finally{clearTimeout(o)}})()})}function Hh(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Uh=Hh();Wo(),No(),ro();function Wh(e,t={}){let{url:n,headers:r}=Gh(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 Vh(async({signal:e})=>{let t={...l,body:no(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Uh.take(),...e})):{jsonrpc:`2.0`,id:i.id??Uh.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new Uo({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 Vo({body:i,details:no(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw f?.aborted?ko(f):Ao(e)||e instanceof Vo||e instanceof Uo?e:new Vo({body:i,cause:e,url:n})}}}}function Gh(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}}}Wi(),qt(),j();function Kh(e){let t=typeof e==`string`?Kn(e):typeof e.raw==`string`?e.raw:Gn(e.raw);return Vi([Kn(`\u0019Ethereum Signed Message:\n${Kt(t)}`),t])}_i();function qh(e,t){return gi(Kh(e),t)}ro(),O();var Jh=class extends D{constructor({domain:e}){super(`Invalid domain \"${no(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Yh=class extends D{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`.\"]})}},Xh=class extends D{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};Sn(),Ai(),Bi(),qt(),j(),$i(),ro();function Zh(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 Qh(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(Qi);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;A(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!Li(o))throw new ki({address:o});let c=r.match(Zi);if(c){let[e,t]=c;if(t&&Kt(o)!==Number.parseInt(t,10))throw new hn({expectedSize:Number.parseInt(t,10),givenSize:Kt(o)})}let l=i[r];l&&(eg(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Jh({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Yh({primaryType:r,types:i})}function $h({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 eg(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Xh({type:e})}fa(),Wi(),j(),_i();function tg(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:$h({domain:t}),...e.types};Qh({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(ng({domain:t,types:i})),r!==`EIP712Domain`&&a.push(rg({data:n,primaryType:r,types:i})),gi(Vi(a))}function ng({domain:e,types:t}){return rg({data:e,primaryType:`EIP712Domain`,types:t})}function rg({data:e,primaryType:t,types:n}){return gi(ig({data:e,primaryType:t,types:n}))}function ig({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[ag({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=cg({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return ea(r,i)}function ag({primaryType:e,types:t}){return gi(Un(og({primaryType:e,types:t})))}function og({primaryType:e,types:t}){let n=``,r=sg({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 sg({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])sg({primaryType:e.type,types:t},n);return n}function cg({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},gi(ig({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},gi(r)];if(n===`string`)return[{type:`bytes32`},gi(Un(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>cg({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},gi(ea(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}var lg=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 ug(e,t){return e.exec(t)?.groups}let dg=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,fg=/^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)?$/,pg=/^\\(.+?\\).*?$/,mg=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function hg(e){let t=e.type;if(mg.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+=hg(i),r<n-1&&(t+=`, `)}let r=ug(mg,e.type);return t+=`)${r?.array||``}`,hg({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function gg(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=hg(i),r!==n-1&&(t+=`, `)}return t}function _g(e){return e.type===`function`?`function ${e.name}(${gg(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${gg(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${gg(e.inputs)})`:e.type===`error`?`error ${e.name}(${gg(e.inputs)})`:e.type===`constructor`?`constructor(${gg(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let vg=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function yg(e){return vg.test(e)}function bg(e){return ug(vg,e)}let xg=new Set([`memory`,`indexed`,`storage`,`calldata`]),Sg=new Set([`calldata`,`memory`,`storage`]);var Cg=class extends lg{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`})}},wg=class extends lg{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`})}},Tg=class extends lg{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`})}},Eg=class extends lg{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Dg=class extends lg{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`})}},Og=class extends lg{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`})}},kg=class extends lg{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`})}},Ag=class extends lg{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`})}},jg=class extends lg{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Mg=class extends lg{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`})}},Ng=class extends lg{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`})}},Pg=class extends lg{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 Fg(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 Ig=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}]]),Lg=/^(?<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$_]*))?$/,Rg=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,zg=/^u?int$/;function Bg(e,t){let n=Fg(e,t?.type,t?.structs);if(Ig.has(n))return Ig.get(n);let r=pg.test(e),i=ug(r?Rg:Lg,e);if(!i)throw new Eg({param:e});if(i.name&&Wg(i.name))throw new Dg({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=Vg(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Bg(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(zg.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Hg(c))throw new wg({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Og({param:e,type:t?.type,modifier:i.modifier});if(Sg.has(i.modifier)&&!Gg(c,!!i.array))throw new kg({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Ig.set(n,u),u}function Vg(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?Vg(o,[...t,n.trim()]):Vg(o,t,`${n}${i}`,r);case`(`:return Vg(o,t,`${n}${i}`,r+1);case`)`:return Vg(o,t,`${n}${i}`,r-1);default:return Vg(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Pg({current:n,depth:r});return t.push(n.trim()),t}function Hg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||dg.test(e)||fg.test(e)}let Ug=/^(?: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 Wg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||dg.test(e)||fg.test(e)||Ug.test(e)}function Gg(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Kg(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!yg(n))continue;let i=bg(n);if(!i)throw new jg({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=Bg(t,{type:`struct`});o.push(n)}if(!o.length)throw new Mg({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]=Jg(a,t)}return r}let qg=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Jg(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(pg.test(i.type))r.push(i);else{let e=ug(qg,i.type);if(!e?.type)throw new Ag({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Ng({type:o});r.push({...i,type:`tuple${a??``}`,components:Jg(t[o],t,new Set([...n,o]))})}else if(Hg(o))r.push(i);else throw new Cg({type:o})}}return r}function Yg(e){let t=[];if(typeof e==`string`){let n=Vg(e),r=n.length;for(let e=0;e<r;e++)t.push(Bg(n[e],{modifiers:xg}))}else{let n=Kg(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(yg(r))continue;let a=Vg(r),o=a.length;for(let e=0;e<o;e++)t.push(Bg(a[e],{modifiers:xg,structs:n}))}}if(t.length===0)throw new Tg({params:e});return t}let Xg={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;Js(),hi(),rp(),z();function Zg(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=pi(Pf(e));return n===`Bytes`?r:I(r)}function Qg(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=qs(Od,Pf(e),Pf(t));return r===`Bytes`?i:I(i)}function $g(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Od(Pf(e));return n===`Bytes`?r:I(r)}function e_(e){return _p(e)&&dp(e)===32}rp(),ff(),z(),jf();function t_(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 c_({prefix:r,cause:new u_});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new c_({prefix:r,cause:new l_});return}throw new s_({publicKey:e})}function n_(e){let t=(()=>{if(_p(e))return i_(e);if(Yf(e))return r_(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 t_(t),t}function r_(e){return i_(I(e))}function i_(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new d_({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 a_(e,t={}){return If(o_(e,t))}function o_(e,t={}){t_(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 s_=class extends P{constructor({publicKey:e}){super(`Value \\`${kf(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`})}},c_=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`})}},l_=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`})}},u_=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`})}},d_=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 ${dp(ap(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};rp(),ff();let f_=/^0x[a-fA-F0-9]{40}$/;function p_(e,t={}){let{strict:n=!0}=t;if(!f_.test(e))throw new y_({address:e,cause:new b_});if(n){if(e.toLowerCase()===e)return;if(m_(e)!==e)throw new y_({address:e,cause:new x_})}}function m_(e){if(Xg.has(e))return Xg.get(e);p_(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Zg(Lf(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 Xg.set(e,i),i}function h_(e,t={}){let{checksum:n=!1}=t;return p_(e),n?m_(e):e}function g_(e,t={}){return h_(`0x${Zg(`0x${o_(e).slice(4)}`).substring(26)}`,t)}function __(e,t){return p_(e,{strict:!1}),p_(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function v_(e,t={}){let{strict:n=!0}=t??{};try{return p_(e,{strict:n}),!0}catch{return!1}}var y_=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`})}},b_=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`})}},x_=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 S_=/^(.*)\\[([0-9]*)\\]$/,C_=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,w_=/^(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 T_=2n**256n-1n;rp(),ff(),z();function E_(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=W_(t.type);if(a){let[n,o]=a;return O_(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return M_(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return D_(e,{checksum:r});if(t.type===`bool`)return k_(e);if(t.type.startsWith(`bytes`))return A_(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return j_(e,t);if(t.type===`string`)return N_(e,{staticPosition:i});throw new sv(t.type)}function D_(e,t={}){let{checksum:n=!1}=t;return[(e=>n?m_(e):e)(I(Hf(e.readBytes(32),-20))),32]}function O_(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Gf(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Gf(e.readBytes(32)),s=G_(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=E_(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(G_(t)){let n=a+Gf(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=E_(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_(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function k_(e){return[Wf(e.readBytes(32),{size:32}),32]}function A_(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Gf(e.readBytes(32));e.setPosition(n+t);let r=Gf(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 j_(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?Uf(i,{signed:n}):Gf(i,{signed:n}),32]}function M_(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(G_(t)){let n=i+Gf(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_(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_(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function N_(e,{staticPosition:t}){let n=t+Gf(e.readBytes(32));e.setPosition(n);let r=Gf(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Kf(qf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function P_({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(F_({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function F_({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=W_(r.type);if(i){let[t,a]=i;return R_(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return U_(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return L_(n,{checksum:e});if(r.type===`bool`)return B_(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=w_.exec(r.type)??[];return V_(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return z_(n,{type:r.type});if(r.type===`string`)return H_(n);throw new sv(r.type)}function I_(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=dp(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+=dp(s)):n.push(s)}return F(...n,...r)}function L_(e,t){let{checksum:n=!1}=t;return p_(e,{strict:n}),{dynamic:!1,encoded:cp(e.toLowerCase())}}function R_(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new ov(e);if(!a&&e.length!==r)throw new rv({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=F_({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=I_(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 z_(e,{type:t}){let[,n]=t.split(`bytes`),r=dp(e);if(!n){let t=e;return r%32!=0&&(t=lp(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:F(cp(L(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new iv({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:lp(e)}}function B_(e){if(typeof e!=`boolean`)throw new P(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:cp(op(e))}}function V_(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 bp({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 H_(e){let t=sp(e),n=Math.ceil(dp(t)/32),r=[];for(let e=0;e<n;e++)r.push(lp(R(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:F(lp(L(dp(t),{size:32})),...r)}}function U_(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=F_({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?I_(a):F(...a.map(({encoded:e})=>e))}}function W_(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function G_(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(G_);let n=W_(e.type);return!!(n&&G_({...e,type:n[1]}))}ff();let K_={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 X_({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Y_({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new J_({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 J_({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 q_(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(K_);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var J_=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`})}},Y_=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`})}},X_=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`})}};rp(),ff(),z();function Z_(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?If(t):t,o=q_(a);if(Vf(a)===0&&e.length>0)throw new nv;if(Vf(a)&&Vf(a)<32)throw new tv({data:typeof t==`string`?t:I(t),parameters:e,size:Vf(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]=E_(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Q_(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new av({expectedLength:e.length,givenLength:t.length});let i=I_(P_({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function $_(e,t){if(e.length!==t.length)throw new av({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($_.encode(i,a))}return F(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return p_(e),cp(e.toLowerCase(),r?32:0)}if(e===`string`)return sp(n);if(e===`bytes`)return n;if(e===`bool`)return cp(op(n),r?32:1);let i=e.match(w_);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(C_);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new iv({expectedSize:Number.parseInt(t,10),value:n});return lp(n,r?32:0)}let o=e.match(S_);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 sv(e)}e.encode=t})($_||={});function ev(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Yg(e):e}var tv=class extends P{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${gg(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},nv=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`})}},rv=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`})}},iv=class extends P{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${dp(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},av=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`})}},ov=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`})}},sv=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`})}};rp(),ff(),z();function cv(e){return lv(e,`Hex`)}function lv(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return uv(q_((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Cp(e);return If(e)}return e})(),{recursiveReadLimit:1/0}),n)}function uv(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=dv(e,n,128),i=e.readBytes(r);return t===`Hex`?I(i):i}return fv(e,dv(e,n,192),t)}function dv(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 fv(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(uv(e,n));return i}function pv(e,t){let{as:n}=t,r=hv(e),i=q_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?I(i.bytes):i.bytes}function mv(e,t={}){let{as:n=`Hex`}=t;return pv(e,{as:n})}function hv(e){return Array.isArray(e)?gv(e.map(e=>hv(e))):_v(e)}function gv(e){let t=e.reduce((e,t)=>e+t.length,0),n=vv(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 _v(e){let t=typeof e==`string`?If(e):e,n=vv(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 vv(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.`)}ff(),z(),jf();function yv(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Nv({signature:e});if(e.r<0n||e.r>T_)throw new Pv({value:e.r});if(e.s<0n||e.s>T_)throw new Fv({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Iv({value:e.yParity})}function bv(e){return xv(I(e))}function xv(e){if(e.length!==130&&e.length!==132)throw new Mv({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 Av(t)}catch{throw new Iv({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function Sv(e){if(e.r!==void 0&&e.s!==void 0)return Cv(e)}function Cv(e){let t=typeof e==`string`?xv(e):e instanceof Uint8Array?bv(e):typeof e.r==`string`?Tv(e):e.v?wv(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return yv(t),t}function wv(e){return{r:e.r,s:e.s,yParity:Av(e.v)}}function Tv(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=Av(t)),typeof n!=`number`)throw new Iv({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Ev(e){let[t,n,r]=e;return Cv({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function Dv(e){yv(e);let t=e.r,n=e.s;return F(L(t,{size:32}),L(n,{size:32}),typeof e.yParity==`number`?L(jv(e.yParity),{size:1}):`0x`)}function Ov(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 kv(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:fp(L(t)),n===0n?`0x`:fp(L(n))]}function Av(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Lv({value:e})}function jv(e){if(e===0)return 27;if(e===1)return 28;throw new Iv({value:e})}var Mv=class extends P{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${dp(ap(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Nv=class extends P{constructor({signature:e}){super(`Signature \\`${kf(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Pv=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`})}},Fv=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`})}},Iv=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`})}},Lv=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 Rv(e,t={}){return typeof e.chainId==`string`?zv(e):{...e,...t.signature}}function zv(e){let{address:t,chainId:n,nonce:r}=e,i=Sv(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Bv(e){return e.map(zv)}function Vv(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:L(n),nonce:L(r),...Ov(i)}}function Hv(e){return e.map(Vv)}yu(),rp(),z();function Uv(e){let{privateKey:t}=e;return n_(iu.ProjectivePoint.fromPrivateKey(ap(t).slice(2)))}function Wv(e){return g_(Gv(e))}function Gv(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return n_(new iu.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(ap(t).substring(2)))}function Kv(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=iu.sign(Pf(r),Pf(i),{extraEntropy:typeof t==`boolean`?t:ap(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function qv(e){let{hash:t,payload:n}=e;return e.address?__(e.address,Wv({payload:n,signature:e.signature})):iu.verify(e.signature,Pf(n),a_(e.publicKey),...t?[{prehash:!0,lowS:!0}]:[])}ff(),z();let Jv=ev(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Yv(e){if(typeof e==`string`){if(R(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Qv(e)}else yv(e.authorization)}function Xv(e){Yv(e);let t=hp(R(e,-64,-32)),n=R(e,-t-64,-64),r=R(e,0,-t-64),[i,a,o]=Z_(Jv,n);return{authorization:Rv({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 Zv(e){try{return Yv(e),!0}catch{return!1}}var Qv=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(),Xi(),Hn();function $v(e){let t=Yi(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`&&Vn(t)>=192)return`legacy`;throw new wo({serializedType:t})}Ai(),Oo(),Bi(),Gt(),An(),Rn(),Hn();function ey(e){let t=$v(e);return t===`eip1559`?ry(e):t===`eip2930`?iy(e):t===`eip4844`?ny(e):t===`eip7702`?ty(e):ay(e)}function ty(e){let t=oy(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:Vn(n),type:`eip7702`};return E(s)&&s!==`0x`&&(h.to=s),E(o)&&o!==`0x`&&(h.gas=k(o)),E(l)&&l!==`0x`&&(h.data=l),E(r)&&(h.nonce=r===`0x`?0:Vn(r)),E(c)&&c!==`0x`&&(h.value=k(c)),E(a)&&a!==`0x`&&(h.maxFeePerGas=k(a)),E(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(h.accessList=sy(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=cy(d)),mh(h),{...t.length===13?ly(t):void 0,...h}}function ny(e){let t=oy(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:Vn(a),to:u,type:`eip4844`};return E(l)&&l!==`0x`&&(S.gas=k(l)),E(f)&&f!==`0x`&&(S.data=f),E(o)&&(S.nonce=o===`0x`?0:Vn(o)),E(d)&&d!==`0x`&&(S.value=k(d)),E(m)&&m!==`0x`&&(S.maxFeePerBlobGas=k(m)),E(c)&&c!==`0x`&&(S.maxFeePerGas=k(c)),E(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=k(s)),p.length!==0&&p!==`0x`&&(S.accessList=sy(p)),y&&b&&x&&(S.sidecars=zd({blobs:y,commitments:b,proofs:x})),hh(S),{...r.length===14?ly(r):void 0,...S}}function ry(e){let t=oy(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:Vn(n),type:`eip1559`};return E(s)&&s!==`0x`&&(m.to=s),E(o)&&o!==`0x`&&(m.gas=k(o)),E(l)&&l!==`0x`&&(m.data=l),E(r)&&(m.nonce=r===`0x`?0:Vn(r)),E(c)&&c!==`0x`&&(m.value=k(c)),E(a)&&a!==`0x`&&(m.maxFeePerGas=k(a)),E(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(m.accessList=sy(u)),gh(m),{...t.length===12?ly(t):void 0,...m}}function iy(e){let t=oy(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:Vn(n),type:`eip2930`};return E(o)&&o!==`0x`&&(p.to=o),E(a)&&a!==`0x`&&(p.gas=k(a)),E(c)&&c!==`0x`&&(p.data=c),E(r)&&(p.nonce=r===`0x`?0:Vn(r)),E(s)&&s!==`0x`&&(p.value=k(s)),E(i)&&i!==`0x`&&(p.gasPrice=k(i)),l.length!==0&&l!==`0x`&&(p.accessList=sy(l)),_h(p),{...t.length===11?ly(t):void 0,...p}}function ay(e){let t=Ih(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(E(a)&&a!==`0x`&&(d.to=a),E(i)&&i!==`0x`&&(d.gas=k(i)),E(s)&&s!==`0x`&&(d.data=s),E(n)&&(d.nonce=n===`0x`?0:Vn(n)),E(o)&&o!==`0x`&&(d.value=k(o)),E(r)&&r!==`0x`&&(d.gasPrice=k(r)),vh(d),t.length===6)return d;let f=E(c)&&c!==`0x`?k(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 oy(e){return Ih(`0x${e.slice(4)}`,`hex`)}function sy(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Li(r,{strict:!1}))throw new ki({address:r});t.push({address:r,storageKeys:i.map(e=>Bh(e)?e:Ln(e))})}return t}function cy(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:Vn(r),nonce:a===`0x`?0:Vn(a),...ly([o,s,c])})}return t}function ly(e){let t=e.slice(-3),n=t[0]===`0x`||k(t[0])===0n?27n:28n;return{r:On(t[1],{size:32}),s:On(t[2],{size:32}),v:n,yParity:n===27n?0:1}}O();var uy=class extends D{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function dy(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new uy({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}`)}Ip(),Hp(),Sn(),O(),Bo(),of(),wa(),$p();async function fy(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockHash:a,blockNumber:o,blockOverrides:s,blockTag:c,requireCanonical:l,stateOverride:u}=t,d=t.contracts,{batchSize:f=t.batchSize??1024,deployless:p=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},m=(()=>{if(t.multicallAddress)return t.multicallAddress;if(p)return null;if(e.chain)return Qp({blockNumber:o,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),h=[[]],g=0,_=0;for(let e=0;e<d.length;e++){let{abi:t,address:r,args:a,functionName:o}=d[e];try{let e=Ca({abi:t,args:a,functionName:o});_+=(e.length-2)/2,f>0&&_>f&&h[g].length>0&&(g++,_=(e.length-2)/2,h[g]=[]),h[g]=[...h[g],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=Ss(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;h[g]=[...h[g],{allowFailure:!0,callData:`0x`,target:r}]}}let v=await Promise.allSettled(h.map(t=>T(e,Bm,`readContract`)({...m===null?{code:Vp}:{address:m},abi:jp,account:n,args:[t],authorizationList:r,blockHash:a,blockNumber:o,blockOverrides:s,blockTag:c,functionName:`aggregate3`,requireCanonical:l,stateOverride:u}))),y=[];for(let e=0;e<v.length;e++){let t=v[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<h[e].length;n++)y.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}=h[e][t],{abi:s,address:c,functionName:l,args:u}=d[y.length];try{if(o===`0x`)throw new tn;if(!a)throw new zo({data:r});let e=rf({abi:s,args:u,data:r,functionName:l});y.push(i?{result:e,status:`success`}:e)}catch(e){let t=Ss(e,{abi:s,address:c,args:u,docsPath:`/docs/contract/multicall`,functionName:l});if(!i)throw t;y.push({error:t,result:void 0,status:`failure`})}}}if(y.length!==d.length)throw new D(`multicall results mismatch`);return y}ff();function py(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 my(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return v_(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)=>my(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=>my(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function hy(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 hy(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`))&&v_(n[r],{strict:!1}))return o}}ff(),z();function gy(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=_p(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?_y(e)===R(t,0,4):e.type===`event`?yy(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new xy({name:t});if(o.length===1)return{...o[0],...i?{hash:yy(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:yy(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?my(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=hy(e.inputs,s.inputs,r);if(t)throw new by({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 xy({name:t});return{...c,...i?{hash:yy(c)}:{}}}function _y(...e){return R(yy((()=>{if(Array.isArray(e[0])){let[t,n]=e;return gy(t,n)}return e[0]})()),0,4)}function vy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return gy(t,n)}return e[0]})();return py(typeof t==`string`?t:_g(t))}function yy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return gy(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Zg(sp(vy(t)))}var by=class extends P{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${py(_g(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${py(_g(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`})}},xy=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 Sy(e){return _y(e)}ff(),z();function Cy(e){if(R(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new Ey(e)}function wy(e){let{data:t,signature:n,to:r}=e;return F(Q_(ev(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function Ty(e){try{return Cy(e),!0}catch{return!1}}var Ey=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`})}};yu(),Hn(),rr();function Dy({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 iu.Signature(k(e),k(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Qn(o)}Ip(),Hp(),Bo(),Zp(),wa(),Ii(),Xd(),Wi(),Gt(),Hn(),j(),zm();async function Oy(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 E(e)?e:typeof e==`object`&&`r`in e&&`s`in e?Dy(e):Gn(e)})();try{if(s===`eoa`)try{if(Yd(Pi(n),await Su({hash:i,signature:c})))return!0}catch{}return Zv(c)?await ky(e,{...t,multicallAddress:o,signature:c}):await Ay(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Yd(Pi(n),await Su({hash:i,signature:c})))return!0}catch{}if(e instanceof My)return!1;throw e}}async function ky(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Xv(t.signature);if(await ph(e,{address:n,blockNumber:r,blockTag:i})===Ui([`0xef0100`,s.address]))return await jy(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:A(s.r,{size:32}),s:A(s.s,{size:32}),yParity:s.yParity};if(!await Oh({address:n,authorization:d}))throw new My;let f=await T(e,Bm,`readContract`)({...o?{address:o}:{code:Vp},authorizationList:[d],abi:jp,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Ca({abi:Pp,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new My}async function Ay(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||Ty(o)?o:wy({data:i,signature:o,to:r}))(),u=s?{to:s,data:Ca({abi:Fp,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Yp({abi:Fp,args:[n,a,l],bytecode:Bp}),...c},{data:d}=await T(e,Om,`call`)(u).catch(e=>{throw e instanceof Po?new My:e});if(Bn(d??`0x0`))return!0;throw new My}async function jy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await T(e,Bm,`readContract`)({address:n,abi:Pp,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Fo?new My:e})).startsWith(`0x1626ba7e`))return!0;throw new My}var My=class extends Error{};function Ny(e){let{scheme:t,statement:n,...r}=e.match(Py)?.groups??{},{chainId:i,expirationTime:a,issuedAt:o,notBefore:s,requestId:c,...l}=e.match(Fy)?.groups??{},u=e.split(`Resources:`)[1]?.split(`\n- `).slice(1);return{...r,...l,...i?{chainId:Number(i)}:{},...a?{expirationTime:new Date(a)}:{},...o?{issuedAt:new Date(o)}:{},...s?{notBefore:new Date(s)}:{},...c?{requestId:c}:{},...u?{resources:u}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}let Py=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\\/\\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\\n)(?<address>0x[a-fA-F0-9]{40})\\n\\n(?:(?<statement>.*)\\n\\n)?/,Fy=/(?:URI: (?<uri>.+))\\n(?:Version: (?<version>.+))\\n(?:Chain ID: (?<chainId>\\d+))\\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\\n(?:Issued At: (?<issuedAt>.+))(?:\\nExpiration Time: (?<expirationTime>.+))?(?:\\nNot Before: (?<notBefore>.+))?(?:\\nRequest ID: (?<requestId>.+))?/;async function Iy(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await T(e,ah,`sendCalls`)(t);return await T(e,sh,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}ya(),j(),td(),ld();async function Ly(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new qm({docsPath:`/docs/actions/wallet/signTransaction`});let a=M(n);cd({account:a,...t});let o=await T(e,Hd,`getChainId`)({});r!==null&&Ym({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Zu;return a.signTransaction?a.signTransaction({...i,account:a,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:A(o),from:a.address}]},{retryCount:0})}ya();async function Ry(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new qm({docsPath:`/docs/actions/wallet/signTypedData`});let o=M(n),s={EIP712Domain:$h({domain:r}),...t.types};if(Qh({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Zh({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function zy({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=dh();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:jh(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function By(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>zy({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}O();var Vy=class extends D{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};Wo(),om();let Hy=0,Uy=new WeakMap;function Wy(e){if(!e)return`default`;let t=Uy.get(e);if(t!==void 0)return t;let n=Hy++;return Uy.set(e,n),n}function Gy(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 Vy;let b=Wh(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return zy({key:a,methods:o,name:s,async request({method:e,params:t},r){let i={method:e,params:t},a=r?.signal?{signal:r.signal}:void 0,{schedule:o}=im({id:`${y}.${Wy(r?.signal)}`,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e,fetchOptions:a}),sort:(e,t)=>e.id-t.id}),[{error:s,result:c}]=await(async e=>n?o(e):[await b.request({body:e,fetchOptions:a})])(i);if(d)return{error:s,result:c};if(s)throw new Ho({body:i,error:s,url:y});return c},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}ff(),z();function Ky(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&p_(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>e_(e)?e:fp(e))})}return t}function qy(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(dp(r[e])!==32)throw new Jy({storageKey:r[e]});n&&p_(n,{strict:!1}),t.push([n,r])}return t}var Jy=class extends P{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${dp(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};rp();let Yy=new TextEncoder,Xy=new TextDecoder,Zy=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Qy={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function $y(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]=Zy[r>>18],i[t+1]=Zy[r>>12&63],i[t+2]=Zy[r>>6&63],i[t+3]=Zy[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Xy.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function eb(e,t={}){return $y(If(e),t)}function tb(e,t={}){return $y(Lf(e),t)}function nb(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Yy.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Qy[r[e]]<<18)+(Qy[r[e+1]]<<12)+(Qy[r[e+2]]<<6)+Qy[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 rb(e){return Kf(nb(e))}let ib={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},ab={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function ob(e,t={}){if(!e)return null;let n=Sv(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,`blockTimestamp`in e&&(r.blockTimestamp=e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0),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=Bv(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=ab[e.type]??e.type),n&&(r.v=jv(n.yParity)),r}rp(),ff(),z();function sb(e,t={}){let{as:n=`Hex`}=t,r=xb(e),i=q_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?I(i.bytes):i.bytes}var cb=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`})}},lb=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`})}},ub=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`})}},db=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`})}},fb=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`})}},pb=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`})}},mb=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`})}},hb=class extends P{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},gb=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`})}},_b=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`})}},vb=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`})}},yb=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`})}},bb=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 xb(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return xb.number(e);if(typeof e==`bigint`)throw new mb;if(typeof e==`string`)return xb.string(e);if(Array.isArray(e))return xb.array(e);if(e instanceof Uint8Array)return xb.byteString(e);if(e instanceof ArrayBuffer)return xb.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return xb.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return xb.map(e);if(typeof e==`object`)return xb.object(e);throw new hb({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new gb({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new gb({number:e.toString(10)})}e.number=t;function n(e){let t=Lf(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new _b({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new vb({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new bb({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new yb({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new yb({size:i})}e.map=o})(xb||={});function Sb(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Sb.readUnsignedInteger(e,r);case 1:return Sb.readNegativeInteger(e,r);case 2:return Sb.readByteString(e,r);case 3:return Sb.readTextString(e,r);case 4:return Sb.readArray(e,r);case 5:return Sb.readMap(e,r);case 6:throw new db({tag:r});case 7:return Sb.readSimpleOrFloat(e,r);default:throw new cb({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new ub:new lb({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new fb({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new fb({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Kf(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new pb({value:t});return}throw new lb({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(Sb||={}),ff();function Cb(e){let t=a_(e),n=t.slice(1,33),r=t.slice(33,65);return sb(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}Gs(),jl(),Vl(),Qc(),Ol();\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nlet wb=Bc(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),Tb=wb.create(BigInt(`-3`)),Eb=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Db=Al({a:Tb,b:Eb,Fp:wb,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Hs),Ob=Db,kb=xl(wb,{A:Tb,B:Eb,Z:wb.create(BigInt(`-10`))}),Ab=zl(Ob.ProjectivePoint,e=>kb(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:wb.ORDER,m:1,k:128,expand:`xmd`,hash:Hs}),jb=Bc(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Mb=jb.create(BigInt(`-3`)),Nb=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),Pb=Al({a:Mb,b:Nb,Fp:jb,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Ws),Fb=xl(jb,{A:Mb,B:Nb,Z:jb.create(BigInt(`-12`))});zl(Pb.ProjectivePoint,e=>Fb(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:jb.ORDER,m:1,k:192,expand:`xmd`,hash:Ws});let Ib=Bc(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Lb=Ib.create(BigInt(`-3`)),Rb=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),zb=Al({a:Lb,b:Rb,Fp:Ib,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Us),Bb=xl(Ib,{A:Lb,B:Rb,Z:Ib.create(BigInt(`-4`))});zl(zb.ProjectivePoint,e=>Bb(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Ib.ORDER,m:1,k:256,expand:`xmd`,hash:Us});\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nlet Vb=Db,Hb=Db;Ab.hashToCurve,Ab.encodeToCurve,rp(),z();function Ub(e){let{privateKey:t}=e;return n_(Hb.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):I(t).slice(2)))}function Wb(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Hb.sign(r instanceof Uint8Array?r:If(r),i instanceof Uint8Array?i:If(i),{extraEntropy:typeof t==`boolean`?t:ap(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Gb(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Hb.verify(i,n instanceof Uint8Array?n:If(n),o_(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Kb=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 qb(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Jb(r.error);return r.result}function Jb(e){let t=e;if(t instanceof Error&&!(`code`in t))return new ox({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===ox.code?new ox(t):n===Xb.code?new Xb(t):n===ax.code?new ax(t):n===rx.code?new rx(t):n===tx.code?new tx(t):n===ix.code?new ix(t):n===ex.code?new ex(t):n===sx.code?new sx(t):n===Zb.code?new Zb(t):n===Qb.code?new Qb(t):n===$b.code?new $b(t):n===nx.code?new nx(t):new ox({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Yb=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??``}},Xb=class e extends Yb{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(Xb,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Zb=class e extends Yb{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(Zb,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Qb=class e extends Yb{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(Qb,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var $b=class e extends Yb{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($b,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var ex=class e extends Yb{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(ex,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var tx=class e extends Yb{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(tx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var nx=class e extends Yb{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(nx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var rx=class e extends Yb{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(rx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var ix=class e extends Yb{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(ix,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var ax=class e extends Yb{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(ax,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var ox=class e extends Yb{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(ox,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var sx=class e extends Yb{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(sx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),ff();var cx=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}},lx=class extends cx{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(lx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var ux=class extends cx{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(ux,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var dx=class extends cx{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(dx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var fx=class extends cx{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(fx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var px=class extends cx{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(px,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var mx=class extends cx{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(mx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var hx=class extends cx{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(hx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var gx=class extends cx{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(gx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var _x=class extends cx{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(_x,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var vx=class extends cx{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(vx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var yx=class extends cx{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(yx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var bx=class extends cx{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(bx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var xx=class extends cx{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(xx,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function Sx(){let e=new Kb.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 Cx(e,t={}){if(!e)throw new Tx;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?qb(n):n}catch(e){throw wx(e)}}}}function wx(e){let t=Jb(e);if(t instanceof ox){if(!t.data)return t;let{code:e}=t.data;if(e===fx.code)return new fx(t);if(e===px.code)return new px(t);if(e===lx.code)return new lx(t);if(e===ux.code)return new ux(t);if(e===dx.code)return new dx(t);if(e===mx.code)return new mx(t);if(e===bx.code)return new bx(t);if(e===xx.code)return new xx(t);if(e===yx.code)return new yx(t);if(e===vx.code)return new vx(t);if(e===_x.code)return new _x(t);if(e===gx.code)return new gx(t);if(e===hx.code)return new hx(t)}return t}var Tx=class extends P{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function Ex(e={}){let t=e.id??0;return{prepare(e){return Dx({id:t++,...e})},get id(){return t}}}function Dx(e){return{...e,jsonrpc:`2.0`}}function Ox(){return null}z();function kx(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Hv(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=ib[e.type]||e.type),e.value!==void 0&&(t.value=L(e.value)),t}ff();let Ax={wei:0,gwei:9,szabo:12,finney:15,ether:18};function jx(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 Mx(e,t=`wei`){return jx(e,Ax.gwei-Ax[t])}ff();var Nx=class extends P{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Mx(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`})}},Px=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`})}},Fx=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`})}},Ix=class extends P{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Mx(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Mx(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function Lx(e){let t=Vb.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}z();function Rx(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=F($g(sp(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,Cb(t.publicKey))}function zx(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:eb(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}rp(),ff(),z();function Bx(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:nb(e),type:`public-key`})):[{id:nb(t),type:`public-key`}]}:{},challenge:If(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Vx(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Rx({flag:i,rpId:o,signCount:s}),u=zx({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=$g(sp(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:F(l,d)}}async function Hx(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Bx(n);try{let e=await t(r);if(!e)throw new Ux;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=Lx(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 Ux({cause:e})}}var Ux=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 Wx(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=If(s);if(u.length<37||a!==void 0&&!Rf(u.slice(0,32),$g(sp(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(nb(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Gb({hash:!0,payload:Nf(u,$g(Lf(c),{as:`Bytes`})),publicKey:i,signature:o})}let Gx=Vx;async function Kx(e){return Hx(e)}function qx(e){return Wx(e)}rp();async function Jx(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=n_(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Yx(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,Pf(t)),i=Ff(new Uint8Array(r)),a=Uf(Hf(i,0,32)),o=Uf(Hf(i,32,64));return o>Vb.CURVE.n/2n&&(o=Vb.CURVE.n-o),{r:a,s:o}}ff(),z(),jf();let Xx=`0x01`,Zx=`0x02`,Qx=`0x03`,$x=`0x04`,eS=`0x7777777777777777777777777777777777777777777777777777777777777777`;function tS(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:tS({...e,signature:t.inner}):g_(nS(e))}function nS(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Gv({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return nS({payload:t,signature:n.inner})}}function rS(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?R(e,0,-dp(eS)):e;if(dp(t)===65){let e=xv(t);return yv(e),{signature:e,type:`secp256k1`}}let n=R(t,0,1),r=R(t,1),i=dp(r);if(n===Xx){if(i!==129)throw new dS({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:pp(R(r,64,96)),y:pp(R(r,96,128))},prehash:hp(R(r,128,129))!==0,signature:{r:pp(R(r,0,32)),s:pp(R(r,32,64))},type:`p256`}}if(n===Zx){if(i<128)throw new dS({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=gp(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 dS({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:pp(R(r,e+64,e+96)),y:pp(R(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:pp(R(r,e,e+32)),s:pp(R(r,e+32,e+64))},type:`webAuthn`}}if(n===Qx||n===$x)return{userAddress:R(r,0,20),inner:rS(R(r,20)),type:`keychain`,version:n===$x?`v2`:`v1`};throw new dS({reason:`Unknown signature type identifier: ${n}. Expected ${Xx} (P256), ${Zx} (WebAuthn), ${Qx} (Keychain V1), or ${$x} (Keychain V2)`,serialized:t})}function iS(e,t){if(typeof e==`string`)return rS(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=oS(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:g_(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:g_(Gv({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function aS(e){if(e.type===`secp256k1`)return{signature:Tv(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:pp(e.pubKeyX),y:pp(e.pubKeyY)},signature:{r:pp(e.r),s:pp(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=dp(t),r,i;for(let e=37;e<n;e++){let n=gp(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 dS({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:pp(e.pubKeyX),y:pp(e.pubKeyY)},signature:{r:pp(e.r),s:pp(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:aS(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new uS({envelope:e})}function oS(e){if(typeof e!=`object`||!e)throw new uS({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 uS({envelope:e})}function sS(e,t={}){let n=oS(e);if(n===`secp256k1`)return F(Dv(e.signature),t.magic?eS:`0x`);if(n===`p256`){let n=e;return F(Xx,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?eS:`0x`)}if(n===`webAuthn`){let n=e;return F(Zx,F(n.metadata.authenticatorData,sp(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?eS:`0x`)}if(n===`keychain`){let n=e;return F(n.version===`v1`?Qx:$x,n.userAddress,sS(n.inner),t.magic?eS:`0x`)}throw new uS({envelope:e})}function cS(e){let t=oS(e);if(t===`secp256k1`)return{...Ov(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,sp(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:cS(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new uS({envelope:e})}function lS(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return g_(t.publicKey)})();if(!r)return!1;let i=iS(e);if(i.type===`secp256k1`)return r?qv({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return __(g_(i.publicKey),r)?Gb({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return __(g_(i.publicKey),r)?qx({challenge:ap(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new fS(`Unable to verify signature envelope of type \"${i.type}\".`)}var uS=class extends P{constructor({envelope:e}){super(`Unable to coerce value (\\`${kf(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},dS=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`})}},fS=class extends P{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};ff(),z();function pS(e){return e.startsWith(`tempo`)?mS(e).address:e}function mS(e){if(!e.startsWith(`tempox`))throw new hS({address:e});let t=e.slice(6);return ip(t,{strict:!0}),{address:m_(t)}}var hS=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 gS(e,t={}){if(typeof e.chainId==`string`)return _S(e);let n={...e,address:pS(e.address)};return t.signature?{...n,signature:t.signature}:n}function _S(e){let{address:t,chainId:n,nonce:r}=e,i=aS(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function vS(e){return e.map(e=>_S(e))}function yS(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=rS(i)),gS(a)}function bS(e){let t=[];for(let n of e)t.push(yS(n));return t}function xS(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:L(n),nonce:L(r),signature:cS(i)}}function SS(e){return e.map(e=>xS(e))}function CS(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?sS(e.signature):void 0;return[n?L(n):`0x`,t,r?L(r):`0x`,...i?[i]:[]]}function wS(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(CS(n));return t}z();function TS(e,t={}){if(`keyId`in e)return ES(e);let n=e,r={...n,address:pS(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:pS(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:pS(e.address),selector:zS(e.selector),...e.recipients?{recipients:e.recipients.map(e=>pS(e))}:{}}))}:{}};return t.signature?{...r,signature:iS(t.signature)}:r}function ES(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=aS(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:RS(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:pp(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&LS(e.period)>0?{period:LS(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function DS(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:LS(o)||void 0,type:l,chainId:r===`0x`?0n:pp(r),...o===void 0?{}:{expiry:LS(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:IS(n),...r===void 0?{}:{period:LS(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=rS(n)),TS(u)}function OS(e){return AS(e)}function kS(e){return DS(cv(e))}function AS(e){let[t]=NS(e);return Zg(mv(t))}function jS(e){return mv(NS(e))}function MS(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:zS(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:pS(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:L(t),...n?{period:FS(n)}:{}})),signature:cS(s),...c?{allowedCalls:c}:{}}}function NS(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?sS(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,PS(e.limit)];return e.period&&e.period>0&&t.push(FS(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([zS(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[PS(n),s,t,i!=null&&i!==0||c||l?FS(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function PS(e){return e===0n?`0x`:L(e)}function FS(e){return e===0?`0x`:L(e)}function IS(e){return e===`0x`?0n:BigInt(e)}function LS(e){return e===`0x`?0:hp(e)}function RS(e){return typeof e==`string`?e:Array.isArray(e)?I(new Uint8Array(e)):e}function zS(e){if(e)return e.startsWith(`0x`)?e:_y(e)}z();let BS=`0x20c0`;function VS(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):HS(e)}function HS(e){let t=pS(e);if(!t.toLowerCase().startsWith(BS))throw Error(`invalid tip20 address.`);return pp(R(t,6))}function US(e){if(typeof e==`string`){let t=pS(e);return p_(t),t}return F(BS,L(e,{size:18}))}z();let WS={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function GS(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Zg(sp(WS[e]??e))}let KS={...ib,tempo:`0x76`},qS={...ab,\"0x76\":`tempo`};function JS(e,t={}){if(!e)return null;let n=ob(e);return n.type=qS[e.type],e.aaAuthorizationList&&(n.authorizationList=vS(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=aS(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=ES(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=Tv(e.feePayerSignature),n.feePayerSignature.v=jv(n.feePayerSignature.yParity)),n}z();function YS(e){let t=kx({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=SS(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?pS(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?pS(e.to):void 0,value:e.value?L(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=US(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=MS(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 up(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=KS.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}ff(),z();let XS=`tempo`;function ZS(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new aC;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new oC({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&p_(e.to,{strict:!1});if(n<=0)throw new Px({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Nx({feeCap:r});if(i&&r&&i>r)throw new Ix({maxFeePerGas:r,maxPriorityFeePerGas:i})}function QS(e){let t=cv(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 Fx({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:XS});let y={chainId:Number(n),type:XS};_p(a)&&a!==`0x`&&(y.gas=BigInt(a)),_p(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),_p(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),_p(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),_p(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),_p(u)&&u!==`0x`&&(y.validBefore=Number(u)),_p(d)&&d!==`0x`&&(y.validAfter=Number(d)),_p(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=Ky(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=bS(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||v_(p)?(y.feePayerSignature=null,v_(p)&&(y.from=p)):y.feePayerSignature=Ev(p)),_&&(y.keyAuthorization=DS(_));let b=v?rS(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=tS({payload:nC($S(y)),signature:b,root:!0})}catch{}return ZS(y),y}function $S(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?QS(e):e;return i.from&&=pS(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:pS(e.to)}:{}})),ZS(i),{...i,...r?{signature:iS(r)}:{},...n?{feePayerSignature:Cv(n)}:{},type:`tempo`}}function eC(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;ZS(e);let h=qy(n),g=t.signature||e.signature,_=wS(r),v=i.map(e=>[e.to?pS(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=iS(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return g_(t.publicKey);if(t.type===`secp256k1`)return Wv({payload:nC($S(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?kv(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`)?US(o):`0x`,b,_,...c?[NS(c)]:[],...g?[sS(iS(g))]:[]];return F(t.format===`feePayer`?`0x78`:`0x76`,mv(x))}function tC(e){return eC({...e,signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}})}function nC(e,t={}){let n=rC(e,{presign:!0});return t.from?Zg(F(`0x04`,n,pS(t.from))):n}function rC(e,t={}){return Zg(t.presign?tC(e):eC(e))}function iC(e,t){let n=pS(t.sender);return Zg(eC({...e,signature:void 0},{sender:n,format:`feePayer`}))}var aC=class extends P{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},oC=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:`permit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`},{type:`uint256`,name:`value`},{type:`uint256`,name:`deadline`},{type:`uint8`,name:`v`},{type:`bytes32`,name:`r`},{type:`bytes32`,name:`s`}],outputs:[]},{name:`nonces`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`}],outputs:[{type:`uint256`}]},{name:`DOMAIN_SEPARATOR`,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:`PermitExpired`,type:`error`,inputs:[]},{name:`InvalidSignature`,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:[]}],sC=[{name:`getActiveValidators`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,name:`validators`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`getInitializedAtHeight`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`validatorCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`validatorByIndex`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`index`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`validatorByAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validatorAddress`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`validatorByPublicKey`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`publicKey`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`getNextNetworkIdentityRotationEpoch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`isInitialized`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`addValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`bytes`,name:`signature`}],outputs:[{type:`uint64`,name:`index`}]},{name:`deactivateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`}],outputs:[]},{name:`rotateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`setFeeRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`address`,name:`feeRecipient`}],outputs:[]},{name:`setIpAddresses`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`}],outputs:[]},{name:`transferValidatorOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`address`,name:`newAddress`}],outputs:[]},{name:`transferOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`setNetworkIdentityRotationEpoch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`}],outputs:[]},{name:`migrateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`}],outputs:[]},{name:`initializeIfMigrated`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`ValidatorAdded`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`}]},{name:`ValidatorDeactivated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0}]},{name:`ValidatorRotated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`uint64`,name:`deactivatedIndex`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`oldPublicKey`},{type:`bytes32`,name:`newPublicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`caller`}]},{name:`FeeRecipientUpdated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`feeRecipient`},{type:`address`,name:`caller`}]},{name:`IpAddressesUpdated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`caller`}]},{name:`ValidatorOwnershipTransferred`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`oldAddress`,indexed:!0},{type:`address`,name:`newAddress`,indexed:!0},{type:`address`,name:`caller`}]},{name:`OwnershipTransferred`,type:`event`,inputs:[{type:`address`,name:`oldOwner`,indexed:!0},{type:`address`,name:`newOwner`,indexed:!0}]},{name:`ValidatorMigrated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`}]},{name:`NetworkIdentityRotationEpochSet`,type:`event`,inputs:[{type:`uint64`,name:`previousEpoch`,indexed:!0},{type:`uint64`,name:`nextEpoch`,indexed:!0}]},{name:`Initialized`,type:`event`,inputs:[{type:`uint64`,name:`height`}]},{name:`SkippedValidatorMigration`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`}]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`IngressAlreadyExists`,type:`error`,inputs:[{type:`string`,name:`ingress`}]},{name:`EmptyV1ValidatorSet`,type:`error`,inputs:[]},{name:`InvalidMigrationIndex`,type:`error`,inputs:[]},{name:`InvalidOwner`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`InvalidSignatureFormat`,type:`error`,inputs:[]},{name:`InvalidValidatorAddress`,type:`error`,inputs:[]},{name:`MigrationNotComplete`,type:`error`,inputs:[]},{name:`NotInitialized`,type:`error`,inputs:[]},{name:`NotIp`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`PublicKeyAlreadyExists`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`AddressAlreadyHasValidator`,type:`error`,inputs:[]},{name:`ValidatorAlreadyDeactivated`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]}],cC=[{name:`recover`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`address`,name:`signer`}]},{name:`verify`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`signer`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`InvalidFormat`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]}],lC=[{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:[]}],uC=[{name:`registerVirtualMaster`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`salt`}],outputs:[{type:`bytes4`,name:`masterId`}]},{name:`getMaster`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes4`,name:`masterId`}],outputs:[{type:`address`}]},{name:`resolveRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`to`}],outputs:[{type:`address`,name:`effectiveRecipient`}]},{name:`resolveVirtualAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`virtualAddr`}],outputs:[{type:`address`,name:`master`}]},{name:`isVirtualAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`}]},{name:`decodeVirtualAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`,name:`isVirtual`},{type:`bytes4`,name:`masterId`},{type:`bytes6`,name:`userTag`}]},{name:`MasterRegistered`,type:`event`,inputs:[{type:`bytes4`,name:`masterId`,indexed:!0},{type:`address`,name:`masterAddress`,indexed:!0}]},{name:`MasterIdCollision`,type:`error`,inputs:[{type:`address`,name:`master`}]},{name:`InvalidMasterAddress`,type:`error`,inputs:[]},{name:`ProofOfWorkFailed`,type:`error`,inputs:[]},{name:`VirtualAddressUnregistered`,type:`error`,inputs:[]}],dC=[{name:`userTokens`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`}],outputs:[{type:`address`}]},{name:`validatorTokens`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`}],outputs:[{type:`address`}]},{name:`setUserToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`setValidatorToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`distributeFees`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validator`},{type:`address`,name:`token`}],outputs:[]},{name:`collectedFees`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`},{type:`address`,name:`token`}],outputs:[{type:`uint256`}]},{name:`UserTokenSet`,type:`event`,inputs:[{type:`address`,name:`user`,indexed:!0},{type:`address`,name:`token`,indexed:!0}]},{name:`ValidatorTokenSet`,type:`event`,inputs:[{type:`address`,name:`validator`,indexed:!0},{type:`address`,name:`token`,indexed:!0}]},{name:`FeesDistributed`,type:`event`,inputs:[{type:`address`,name:`validator`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`OnlyValidator`,type:`error`,inputs:[]},{name:`OnlySystemContract`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`PoolDoesNotExist`,type:`error`,inputs:[]},{name:`InsufficientFeeTokenBalance`,type:`error`,inputs:[]},{name:`InternalError`,type:`error`,inputs:[]},{name:`CannotChangeWithinBlock`,type:`error`,inputs:[]},{name:`CannotChangeWithPendingFees`,type:`error`,inputs:[]},{name:`TokenPolicyForbids`,type:`error`,inputs:[]}],fC=[{name:`M`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`N`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`SCALE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`MIN_LIQUIDITY`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`getPoolId`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`}],outputs:[{type:`bytes32`}]},{name:`getPool`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`reserveUserToken`},{type:`uint128`,name:`reserveValidatorToken`}]}]},{name:`pools`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`reserveUserToken`},{type:`uint128`,name:`reserveValidatorToken`}]}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`amountValidatorToken`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`liquidity`}]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`liquidity`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`amountUserToken`},{type:`uint256`,name:`amountValidatorToken`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`}],outputs:[{type:`uint256`}]},{name:`liquidityBalances`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`},{type:`address`,name:`user`}],outputs:[{type:`uint256`}]},{name:`rebalanceSwap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`amountOut`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`amountIn`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`sender`},{type:`address`,name:`to`,indexed:!0},{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`uint256`,name:`amountValidatorToken`},{type:`uint256`,name:`liquidity`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`uint256`,name:`amountUserToken`},{type:`uint256`,name:`amountValidatorToken`},{type:`uint256`,name:`liquidity`},{type:`address`,name:`to`}]},{name:`RebalanceSwap`,type:`event`,inputs:[{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`address`,name:`swapper`,indexed:!0},{type:`uint256`,name:`amountIn`},{type:`uint256`,name:`amountOut`}]},{name:`IdenticalAddresses`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientReserves`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`DivisionByZero`,type:`error`,inputs:[]},{name:`InvalidSwapCalculation`,type:`error`,inputs:[]}],pC=[{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`}]}],outputs:[]},{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`tuple`,name:`config`,components:[{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`},{type:`uint64`,name:`period`}]},{type:`bool`,name:`allowAnyCalls`},{type:`tuple[]`,name:`allowedCalls`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]}],outputs:[]},{name:`revokeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`}],outputs:[]},{name:`updateSpendingLimit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`address`,name:`token`},{type:`uint256`,name:`newLimit`}],outputs:[]},{name:`setAllowedCalls`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`tuple[]`,name:`scopes`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}],outputs:[]},{name:`removeAllowedCalls`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`address`,name:`target`}],outputs:[]},{name:`getKey`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`tuple`,components:[{type:`uint8`,name:`signatureType`},{type:`address`,name:`keyId`},{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`bool`,name:`isRevoked`}]}]},{name:`getRemainingLimit`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`},{type:`address`,name:`token`}],outputs:[{type:`uint256`,name:`remaining`}]},{name:`getRemainingLimitWithPeriod`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`},{type:`address`,name:`token`}],outputs:[{type:`uint256`,name:`remaining`},{type:`uint64`,name:`periodEnd`}]},{name:`getAllowedCalls`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`bool`,name:`isScoped`},{type:`tuple[]`,name:`scopes`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]},{name:`getTransactionKey`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`KeyAuthorized`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`uint8`,name:`signatureType`},{type:`uint64`,name:`expiry`}]},{name:`KeyRevoked`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0}]},{name:`SpendingLimitUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`newLimit`}]},{name:`AccessKeySpend`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`amount`},{type:`uint256`,name:`remainingLimit`}]},{name:`UnauthorizedCaller`,type:`error`,inputs:[]},{name:`KeyAlreadyExists`,type:`error`,inputs:[]},{name:`KeyNotFound`,type:`error`,inputs:[]},{name:`KeyExpired`,type:`error`,inputs:[]},{name:`SpendingLimitExceeded`,type:`error`,inputs:[]},{name:`InvalidSpendingLimit`,type:`error`,inputs:[]},{name:`InvalidSignatureType`,type:`error`,inputs:[]},{name:`ZeroPublicKey`,type:`error`,inputs:[]},{name:`ExpiryInPast`,type:`error`,inputs:[]},{name:`KeyAlreadyRevoked`,type:`error`,inputs:[]},{name:`SignatureTypeMismatch`,type:`error`,inputs:[{type:`uint8`,name:`expected`},{type:`uint8`,name:`actual`}]},{name:`CallNotAllowed`,type:`error`,inputs:[]},{name:`InvalidCallScope`,type:`error`,inputs:[]},{name:`LegacyAuthorizeKeySelectorChanged`,type:`error`,inputs:[{type:`bytes4`,name:`newSelector`}]}],mC=[{name:`getNonce`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`uint256`,name:`nonceKey`}],outputs:[{type:`uint64`,name:`nonce`}]},{name:`NonceIncremented`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint256`,name:`nonceKey`,indexed:!0},{type:`uint64`,name:`newNonce`}]},{name:`ProtocolNonceNotSupported`,type:`error`,inputs:[]},{name:`InvalidNonceKey`,type:`error`,inputs:[]},{name:`NonceOverflow`,type:`error`,inputs:[]},{name:`ExpiringNonceReplay`,type:`error`,inputs:[]},{name:`ExpiringNonceSetFull`,type:`error`,inputs:[]},{name:`InvalidExpiringNonceExpiry`,type:`error`,inputs:[]}],hC=[{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`}]}],gC=[{name:`policyIdCounter`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`policyExists`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`bool`}]},{name:`policyData`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`uint8`,name:`policyType`},{type:`address`,name:`admin`}]},{name:`isAuthorized`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedSender`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedMintRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`compoundPolicyData`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}]},{name:`createPolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`admin`},{type:`uint8`,name:`policyType`}],outputs:[{type:`uint64`}]},{name:`createPolicyWithAccounts`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`admin`},{type:`uint8`,name:`policyType`},{type:`address[]`,name:`accounts`}],outputs:[{type:`uint64`}]},{name:`setPolicyAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`admin`}],outputs:[]},{name:`modifyPolicyWhitelist`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`modifyPolicyBlacklist`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`account`},{type:`bool`,name:`restricted`}],outputs:[]},{name:`createCompoundPolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}],outputs:[{type:`uint64`}]},{name:`PolicyAdminUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`admin`,indexed:!0}]},{name:`PolicyCreated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`uint8`,name:`policyType`}]},{name:`WhitelistUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`bool`,name:`allowed`}]},{name:`BlacklistUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`bool`,name:`restricted`}]},{name:`CompoundPolicyCreated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`creator`,indexed:!0},{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PolicyNotFound`,type:`error`,inputs:[]},{name:`PolicyNotSimple`,type:`error`,inputs:[]},{name:`InvalidPolicyType`,type:`error`,inputs:[]},{name:`IncompatiblePolicyType`,type:`error`,inputs:[]},{name:`VirtualAddressNotAllowed`,type:`error`,inputs:[]}],_C=[{name:`getValidators`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,name:`validators`,components:[{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`uint64`,name:`index`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}]}]},{name:`addValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newValidatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}],outputs:[]},{name:`updateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newValidatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}],outputs:[]},{name:`changeValidatorStatus`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validator`},{type:`bool`,name:`active`}],outputs:[]},{name:`changeValidatorStatusByIndex`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`index`},{type:`bool`,name:`active`}],outputs:[]},{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`changeOwner`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`getNextFullDkgCeremony`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`setNextFullDkgCeremony`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`}],outputs:[]},{name:`validatorsArray`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`validators`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`uint64`,name:`index`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}]}]},{name:`validatorCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ValidatorAlreadyExists`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`NotHostPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]}],vC=[...V,...sC,...cC,...lC,...uC,...dC,...fC,...pC,...mC,...hC,...gC,..._C];z();function yC(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||t?.source===`accessKey`||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:Bd(e)}function bC(e){try{return yC(e)===`tempo`}catch{return!1}}function xC(e){let t=R(e,0,1);return t===`0x76`||t===`0x78`?CC(e):ey(e)}async function SC(e,t){if(!bC(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 bh(e,{r:L(n,{size:32}),s:L(r,{size:32}),yParity:i})}return bh(e,t)}if(yC(e)===`tempo`)return wC(e,t);throw Error(`Unsupported transaction type`)}function CC(e){let{feePayerSignature:t,nonce:n,...r}=QS(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 wC(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return iS({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,nonce:a,...o}=e,s=(()=>{let t=e.feePayerSignature;if(t)return{r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)};if(t===null||i)return null})(),c={...o,calls:o.calls?.length?o.calls:[{to:o.to||(!o.data||o.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:o.value,data:o.data}],chainId:Number(r),feePayerSignature:s,type:`tempo`,...a?{nonce:BigInt(a)}:{}};if(i===!0&&!s&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=$S(c,{signature:n}),r=iC(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Wv({payload:nC(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return eC(t,{feePayerSignature:Cv(await e.feePayer.sign({hash:r}))})}return i===!0?n?eC(c,{format:`feePayer`,sender:e.from,signature:n}):eC(c,{feePayerSignature:null}):eC({...c,...i&&!s?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}z(),ya(),_i();function TC(e){let{access:t}=e;return t?PC(e):NC(e)}function EC(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Ub({privateKey:e});return TC({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Gx({...t,challenge:n,rpId:r,origin:i});return sS({metadata:a,signature:Wb({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function DC(e,t={}){let{access:n,internal_version:r}=t,i=Ub({privateKey:e});return TC({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return sS({signature:Wb({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function OC(e,t={}){let{access:n,internal_version:r}=t;return TC({access:n,internal_version:r,keyType:`secp256k1`,publicKey:Uv({privateKey:e}),async sign(t){let{hash:n}=t;return Dv(Kv({payload:n,privateKey:e}))}})}function kC(e,t={}){let{id:n}=e,r=i_(e.publicKey);return TC({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Kx({...t,challenge:e,credentialId:n});return sS({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function AC(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return TC({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return sS({signature:await Yx({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}async function jC(e,t){let{chainId:n,key:r,expiry:i,limits:a,scopes:o}=t,{accessKeyAddress:s,keyType:c}=FC(r);return TS({address:s,chainId:n,expiry:i,limits:a,scopes:o,signature:iS(await e.sign({hash:OS({address:s,chainId:n,expiry:i,limits:a,scopes:o,type:c})})),type:c})}function MC(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??g_(e.publicKey),o=o_(e.publicKey,{includePrefix:!1});async function s({hash:t}){let r=n&&i===`v2`?gi(F(`0x04`,t,n)):t,a=await e.sign({hash:r});return n?sS(iS({userAddress:n,inner:iS(a),type:`keychain`,version:i})):a}return{address:m_(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=iS(await s({hash:Ou({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:qh(t)})},async signTransaction(e,t){let{serializer:n=SC}=t??{};return await n(e,iS(await s({hash:gi(await n(`feePayerSignature`in e&&e.feePayerSignature?{...e,feePayerSignature:null}:e))})))},async signTypedData(e){return await s({hash:tg(e)})},publicKey:o,source:r,type:`local`}}function NC(e){let t=MC(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a,scopes:o}=n,{accessKeyAddress:s,keyType:c}=FC(e);return TS({address:s,chainId:r,expiry:i,limits:a,scopes:o,signature:iS(await t.sign({hash:OS({address:s,chainId:r,expiry:i,limits:a,scopes:o,type:c})})),type:c})}}}function PC(e){let{access:t}=e,{address:n}=M(t);return{...MC({...e,parentAddress:n}),accessKeyAddress:g_(e.publicKey),source:`accessKey`}}function FC(e){return`accessKeyAddress`in e?{accessKeyAddress:e.accessKeyAddress,keyType:e.keyType}:`publicKey`in e&&e.publicKey?{accessKeyAddress:g_(i_(e.publicKey)),keyType:e.type}:{accessKeyAddress:e.address,keyType:e.type}}let IC=`0xaAAAaaAA00000000000000000000000000000000`,LC=`0xdec0000000000000000000000000000000000000`,RC=[`genesis`,`t0`,`t1`,`t1a`,`t1b`,`t1c`,`t2`,`t3`];function zC(e,t){return RC.indexOf(e)<RC.indexOf(t)}function H(e){return{...e,data:Ca(e),to:e.address}}ya();let BC={0:`secp256k1`,1:`p256`,2:`webAuthn`},VC={true:`limited`,false:`unlimited`};async function HC(e,t){return HC.inner(Qm,e,t)}(function(e){async function t(e,t,n){let{accessKey:r,chainId:i=t.chain?.id,expiry:a,limits:o,scopes:s,...c}=n,l=c.account??t.account;if(!l)throw Error(`account is required.`);if(!i)throw Error(`chainId is required.`);let u=await jC(M(l),{chainId:BigInt(i),key:r,expiry:a,limits:o,scopes:s});return await e(t,{...c,keyAuthorization:u})}e.inner=t;function n(e){let[t]=tf({abi:pC,logs:e,eventName:`KeyAuthorized`,strict:!0});if(!t)throw Error(\"`KeyAuthorized` event not found.\");return t}e.extractEvent=n})(HC||={});async function UC(e,t){return UC.inner(B,e,t)}(function(e){async function t(t,n,r){let{accessKey:i,...a}=r,o=e.call({accessKey:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{accessKey:t}=e;return H({address:IC,abi:pC,functionName:`revokeKey`,args:[qC(t)]})}e.call=n;function r(e){let[t]=tf({abi:pC,logs:e,eventName:`KeyRevoked`,strict:!0});if(!t)throw Error(\"`KeyRevoked` event not found.\");return t}e.extractEvent=r})(UC||={});async function WC(e,t){return WC.inner(B,e,t)}(function(e){async function t(t,n,r){let{accessKey:i,token:a,limit:o,...s}=r,c=e.call({accessKey:i,token:a,limit:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{accessKey:t,token:n,limit:r}=e;return H({address:IC,abi:pC,functionName:`updateSpendingLimit`,args:[qC(t),n,r]})}e.call=n;function r(e){let[t]=tf({abi:pC,logs:e,eventName:`SpendingLimitUpdated`,strict:!0});if(!t)throw Error(\"`SpendingLimitUpdated` event not found.\");return t}e.extractEvent=r})(WC||={});async function GC(e,t){let{account:n=e.account,accessKey:r,...i}=t;if(!n)throw Error(`account is required.`);let a=M(n),o=await Bm(e,{...i,...GC.call({account:a.address,accessKey:r})});return{address:o.keyId,keyType:BC[o.signatureType]??`secp256k1`,expiry:o.expiry,spendPolicy:VC[`${o.enforceLimits}`],isRevoked:o.isRevoked}}(function(e){function t(e){let{account:t,accessKey:n}=e;return H({address:IC,abi:pC,functionName:`getKey`,args:[t,qC(n)]})}e.call=t})(GC||={});async function KC(e,t){let{account:n=e.account,accessKey:r,token:i,...a}=t;if(!n)throw Error(`account is required.`);let o=M(n),s=e.chain?.hardfork;if(s&&zC(s,`t3`))return{remaining:await Bm(e,{...a,...KC.call({account:o.address,accessKey:r,token:i})}),periodEnd:void 0};let[c,l]=await Bm(e,{...a,...KC.callWithPeriod({account:o.address,accessKey:r,token:i})});return{remaining:c,periodEnd:l}}(function(e){function t(e){let{account:t,accessKey:n,token:r}=e;return H({address:IC,abi:pC,functionName:`getRemainingLimit`,args:[t,qC(n),r]})}e.call=t;function n(e){let{account:t,accessKey:n,token:r}=e;return H({address:IC,abi:pC,functionName:`getRemainingLimitWithPeriod`,args:[t,qC(n),r]})}e.callWithPeriod=n})(KC||={});function qC(e){return typeof e==`string`?e:e.accessKeyAddress}z(),ya();async function JC(e,t){return JC.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return H({address:LC,abi:lC,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(JC||={});async function YC(e,t){return YC.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return H({address:LC,abi:lC,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=tf({abi:lC,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(YC||={});async function XC(e,t){return XC.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return H({address:LC,abi:lC,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=tf({abi:lC,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(XC||={});async function ZC(e,t){return ZC.inner(B,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return H({address:LC,abi:lC,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=tf({abi:lC,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(ZC||={});async function QC(e,t){let{account:n=e.account,token:r,...i}=t,a=n?M(n).address:void 0;if(!a)throw Error(`account is required.`);return Bm(e,{...i,...QC.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:LC,abi:lC,args:[t,n],functionName:`balanceOf`})}e.call=t})(QC||={});async function $C(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Bm(e,{...a,...$C.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return H({address:LC,abi:lC,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})($C||={});async function ew(e,t){let{orderId:n,...r}=t;return Bm(e,{...r,...ew.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return H({address:LC,abi:lC,args:[t],functionName:`getOrder`})}e.call=t})(ew||={});async function tw(e,t){let{base:n,quote:r,...i}=t;return Bm(e,{...i,...tw.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return H({address:LC,abi:lC,args:[cw(t,n)],functionName:`books`})}e.call=t})(tw||={});async function nw(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Bm(e,{...a,...nw.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:LC,abi:lC,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(nw||={});async function rw(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Bm(e,{...a,...rw.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return H({address:LC,abi:lC,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(rw||={});async function iw(e,t){return iw.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return H({address:LC,abi:lC,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=tf({abi:lC,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(iw||={});async function aw(e,t){return aw.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return H({address:LC,abi:lC,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=tf({abi:lC,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})(aw||={});async function ow(e,t){return ow.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return H({address:LC,abi:lC,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(ow||={});async function sw(e,t){return sw.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return H({address:LC,abi:lC,functionName:`withdraw`,args:[t,n]})}e.call=n})(sw||={});function cw(e,t){return Zg(F(e,t))}z(),ya(),wa();async function lw(e,t){let{token:n,...r}=t;return lw.inner(B,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return H({address:US(r),abi:V,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(lw||={});async function uw(e,t){return uw.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return H({address:US(r),abi:V,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(uw||={});async function dw(e,t){return dw.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,cp(n,32)]}:{functionName:`burn`,args:[t]};return H({address:US(r),abi:V,...i})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(dw||={});async function fw(e,t){return fw.inner(B,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return H({address:US(t),abi:V,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(fw||={});async function pw(e,t){return pw.inner(B,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?M(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=up(32)}=e;return H({address:`0x20fc000000000000000000000000000000000000`,abi:hC,args:[t,n,r,US(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=tf({abi:hC,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(pw||={});async function mw(e,t){let{account:n=e.account}=t,r=n?M(n).address:void 0;if(!r)throw Error(`account is required.`);return Bm(e,{...t,...mw.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return H({address:US(r),abi:V,functionName:`allowance`,args:[t,n]})}e.call=t})(mw||={});async function hw(e,t){let{account:n=e.account,...r}=t,i=n?M(n).address:void 0;if(!i)throw Error(`account is required.`);return Bm(e,{...r,...hw.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:US(n),abi:V,functionName:`balanceOf`,args:[t]})}e.call=t})(hw||={});async function gw(e,t){let{token:n,...r}=t,i=US(n),a=V;return VS(n)===HS(`0x20c0000000000000000000000000000000000000`)?fy(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})):fy(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 _w(e,t){return Bm(e,{...t,..._w.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return H({address:US(n),abi:V,functionName:`getRoleAdmin`,args:[GS(t)]})}e.call=t})(_w||={});async function vw(e,t){let{account:n=e.account}=t,r=n?M(n).address:void 0;if(!r)throw Error(`account is required.`);return Bm(e,{...t,...vw.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return H({address:US(r),abi:V,functionName:`hasRole`,args:[t,GS(n)]})}e.call=t})(vw||={});async function yw(e,t){return yw.inner(Qm,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=GS(r);return H({address:US(t),abi:V,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=tf({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(yw||={});async function bw(e,t){return bw.inner(B,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,cp(r,32)]}:{functionName:`mint`,args:[t,n]};return H({address:US(i),abi:V,...a})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(bw||={});async function xw(e,t){return xw.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return H({address:US(t),abi:V,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(xw||={});async function Sw(e,t){return Sw.inner(Qm,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=GS(n);return H({address:US(t),abi:V,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=tf({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Sw||={});async function Cw(e,t){return Cw.inner(Qm,e,t)}(function(e){async function t(t,n,r){let{from:i,...a}=r;return await t(n,{...a,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=GS(r);return H({address:US(t),abi:V,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=tf({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Cw||={});async function ww(e,t){return ww.inner(B,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return H({address:US(t),abi:V,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(ww||={});async function Tw(e,t){return Tw.inner(B,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=GS(n),a=GS(r);return H({address:US(t),abi:V,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(Tw||={});async function Ew(e,t){return Ew.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,cp(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,cp(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return H({address:US(i),abi:V,...o})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(Ew||={});async function Dw(e,t){return Dw.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return H({address:US(t),abi:V,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(Dw||={});async function Ow(e,t){return Ow.inner(B,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return H({address:US(t),abi:V,functionName:`setNextQuoteToken`,args:[US(n)]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(Ow||={});async function kw(e,t){return kw.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return H({address:US(t),abi:V,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=tf({abi:V,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(kw||={}),z(),ya(),td();function Aw(e){if(!bC(e))return hd(e);let t=e.blockTimestamp==null?void 0:BigInt(e.blockTimestamp),{feePayerSignature:n,gasPrice:r,nonce:i,...a}=JS(e);return{...a,accessList:a.accessList,...t!==void 0&&{blockTimestamp:t},feePayerSignature:n?{r:L(n.r,{size:32}),s:L(n.s,{size:32}),v:BigInt(n.v??27),yParity:n.yParity}:void 0,nonce:Number(i),typeHex:KS[a.type],type:a.type}}function jw(e){return nh(e)}function Mw(e,t){let n=e,r=n.account?M(n.account):void 0;if(!bC(n))return Zu(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&&!n.feePayerSignature&&delete n.feeToken;let i=YS({...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`,`0x0578`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[n.keyType,Nw(n.keyData)]:[n.keyType,Nw(n.keyData)]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:n.keyId;return r&&(i.from=r.address),{...i,...n.capabilities?{capabilities:n.capabilities}:{},...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer===void 0?{}:{feePayer:typeof n.feePayer==`object`?M(n.feePayer):n.feePayer},...`feePayerSignature`in n&&n.feePayerSignature!==void 0?{feePayerSignature:n.feePayerSignature}:{}}}function Nw(e){if(!e)return e;let t=(e.length-2)/2;return t<=4?e:L(t,{size:2})}let Pw=new Map;async function Fw(e){Pw.set(e,(Pw.get(e)??0)+1),await Promise.resolve();let t=(Pw.get(e)??0)>1;return queueMicrotask(()=>{let t=Pw.get(e)??0;t<=1?Pw.delete(e):Pw.set(e,t-1)}),t}z(),sd(),td(),_i();let Iw={blockTime:1e3,extendSchema:Fh(),formatters:{transaction:gd({exclude:[`aaAuthorizationList`],format:Aw}),transactionReceipt:rh({format:jw}),transactionRequest:ed({format:Mw})},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.account?.source===`accessKey`&&(n.gas=(n.gas??0n)+10000n)),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 Fw(e):!1})()?(n.nonceKey=od,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)=>SC(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i,mode:a}=t,o=(()=>{if(typeof i==`string`)try{return rS(i)}catch{return}})();if(o){if(o?.type===`keychain`&&a===`allowAccessKey`){let i=o.version===`v2`?gi(F(`0x04`,r,n)):r,a=(()=>{try{return tS({payload:i,signature:o.inner})}catch{return}})();if(!a)return!1;let s=await GC(e,{account:n,accessKey:a,blockNumber:t.blockNumber,blockTag:t.blockTag});return s.isRevoked||s.expiry<=BigInt(Math.floor(Date.now()/1e3))?!1:lS(o.inner,{address:a,payload:i})}if(o.type===`p256`||o.type===`webAuthn`){let i=await ph(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return lS(o,{address:n,payload:r})}}return await T(e,Oy,`verifyHash`)({...t,chain:null})}},Lw=Ph({...Iw,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.tempo.xyz`],webSocket:[`wss://rpc.tempo.xyz`]}}}),Rw=Ph({...Iw,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.testnet.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`]}},testnet:!0}),zw=Ph({...Iw,id:31318,name:`Tempo Devnet`,hardfork:`t3`,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`]}},testnet:!0}),Bw=Ph({...Iw,id:1337,name:`Tempo`,hardfork:`t3`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}});function Vw(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return zy({key:Vw.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_fillTransaction`){let r=t?.[0];if(r&&typeof r==`object`&&`feePayer`in r&&r.feePayer===!0)return a.request({method:e,params:t},n)}if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(xC(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:Vw.type})}}let Hw={AddressAlreadyHasValidator:`This address already has a validator.`,AddressNotReserved:`Address is not reserved.`,AddressReserved:`Address is reserved.`,AlreadyInitialized:`Already initialized.`,BelowMinimumOrderSize:`Order size is below the minimum allowed ({0}).`,CallNotAllowed:`This call is not allowed.`,CannotChangeWithPendingFees:`Cannot change while fees are pending.`,CannotChangeWithinBlock:`Cannot change within the same block.`,ContractPaused:`Contract is paused.`,DivisionByZero:`Division by zero.`,EmptyV1ValidatorSet:`Validator set is empty.`,ExpiringNonceReplay:`Expiring nonce has already been used.`,ExpiringNonceSetFull:`Expiring nonce set is full.`,ExpiryInPast:`Expiry is in the past.`,IdenticalAddresses:`Addresses must be different.`,IdenticalTokens:`Cannot swap a token for itself — input and output tokens must be different.`,IncompatiblePolicyType:`Incompatible policy type.`,IngressAlreadyExists:`Ingress \"{0}\" already exists.`,InsufficientAllowance:`Insufficient allowance.`,InsufficientBalance:`Insufficient balance. Required: {1}, available: {0}.`,InsufficientFeeTokenBalance:`Insufficient fee token balance.`,InsufficientLiquidity:`Not enough liquidity in the order book to fill this trade.`,InsufficientOutput:`The output amount is below the slippage minimum — try increasing slippage tolerance.`,InsufficientReserves:`Insufficient reserves.`,InternalError:`Internal error.`,InvalidAmount:`Invalid amount.`,InvalidBaseToken:`This token is not a valid base token for the requested pair.`,InvalidCallScope:`Invalid call scope.`,InvalidCurrency:`Invalid currency.`,InvalidExpiringNonceExpiry:`Invalid expiring nonce expiry.`,InvalidFlipTick:`The flip-order price tick is invalid.`,InvalidFormat:`Invalid format.`,InvalidMasterAddress:`Invalid master address.`,InvalidMigrationIndex:`Invalid migration index.`,InvalidNonceKey:`Invalid nonce key.`,InvalidOwner:`Invalid owner.`,InvalidPayload:`Invalid payload.`,InvalidPolicyType:`Invalid policy type.`,InvalidPublicKey:`Invalid public key.`,InvalidQuoteToken:`Invalid quote token.`,InvalidRecipient:`Invalid recipient.`,InvalidSignature:`Invalid signature.`,InvalidSignatureFormat:`Invalid signature format.`,InvalidSignatureType:`Invalid signature type.`,InvalidSpendingLimit:`Invalid spending limit.`,InvalidSupplyCap:`Invalid supply cap.`,InvalidSwapCalculation:`Invalid swap calculation.`,InvalidTick:`The price tick is invalid.`,InvalidToken:`This token is not supported on the exchange.`,InvalidTransferPolicyId:`Invalid transfer policy.`,InvalidValidatorAddress:`Invalid validator address.`,KeyAlreadyExists:`Key already exists.`,KeyAlreadyRevoked:`Key has already been revoked.`,KeyExpired:`Key has expired.`,KeyNotFound:`Key not found.`,LegacyAuthorizeKeySelectorChanged:`Legacy authorize key selector changed to {0}.`,MasterIdCollision:`Master ID collision with {0}.`,MaxInputExceeded:`The required input exceeds the slippage maximum — try increasing slippage tolerance.`,MigrationNotComplete:`Migration is not complete.`,NoOptedInSupply:`No opted-in supply.`,NonceOverflow:`Nonce overflow.`,NotHostPort:`\"{1}\" is not a valid host:port for {0}.`,NotInitialized:`Not initialized.`,NotIp:`\"{0}\" is not a valid IP address.`,NotIpPort:`\"{1}\" is not a valid IP:port for {0}.`,OnlySystemContract:`Only callable by system contract.`,OnlyValidator:`Only callable by a validator.`,OrderDoesNotExist:`No order exists with the given ID.`,OrderNotStale:`This order is not yet eligible for stale-cleanup.`,PairAlreadyExists:`A trading pair for these tokens has already been created.`,PairDoesNotExist:`No trading pair exists for these tokens.`,PermitExpired:`Permit has expired.`,PolicyForbids:`Forbidden by policy.`,PolicyNotFound:`Policy not found.`,PolicyNotSimple:`Policy is not a simple policy.`,PoolDoesNotExist:`Pool does not exist.`,ProofOfWorkFailed:`Proof of work failed.`,ProtectedAddress:`Address is protected.`,ProtocolNonceNotSupported:`Protocol nonce is not supported.`,PublicKeyAlreadyExists:`Public key already exists.`,SignatureTypeMismatch:`Signature type mismatch. Expected {0}, got {1}.`,SpendingLimitExceeded:`Spending limit exceeded.`,StringTooLong:`String is too long.`,SupplyCapExceeded:`Supply cap exceeded.`,TickOutOfBounds:`Price tick {0} is outside the allowed range.`,TokenAlreadyExists:`Token {0} already exists.`,TokenPolicyForbids:`Forbidden by token policy.`,TransfersDisabled:`Transfers are disabled.`,Unauthorized:`Unauthorized.`,UnauthorizedCaller:`Unauthorized caller.`,Uninitialized:`Uninitialized.`,ValidatorAlreadyDeactivated:`Validator is already deactivated.`,ValidatorAlreadyExists:`Validator already exists.`,ValidatorNotFound:`Validator not found.`,VirtualAddressNotAllowed:`Virtual address is not allowed.`,VirtualAddressUnregistered:`Virtual address is not registered.`,ZeroPublicKey:`Public key cannot be zero.`};function Uw(e,t){return t?e.replace(/\\{(\\d+)\\}/g,(e,n)=>{let r=t[Number(n)];return r===void 0?`{${n}}`:String(r)}):e}function Ww(e){let t=e.details??e.shortMessage??e.message,n=Gw(e);if(n)try{let e=eo({abi:vC,data:n}),r=Hw[e.errorName];return{...e,data:n,message:r?Uw(r,e.args):t.replace(/^execution reverted:\\s*/i,``)}}catch{}let r=/:\\s*(\\w+)\\(\\w+/.exec(t)?.[1];return r&&r in Hw?{errorName:`unknown`,message:Hw[r]}:{errorName:`unknown`,message:t.replace(/^execution reverted:\\s*/i,``)}}function Gw(e){if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.data==`string`&&t.data.startsWith(`0x`))return t.data;if(t.cause)return Gw(t.cause);if(t.error)return Gw(t.error);if(typeof t.walk==`function`){let e=t.walk(e=>typeof e.data==`string`);if(e)return Gw(e)}return null}var Kw;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 qw=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Jw=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Kw=globalThis).__zod_globalConfig??(Kw.__zod_globalConfig={});let Yw=globalThis.__zod_globalConfig;function Xw(e){return e&&Object.assign(Yw,e),Yw}function Zw(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 Qw(e,t){return typeof t==`bigint`?t.toString():t}function $w(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function eT(e){return e==null}function tT(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let nT=Symbol(`evaluating`);function W(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==nT)return r===void 0&&(r=nT,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let rT=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function iT(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function aT(e){if(iT(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(iT(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let oT=new Set([`string`,`number`,`symbol`]),sT=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function cT(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function lT(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function uT(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 dT(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function fT(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 pT(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 mT(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function hT(e){return typeof e==`string`?e:e?.message}function gT(e,t,n){let r=e.message?e.message:hT(e.inst?._zod.def?.error?.(e))??hT(t?.error?.(e))??hT(n.customError?.(e))??hT(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 _T(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function vT(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let yT=(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,Qw,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},bT=U(`$ZodError`,yT),xT=U(`$ZodError`,yT,{Parent:Error}),ST=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 qw;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>gT(e,a,Xw())));throw rT(t,i?.callee),t}return o.value},CT=ST(xT),wT=(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=>gT(e,a,Xw())));throw rT(t,i?.callee),t}return o.value})(xT),TT=(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 qw;return a.issues.length?{success:!1,error:new(e??bT)(a.issues.map(e=>gT(e,i,Xw())))}:{success:!0,data:a.value}})(xT),ET=(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=>gT(e,i,Xw())))}:{success:!0,data:a.value}})(xT),DT=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return ST(e)(t,n,i)})(xT),OT=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},kT=/^-?\\d+n?$/,AT=/^-?\\d+(?:\\.\\d+)?$/,jT=/^(?:true|false)$/i,MT=/^null$/i,NT=/^undefined$/i,PT=U(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),FT={number:`number`,bigint:`bigint`,object:`date`},IT=U(`$ZodCheckLessThan`,(e,t)=>{PT.init(e,t);let n=FT[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})}}),LT=U(`$ZodCheckGreaterThan`,(e,t)=>{PT.init(e,t);let n=FT[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})}}),RT=U(`$ZodCheckMaxLength`,(e,t)=>{var n;PT.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!eT(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=_T(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),zT=U(`$ZodCheckMinLength`,(e,t)=>{var n;PT.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!eT(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=_T(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),BT=U(`$ZodCheckStringFormat`,(e,t)=>{var n,r;PT.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=()=>{})}),VT=U(`$ZodCheckRegex`,(e,t)=>{BT.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})}}),HT={major:4,minor:4,patch:3},UT=U(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=HT;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=fT(e),i;for(let a of t){if(a._zod.def.when){if(pT(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 qw;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=fT(e,t))});else{if(e.issues.length===t)continue;r||=fT(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(fT(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new qw;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 qw;return o.then(e=>t(e,r,a))}return t(o,r,a)}}W(e,`~standard`,()=>({validate:t=>{try{let n=TT(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return ET(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),WT=U(`$ZodString`,(e,t)=>{UT.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??OT(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}}),GT=U(`$ZodNumber`,(e,t)=>{UT.init(e,t),e._zod.pattern=e._zod.bag.pattern??AT,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}}),KT=U(`$ZodBoolean`,(e,t)=>{UT.init(e,t),e._zod.pattern=jT,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}}),qT=U(`$ZodBigInt`,(e,t)=>{UT.init(e,t),e._zod.pattern=kT,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}}),JT=U(`$ZodUndefined`,(e,t)=>{UT.init(e,t),e._zod.pattern=NT,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}}),YT=U(`$ZodNull`,(e,t)=>{UT.init(e,t),e._zod.pattern=MT,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}}),XT=U(`$ZodUnknown`,(e,t)=>{UT.init(e,t),e._zod.parse=e=>e});function ZT(e,t,n){e.issues.length&&t.issues.push(...mT(n,e.issues)),t.value[n]=e.value}let QT=U(`$ZodArray`,(e,t)=>{UT.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=>ZT(t,n,e))):ZT(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function $T(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...mT(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 eE(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=dT(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function tE(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=>$T(e,n,i,t,u,d))):$T(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 nE=U(`$ZodObject`,(e,t)=>{if(UT.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=$w(()=>eE(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=iT,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=>$T(n,t,e,s,r,i))):$T(a,t,e,s,r,i)}return i?tE(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function rE(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=>!fT(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=>gT(e,r,Xw())))}),t)}let iE=U(`$ZodUnion`,(e,t)=>{UT.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=>tT(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=>rE(t,r,e,i)):rE(o,r,e,i)}}),aE=U(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,iE.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=$w(()=>{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(!iT(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)}}),oE=U(`$ZodTuple`,(e,t)=>{UT.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=sE(n,`optin`),c=sE(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=>cE(t,r,e))):cE(a,r,e)}}return o.length?Promise.all(o).then(()=>lE(l,r,n,a,c)):lE(l,r,n,a,c)}});function sE(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function cE(e,t,n){e.issues.length&&t.issues.push(...mT(n,e.issues)),t.value[n]=e.value}function lE(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(...mT(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 uE=U(`$ZodRecord`,(e,t)=>{UT.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!aT(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=>gT(e,r,Xw())),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(...mT(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...mT(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`&&AT.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=>gT(e,r,Xw())),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(...mT(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...mT(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),dE=U(`$ZodEnum`,(e,t)=>{UT.init(e,t);let n=Zw(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>oT.has(typeof e)).map(e=>typeof e==`string`?cT(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}}),fE=U(`$ZodLiteral`,(e,t)=>{if(UT.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`?cT(e):e?cT(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}}),pE=U(`$ZodTransform`,(e,t)=>{UT.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Jw(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 qw;return n.value=i,n.fallback=!0,n}});function mE(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}let hE=U(`$ZodOptional`,(e,t)=>{UT.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(`^(${tT(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=>mE(e,r)):mE(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),gE=U(`$ZodNullable`,(e,t)=>{UT.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(`^(${tT(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)}),_E=U(`$ZodPipe`,(e,t)=>{UT.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=>vE(e,t.in,n)):vE(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>vE(e,t.out,n)):vE(r,t.out,n)}});function vE(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 yE=U(`$ZodCodec`,(e,t)=>{UT.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=>bE(e,t,n)):bE(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>bE(e,t,n)):bE(r,t,n)}}});function bE(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=>xE(e,r,t.out,n)):xE(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>xE(e,r,t.in,n)):xE(e,r,t.in,n)}}function xE(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let SE=U(`$ZodReadonly`,(e,t)=>{UT.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(CE):CE(r)}});function CE(e){return e.value=Object.freeze(e.value),e}let wE=U(`$ZodTemplateLiteral`,(e,t)=>{UT.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||sT.has(typeof e))n.push(cT(`${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)}),TE=U(`$ZodCustom`,(e,t)=>{PT.init(e,t),UT.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=>EE(t,n,r,e));EE(i,n,r,e)}});function EE(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(vT(e))}}function DE(e,t){return new e({type:`string`,...uT(t)})}function OE(e,t){return new e({type:`number`,checks:[],...uT(t)})}function kE(e,t){return new e({type:`boolean`,...uT(t)})}function AE(e,t){return new e({type:`bigint`,...uT(t)})}function jE(e,t){return new e({type:`undefined`,...uT(t)})}function ME(e,t){return new e({type:`null`,...uT(t)})}function NE(e){return new e({type:`unknown`})}function PE(e,t){return new IT({check:`less_than`,...uT(t),value:e,inclusive:!0})}function FE(e,t){return new LT({check:`greater_than`,...uT(t),value:e,inclusive:!0})}function IE(e,t){return new RT({check:`max_length`,...uT(t),maximum:e})}function LE(e,t){return new zT({check:`min_length`,...uT(t),minimum:e})}function RE(e,t){return new VT({check:`string_format`,format:`regex`,...uT(t),pattern:e})}function zE(e,t,n){let r=uT(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function BE(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...uT(n)})}let VE=U(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);UT.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>CT(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>TT(e,t,n),e.parseAsync=async(t,n)=>wT(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>ET(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)=>lT(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),HE=U(`ZodMiniString`,(e,t)=>{WT.init(e,t),VE.init(e,t)});function G(e){return DE(HE,e)}let UE=U(`ZodMiniNumber`,(e,t)=>{GT.init(e,t),VE.init(e,t)});function WE(e){return OE(UE,e)}let GE=U(`ZodMiniBoolean`,(e,t)=>{KT.init(e,t),VE.init(e,t)});function KE(e){return kE(GE,e)}let qE=U(`ZodMiniBigInt`,(e,t)=>{qT.init(e,t),VE.init(e,t)});function JE(e){return AE(qE,e)}let YE=U(`ZodMiniUndefined`,(e,t)=>{JT.init(e,t),VE.init(e,t)});function XE(e){return jE(YE,e)}let ZE=U(`ZodMiniNull`,(e,t)=>{YT.init(e,t),VE.init(e,t)});function QE(e){return ME(ZE,e)}let $E=U(`ZodMiniUnknown`,(e,t)=>{XT.init(e,t),VE.init(e,t)});function eD(){return NE($E)}let tD=U(`ZodMiniArray`,(e,t)=>{QT.init(e,t),VE.init(e,t)});function K(e,t){return new tD({type:`array`,element:e,...uT(t)})}let nD=U(`ZodMiniObject`,(e,t)=>{nE.init(e,t),VE.init(e,t),W(e,`shape`,()=>t.shape)});function q(e,t){return new nD({type:`object`,shape:e??{},...uT(t)})}let rD=U(`ZodMiniUnion`,(e,t)=>{iE.init(e,t),VE.init(e,t)});function iD(e,t){return new rD({type:`union`,options:e,...uT(t)})}let aD=U(`ZodMiniDiscriminatedUnion`,(e,t)=>{aE.init(e,t),VE.init(e,t)});function oD(e,t,n){return new aD({type:`union`,options:t,discriminator:e,...uT(n)})}let sD=U(`ZodMiniTuple`,(e,t)=>{oE.init(e,t),VE.init(e,t)});function cD(e,t,n){let r=t instanceof UT;return new sD({type:`tuple`,items:e,rest:r?t:null,...uT(r?n:t)})}let lD=U(`ZodMiniRecord`,(e,t)=>{uE.init(e,t),VE.init(e,t)});function uD(e,t,n){return!t||!t._zod?new lD({type:`record`,keyType:G(),valueType:e,...uT(t)}):new lD({type:`record`,keyType:e,valueType:t,...uT(n)})}let dD=U(`ZodMiniEnum`,(e,t)=>{dE.init(e,t),VE.init(e,t),e.options=Object.values(t.entries)});function fD(e,t){return new dD({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...uT(t)})}let pD=U(`ZodMiniLiteral`,(e,t)=>{fE.init(e,t),VE.init(e,t)});function J(e,t){return new pD({type:`literal`,values:Array.isArray(e)?e:[e],...uT(t)})}let mD=U(`ZodMiniTransform`,(e,t)=>{pE.init(e,t),VE.init(e,t)});function hD(e){return new mD({type:`transform`,transform:e})}let gD=U(`ZodMiniOptional`,(e,t)=>{hE.init(e,t),VE.init(e,t)});function Y(e){return new gD({type:`optional`,innerType:e})}let _D=U(`ZodMiniNullable`,(e,t)=>{gE.init(e,t),VE.init(e,t)});function vD(e){return new _D({type:`nullable`,innerType:e})}let yD=U(`ZodMiniPipe`,(e,t)=>{_E.init(e,t),VE.init(e,t)});function bD(e,t){return new yD({type:`pipe`,in:e,out:t})}let xD=U(`ZodMiniCodec`,(e,t)=>{yD.init(e,t),yE.init(e,t)});function SD(e,t,n){return new xD({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let CD=U(`ZodMiniReadonly`,(e,t)=>{SE.init(e,t),VE.init(e,t)});function X(e){return new CD({type:`readonly`,innerType:e})}let wD=U(`ZodMiniTemplateLiteral`,(e,t)=>{wE.init(e,t),VE.init(e,t)});function TD(e,t){return new wD({type:`template_literal`,parts:e,...uT(t)})}let ED=U(`ZodMiniCustom`,(e,t)=>{TE.init(e,t),VE.init(e,t)});function DD(e,t){return zE(ED,e??(()=>!0),t)}function OD(e,t={}){return BE(ED,e,t)}function kD(e){return e}function AD(e){return e}let Z=()=>TD([`0x`,G().check(RE(/^[0-9a-fA-F]{40}$/))],`Expected address`),jD=()=>SD(iD([Q(),JE()]),JE(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:pp(e),encode:e=>L(e)}),Q=()=>TD([`0x`,G()],`Expected hex value`),MD=()=>SD(iD([Q(),WE()]),WE(),{decode:e=>typeof e==`number`?e:e===`0x`?0:hp(e),encode:e=>L(e)}),ND=q({address:Z(),blockHash:Q(),blockNumber:jD(),data:Q(),logIndex:MD(),removed:KE(),topics:X(K(Q())),transactionHash:Q(),transactionIndex:MD()}),PD=q({blobGasPrice:Y(jD()),blobGasUsed:Y(jD()),blockHash:Q(),blockNumber:jD(),contractAddress:vD(Z()),cumulativeGasUsed:jD(),effectiveGasPrice:jD(),feePayer:Y(Z()),feeToken:Y(Z()),from:Z(),gasUsed:jD(),logs:K(ND),logsBloom:Q(),root:Y(Q()),status:SD(Q(),fD([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:vD(Z()),transactionHash:Q(),transactionIndex:MD(),type:Q()}),FD=DD(),ID=iD([J(`secp256k1`),J(`p256`),J(`webAuthn`)]),LD=q({address:Z(),chainId:jD(),expiry:iD([MD(),QE(),XE()]),keyId:Z(),keyType:ID,limits:Y(X(K(q({token:Z(),limit:jD(),period:Y(MD())})))),signature:FD}),RD=q({data:Y(Q()),to:Y(Z()),value:Y(jD())}),zD=q({accessList:Y(K(q({address:Z(),storageKeys:K(Q())}))),calls:Y(X(K(RD))),chainId:Y(MD()),data:Y(Q()),feePayer:Y(iD([KE(),G()])),feePayerSignature:Y(uD(G(),eD())),feeToken:Y(Z()),from:Y(Z()),gas:Y(jD()),keyAuthorization:Y(LD),keyData:Y(Q()),keyId:Y(Z()),keyType:Y(ID),maxFeePerGas:Y(jD()),maxPriorityFeePerGas:Y(jD()),nonce:Y(MD()),nonceKey:Y(jD()),to:Y(Z()),validAfter:Y(MD()),validBefore:Y(MD()),value:Y(jD())});var BD;(function(e){e.schema=kD({method:J(`eth_accounts`),params:void 0,returns:X(K(Z()))})})(BD||={});var VD;(function(e){e.schema=kD({method:J(`eth_chainId`),params:void 0,returns:Q()})})(VD||={});var HD;(function(e){e.schema=kD({method:J(`eth_requestAccounts`),params:void 0,returns:X(K(Z()))})})(HD||={});var UD;(function(e){e.schema=kD({method:J(`eth_sendTransaction`),params:X(cD([zD])),returns:Q()})})(UD||={});var WD;(function(e){let t=q({address:Z(),decimals:WE(),direction:fD([`incoming`,`outgoing`]),formatted:G(),name:G(),recipients:X(K(Z())),symbol:G(),value:Q()}),n=q({decimals:WE(),formatted:G(),name:G(),symbol:G(),token:Z(),value:Q()});e.schema=kD({method:J(`eth_fillTransaction`),params:X(cD([zD])),returns:q({capabilities:q({balanceDiffs:Y(uD(Z(),X(K(t)))),error:Y(q({abiItem:Y(uD(G(),eD())),data:Y(Q()),errorName:G(),message:G()})),fee:Y(q({amount:Q(),decimals:WE(),formatted:G(),symbol:G()})),requireFunds:Y(q({amount:Q(),decimals:WE(),formatted:G(),token:Z(),symbol:G()})),autoSwap:Y(q({maxIn:n,minOut:n,slippage:WE()})),sponsor:Y(q({address:Z(),name:Y(G()),url:Y(G())})),sponsored:KE()}),tx:uD(G(),eD())})})})(WD||={});var GD;(function(e){e.schema=kD({method:J(`eth_signTransaction`),params:X(cD([zD])),returns:Q()})})(GD||={});var KD;(function(e){e.schema=kD({method:J(`eth_sendTransactionSync`),params:X(cD([zD])),returns:PD})})(KD||={});var qD;(function(e){e.schema=kD({method:J(`eth_signTypedData_v4`),params:X(cD([Z(),G()])),returns:Q()})})(qD||={});var JD;(function(e){e.schema=kD({method:J(`personal_sign`),params:X(cD([Q(),Z()])),returns:Q()})})(JD||={});let YD=Y(q({feePayer:Y(iD([KE(),G()])),sync:Y(KE())}));var XD;(function(e){e.schema=kD({method:J(`wallet_sendCalls`),params:Y(X(cD([q({atomicRequired:Y(KE()),calls:X(K(RD)),capabilities:YD,chainId:Y(MD()),from:Y(Z()),version:Y(G())})]))),returns:q({atomic:Y(KE()),capabilities:YD,chainId:Y(MD()),id:G(),receipts:Y(K(PD)),status:Y(WE()),version:Y(G())})})})(XD||={});var ZD;(function(e){e.schema=kD({method:J(`wallet_getBalances`),params:Y(X(cD([q({account:Y(Z()),chainId:Y(MD()),tokens:Y(X(K(Z())))})]))),returns:X(K(q({address:Z(),balance:jD(),decimals:WE(),display:G(),name:G(),symbol:G()})))})})(ZD||={});var QD;(function(e){e.schema=kD({method:J(`wallet_getCapabilities`),params:Y(X(iD([cD([Z()]),cD([Z(),X(K(Q()))])]))),returns:uD(Q(),q({accessKeys:Y(q({status:iD([J(`supported`),J(`unsupported`)])})),atomic:q({status:iD([J(`supported`),J(`ready`),J(`unsupported`)])}),feePayer:Y(q({status:iD([J(`supported`),J(`unsupported`)])}))}))})})(QD||={});var $D;(function(e){e.parameters=q({address:Y(Z()),chainId:Y(jD()),expiry:WE(),keyType:Y(ID),limits:Y(X(K(q({token:Z(),limit:jD(),period:Y(WE())})))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(iD([Q(),G()])),recipients:Y(X(K(Z())))}))))}),e.returns=q({keyAuthorization:LD,rootAddress:Z()}),e.schema=kD({method:J(`wallet_authorizeAccessKey`),params:X(cD([e.parameters])),returns:e.returns})})($D||={});var eO;(function(e){e.parameters=q({address:Y(Z()),expiry:WE(),keyType:Y(ID),limits:X(K(q({token:Z(),limit:jD(),period:Y(WE())}))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(iD([Q(),G()])),recipients:Y(X(K(Z())))}))))})})(eO||={});var tO;(function(e){e.schema=kD({method:J(`wallet_revokeAccessKey`),params:X(cD([q({address:Z(),accessKeyAddress:Z()})])),returns:void 0})})(tO||={});var nO;(function(e){e.authorizeAccessKey=Y($D.parameters),e.auth=Y(iD([G(),q({url:Y(G()),challenge:Y(G()),verify:Y(G()),logout:Y(G()),returnToken:Y(KE())})])),e.personalSign=Y(q({message:G()})),e.capabilities={request:Y(iD([q({digest:Y(Q()),authorizeAccessKey:e.authorizeAccessKey,auth:e.auth,method:J(`register`),name:Y(G()),personalSign:e.personalSign,userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:e.authorizeAccessKey,auth:e.auth,method:Y(J(`login`)),personalSign:e.personalSign,selectAccount:Y(KE())})])),result:q({email:Y(vD(G())),keyAuthorization:Y(LD),personalSign:Y(q({message:G()})),signature:Y(Q()),username:Y(vD(G())),auth:Y(q({token:Y(G())}))})},e.schema=kD({method:J(`wallet_connect`),params:Y(X(cD([q({capabilities:e.capabilities.request,chainId:Y(MD()),version:Y(G())})]))),returns:q({accounts:X(K(q({address:Z(),capabilities:e.capabilities.result})))})})})(nO||={});var rO;(function(e){let t=Y(eO.parameters),n=nO.auth,r=nO.personalSign;e.parameters=q({capabilities:Y(iD([q({digest:Y(Q()),authorizeAccessKey:t,auth:n,method:J(`register`),name:Y(G()),personalSign:r,userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:t,auth:n,method:Y(J(`login`)),personalSign:r,selectAccount:Y(KE())})])),chainId:Y(MD()),version:Y(G())})})(rO||={});var iO;(function(e){e.schema=kD({method:J(`wallet_disconnect`),params:void 0,returns:void 0})})(iO||={});var aO;(function(e){e.schema=kD({method:J(`wallet_getCallsStatus`),params:Y(X(cD([G()]))),returns:q({atomic:KE(),chainId:MD(),id:G(),receipts:Y(K(PD)),status:WE(),version:G()})})})(aO||={});var oO;(function(e){e.parameters=q({feePayer:Y(iD([KE(),G()])),to:Y(Z()),token:Y(Z()),value:Y(G())}),e.schema=kD({method:J(`wallet_send`),params:Y(X(cD([e.parameters]))),returns:q({chainId:MD(),receipt:PD})})})(oO||={});let sO=q({amount:Y(G()),pairToken:Y(Z()),slippage:Y(WE().check(FE(0),PE(1))),token:Y(Z()),type:Y(iD([J(`buy`),J(`sell`)]))});var cO;(function(e){e.schema=kD({method:J(`wallet_swap`),params:Y(X(cD([sO]))),returns:q({receipt:PD})})})(cO||={});var lO;(function(e){e.schema=kD({method:J(`wallet_switchEthereumChain`),params:X(cD([q({chainId:MD()})])),returns:void 0})})(lO||={});var uO;(function(e){e.schema=kD({method:J(`wallet_deposit`),params:X(cD([q({address:Y(Z()),chainId:Y(MD()),displayName:Y(G()),token:Y(Z()),value:Y(G())})])),returns:Y(q({receipts:Y(X(K(PD)))}))})})(uO||={});var dO;(function(e){e.parameters=q({amount:Y(G()),feePayer:Y(iD([KE(),G()])),token:Y(Z()),zoneId:Y(MD())}),e.schema=kD({method:J(`wallet_depositZone`),params:Y(X(cD([e.parameters]))),returns:q({receipt:PD})})})(dO||={});var fO;(function(e){e.parameters=q({amount:Y(G()),token:Y(Z()),zoneId:Y(MD())}),e.schema=kD({method:J(`wallet_withdrawZone`),params:Y(X(cD([e.parameters]))),returns:q({receipt:PD})})})(fO||={}),eO.parameters,rO.parameters;let pO=AD([BD.schema,VD.schema,WD.schema,HD.schema,UD.schema,KD.schema,GD.schema,qD.schema,JD.schema,$D.schema,nO.schema,uO.schema,dO.schema,iO.schema,ZD.schema,aO.schema,QD.schema,tO.schema,oO.schema,XD.schema,cO.schema,lO.schema,fO.schema]),mO=Ox();function hO(e){return e.params?q({method:e.method,params:e.params}):q({method:e.method})}let gO=oD(`method`,pO.map(hO));function _O(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 vO=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},yO=class extends vO{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 vO{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.`)}},bO=class extends vO{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 xO(e,t){if(!e)throw new yO({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new yO({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new bO({expires:e})}function SO(e){let t=rb(e);return JSON.parse(t)}function CO(e){return tb(Df(e),{pad:!1,url:!0})}function wO(){return G().check(RE(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function TO(){return G().check(RE(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function EO(e=`Invalid ISO 8601 datetime`){return bD(iD([TO(),DD(e=>e instanceof Date)]),hD(DO)).check(OD(e=>Number.isFinite(e.getTime()),e))}function DO(e){return e instanceof Date?e:new Date(e)}function OO(e){return e instanceof Date?Number.isFinite(e.getTime())?e.toISOString():`Invalid Date`:e}function kO(){return G().check(RE(/^0x[0-9a-fA-F]{40}$/,`Invalid address`))}function AO(){return G().check(RE(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function jO(){return G().check(RE(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let MO=q({description:Y(G()),digest:Y(G().check(RE(/^sha-256=/,`Invalid digest format`))),expires:Y(TO()),id:G(),intent:G(),method:G(),meta:Y(uD(G(),G())),opaque:Y(G()),realm:G(),request:uD(G(),eD())});function NO(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires?OO(e.expires):void 0,d=e.opaque??(i===void 0?void 0:CO(i)),f=l?KO({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return MO.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 PO(e,t){let n=FO(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=IO(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 NO({...a,request:SO(r),...i&&{opaque:i}},t)}function FO(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(!zO(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 IO(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]=LO(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function LO(e,t){if(e[t]===`\"`)return RO(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function RO(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 zO(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 BO(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return PO(n,t)}function VO(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return BO(e.headers,t)}function HO(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return UO(e.headers,t)}function UO(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return WO(n,t)}function WO(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 PO(e.slice(r,a).replace(/,\\s*$/,``),t)})}function GO(e){return[e.realm,e.method,e.intent,CO(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?CO(e.meta):``)].join(`|`)}function KO(e,t){let n=GO(e);return $y(Qg(Lf(t.secretKey),Lf(n),{as:`Bytes`}),{url:!0,pad:!1})}function qO(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=QO(n)}return t}function JO(e,t){let n=qO(e),r=ik(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[QO(e)]??1,index:t}));return{definition:r,entries:i,header:XO(i),keys:n}}function YO(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)=>nk(e,t))}function XO(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${ck(n)}`}).join(`, `)}function ZO(e,t,n){let r=new Map;for(let e of t){let t=QO(e);r.has(t)||r.set(t,e)}return e.map((e,t)=>{let i=r.get(QO(e));if(!i)return;let a=$O(e,n);if(!(!a||a.q<=0))return{challenge:e,index:t,match:a,method:i}}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(e=>{let{match:t,...n}=e;return n})}function QO(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function $O(e,t){let n;for(let r of t){if(!ek(e,r))continue;let t={...r,specificity:tk(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 ek(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function tk(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function nk(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}`);lk(r,`method`),lk(i,`intent`);let a=1;for(let t of rk(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=ok(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function rk(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function ik(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>QO(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]=ak(t,`payment preference \"${e}\"`)}return a}function ak(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return sk(e,t)}function ok(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 sk(Number(e),t)}function sk(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 ck(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function lk(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let uk=Symbol.for(`mppx.fetch.wrapper`),dk;function fk(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a,orderChallenges:o}=e,s=e.eventDispatcher??hk(),c=t??JO(i),l=Pk(r),u=async(e,t)=>{let r=Nk(e,t?.headers),u=r.has(`Accept-Payment`),d=Lk(r,c),f=Mk(e,t,r,d.header,u,n),p=await l(f.input,f.init);if(p.status!==402)return p;let m=t?.context,{context:h,orderChallenges:g,..._}=f.init??{},v,y,b;try{y=HO(p);let n=(await Rk(ZO(y,i,d.entries),g??o))[0];if(!n)throw Error(`No method found for challenges: ${y.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let r=n.challenge;v=r,b=n.method,v.expires&&xO(v.expires,v.id);let c=yk(e=>Ik(r,n.method,e??m)),u=await s.emit(`challenge.received`,bk({challenge:r,challenges:y,createCredential:c,init:t,input:e,method:n.method,response:p}))??(a?await a(v,{createCredential:c}):void 0)??await c();Fk(u),await s.emit(`credential.created`,xk({challenge:r,credential:u,init:t,input:e,method:n.method,response:p}));let h=await l(f.input,{..._,headers:jk(f.headers,u)});return h.ok&&await s.emit(`payment.response`,Sk({challenge:r,credential:u,init:t,input:e,method:n.method,response:h})),h}catch(n){throw await s.emit(`payment.failed`,Ck({challenge:v,challenges:y,error:n,init:t,input:e,method:b,response:p})),n}};return u[uk]=l,u}function pk(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);dk||=globalThis.fetch,globalThis.fetch=fk({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(Vk()?`same-origin`:`always`),fetch:globalThis.fetch})}function mk(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 hk(){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 gk(t,n);if(typeof e==`string`&&e.length>0){r=e;break}}return await vk(e[`*`],t,n),r}case`credential.created`:await _k(e[`credential.created`],n),await vk(e[`*`],t,n);return;case`payment.failed`:await _k(e[`payment.failed`],n),await vk(e[`*`],t,n);return;case`payment.response`:await _k(e[`payment.response`],n),await vk(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 gk(e,t){try{return await e(t)}catch{return}}async function _k(e,t){for(let n of e)try{await n(t)}catch{}}async function vk(e,t,n){await _k(e,Object.freeze({name:t,payload:n}))}function yk(e){let t;return n=>(t??=e(n),t)}function bk(e){return Object.freeze({challenge:Ok(e.challenge),challenges:e.challenges.map(e=>Ok(e)),createCredential:e.createCredential,init:wk(e.init),input:Tk(e.input),method:Ek(e.method),response:Dk(e.response)})}function xk(e){return Object.freeze({challenge:Ok(e.challenge),credential:e.credential,init:wk(e.init),input:Tk(e.input),method:Ek(e.method),...e.response===void 0?{}:{response:Dk(e.response)}})}function Sk(e){return Object.freeze({challenge:Ok(e.challenge),credential:e.credential,init:wk(e.init),input:Tk(e.input),method:Ek(e.method),response:Dk(e.response)})}function Ck(e){return Object.freeze({...e.challenge?{challenge:Ok(e.challenge)}:{},...e.challenges?{challenges:e.challenges.map(e=>Ok(e))}:{},error:e.error,init:wk(e.init),input:Tk(e.input),...e.method?{method:Ek(e.method)}:{},...e.response===void 0?{}:{response:Dk(e.response)}})}function wk(e){if(e)return Ak({...e,...e.headers?{headers:new Headers(e.headers)}:{}})}function Tk(e){return e instanceof Request?e.clone():e instanceof URL?new URL(e):e}function Ek(e){return Ak(Object.assign({},e))}function Dk(e){return e instanceof Response?e.clone():Ok(e)}function Ok(e){try{return kk(structuredClone(e))}catch{return Ak(e)}}function kk(e){if(!e||typeof e!=`object`||Object.isFrozen(e))return e;Object.freeze(e);for(let t of Object.values(e))kk(t);return e}function Ak(e){return!e||typeof e!=`object`||Object.isFrozen(e)||Object.freeze(e),e}function jk(e,t){let n=mk(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function Mk(e,t,n,r,i,a){let o=!!r&&!i&&zk(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 Nk(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function Pk(e){let t=e;for(;t[uk];)t=t[uk];return t}function Fk(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 Ik(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 Lk(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:YO(n),header:n}}catch{return t}}async function Rk(e,t){return t?t(e):e}function zk(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=Hk(e);return t===`same-origin`?Vk()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>Bk(n,e))}function Bk(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 Vk(){return globalThis.location!==void 0}function Hk(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,Vk()?globalThis.location.href:void 0)}var Uk=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},Wk=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function Gk(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new Uk;try{let e=rb(t[1]),n=JSON.parse(e),{opaque:r,request:i,meta:a,...o}=n.challenge,{meta:s,opaque:c}=Kk(r);return{challenge:MO.parse({...o,...s!==void 0&&{meta:s},...c!==void 0&&{opaque:c},request:SO(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new Wk}}function Kk(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!qk(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:CO(e)}}function qk(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function Jk(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:CO(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:CO(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${tb(JSON.stringify(o),{pad:!1,url:!0})}`}function Yk(e){return e}function Xk(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}function Zk(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 M(r)}}function Qk(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=fh({chain:i.chain,transport:Vw(Gy(e),Gy(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?Vw(Gy(a),Gy(n)):Gy(a);return fh({chain:{...t,id:r},transport:o})}}let $k={mainnet:4217,testnet:42431},eA={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};$k.mainnet,eA.usdc,$k.testnet,eA.pathUsd;let tA={[$k.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[$k.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},nA={[$k.mainnet]:`https://rpc.tempo.xyz`,[$k.testnet]:`https://rpc.moderato.tempo.xyz`},rA=[`push`,`pull`],iA=q({amount:wO(),memo:Y(AO()),recipient:bD(G(),hD(e=>e))}),aA=(1n<<64n)-1n,oA={dev_second:1n,day:86400n,week:604800n},sA=bD(kO(),hD(e=>e.toLowerCase())),cA=q({accessKeyAddress:sA,keyType:fD([`p256`,`secp256k1`,`webAuthn`])}),lA=q({accessKey:Y(cA),chainId:Y(WE())}),uA=EO(`subscriptionExpires must be a valid date`).check(OD(e=>e.getTime()%1e3==0,`subscriptionExpires must be representable as whole seconds`)),dA=fD([`dev_second`,`day`,`week`]),fA=bD(iD([G(),JE(),DD(e=>typeof e==`number`&&Number.isSafeInteger(e))]),hD(e=>e.toString())).check(RE(/^[1-9]\\d*$/,`Invalid periodCount`),OD(e=>{try{return BigInt(e)<=aA}catch{return!1}},`periodCount exceeds uint64`));function pA(e){return OD(e=>{let{amount:t,decimals:n}=e;return dy(t,n)>0n},e)}function mA(e){let{periodCount:t,periodUnit:n}=e;try{let e=oA[n];return e===void 0?!1:BigInt(t)*e<=aA}catch{return!1}}let hA=Yk({name:`tempo`,intent:`charge`,schema:{credential:{payload:oD(`type`,[q({hash:AO(),type:J(`hash`)}),q({signature:jO(),type:J(`transaction`)}),q({signature:jO(),type:J(`proof`)})])},request:bD(q({amount:wO(),chainId:Y(WE()),currency:G(),decimals:WE(),description:Y(G()),externalId:Y(G()),feePayer:Y(bD(iD([KE(),DD()]),hD(e=>typeof e==`object`?!0:e))),memo:Y(AO()),recipient:Y(G()),splits:Y(K(iA).check(LE(1),IE(10))),supportedModes:Y(K(fD(rA)).check(LE(1)))}).check(OD(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=dy(e,t),i=n.reduce((e,n)=>e+dy(n.amount,t),0n);return n.every(e=>dy(e.amount,t)>0n)&&i<r},`Invalid splits`)),hD(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:dy(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:dy(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),gA=Yk({name:`tempo`,intent:`session`,schema:{credential:{payload:oD(`action`,[q({action:J(`open`),authorizedSigner:Y(G()),channelId:AO(),cumulativeAmount:wO(),signature:jO(),transaction:jO(),type:J(`transaction`)}),q({action:J(`topUp`),additionalDeposit:wO(),channelId:AO(),transaction:jO(),type:J(`transaction`)}),q({action:J(`voucher`),channelId:AO(),cumulativeAmount:wO(),signature:jO()}),q({action:J(`close`),channelId:AO(),cumulativeAmount:wO(),signature:jO()})])},request:bD(q({amount:wO(),chainId:Y(WE()),channelId:Y(AO()),currency:G(),decimals:WE(),escrowContract:Y(G()),feePayer:Y(bD(iD([KE(),DD()]),hD(e=>typeof e==`object`?!0:e))),minVoucherDelta:Y(wO()),recipient:Y(G()),suggestedDeposit:Y(wO()),unitType:G()}).check(OD(({amount:e,decimals:t})=>dy(e,t)>0n,`Session amount must be greater than 0`)),hD(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:dy(e,r).toString(),...s?{suggestedDeposit:dy(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:dy(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}}),_A=Yk({name:`tempo`,intent:`subscription`,schema:{credential:{payload:q({signature:jO(),type:J(`keyAuthorization`)})},request:bD(q({amount:wO(),accessKey:Y(cA),chainId:Y(WE()),currency:sA,decimals:WE(),description:Y(G()),externalId:Y(G()),methodDetails:Y(lA),periodCount:fA,periodUnit:dA,recipient:sA,subscriptionExpires:uA}).check(pA(`Subscription amount must be greater than 0`),OD(mA,`Subscription period exceeds uint64`)),hD(({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:dy(t,r).toString(),subscriptionExpires:a.toISOString(),...Object.keys(s).length>0?{methodDetails:s}:{}}}))}}),vA=(1n<<64n)-1n,yA={dev_second:1n,day:86400n,week:604800n};function bA(e){return e instanceof Date?e:new Date(e)}function xA(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 SA(e){if(!/^[1-9]\\d*$/.test(e.periodCount))throw new $({reason:`periodCount is invalid`});let t=yA[e.periodUnit];if(t===void 0)throw new $({reason:`periodUnit is invalid`});let n=BigInt(e.periodCount)*t;if(n>vA)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 CA(e){let{challengeExpires:t,request:n}=e;SA(n);let r=xA(bA(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 wA(e){return[{address:IA(e.currency,`currency`),selector:`0x95777d59`,recipients:[IA(e.recipient,`recipient`)]}]}async function TA(e){let{accessKey:t,account:n,chainId:r,request:i}=e;if(typeof n.sign!=`function`)return;let a=DA({accessKey:t,chainId:r,request:i});return TS(a,{signature:iS(await n.sign({hash:OS(a)}))})}function EA(e){let{accessKey:t,chainId:n,payload:r,request:i}=e;if(r.type!==`keyAuthorization`)throw new $({reason:`invalid keyAuthorization payload`});let a=OA(r.signature),o=kA(a);return AA({accessKey:t,authorization:a,chainId:n}),jA(a,i),NA(MA(a),i),PA(a.scopes,i),{authorization:a,source:{address:FA(a,o),chainId:n}}}function DA(e){let{accessKey:t,chainId:n,request:r}=e;return TS({address:IA(t.accessKeyAddress,`accessKeyAddress`),chainId:BigInt(n),expiry:xA(bA(r.subscriptionExpires)),limits:[{token:IA(r.currency,`currency`),limit:BigInt(r.amount),period:SA(r)}],scopes:wA(r),type:t.keyType})}function OA(e){try{return kS(e)}catch{throw new $({reason:`invalid keyAuthorization payload`})}}function kA(e){let t=e.signature;if(!t||t.type===`keychain`)throw new $({reason:`keyAuthorization must use a primitive signature`});return t}function AA(e){let{accessKey:t,authorization:n,chainId:r}=e;if(n.chainId!==BigInt(r))throw new $({reason:`keyAuthorization chainId mismatch`});if(t){if(!Yd(n.address,IA(t.accessKeyAddress,`accessKeyAddress`)))throw new $({reason:`keyAuthorization access key mismatch`});if(n.type!==t.keyType)throw new $({reason:`keyAuthorization key type mismatch`})}}function jA(e,t){if(CA({request:t}),e.expiry!==xA(bA(t.subscriptionExpires)))throw new $({reason:`keyAuthorization expiry mismatch`})}function MA(e){let[t]=e.limits??[];if(!t||e.limits?.length!==1)throw new $({reason:`keyAuthorization must contain exactly one token limit`});return t}function NA(e,t){if(!Yd(e.token,IA(t.currency,`currency`)))throw new $({reason:`keyAuthorization currency mismatch`});if(e.limit!==BigInt(t.amount))throw new $({reason:`keyAuthorization amount mismatch`});if(e.period!==SA(t))throw new $({reason:`keyAuthorization period mismatch`})}function PA(e,t){if(!e||e.length!==1)throw new $({reason:`keyAuthorization must contain a recipient-scoped transferWithMemo call`});let n=IA(t.currency,`currency`),r=IA(t.recipient,`recipient`),i=new Set;for(let t of e){if(!Yd(t.address,n))throw new $({reason:`keyAuthorization call target mismatch`});let e=LA(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||!Yd(t.recipients[0],r))throw new $({reason:`keyAuthorization recipient mismatch`})}if(!i.has(`0x95777d59`))throw new $({reason:`keyAuthorization must allow transferWithMemo`})}function FA(e,t){let n=OS(e);try{let e=tS({payload:n,signature:t});if(!lS(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 IA(e,t){if(!Li(e))throw new $({reason:`${t} must be an address`});return e.toLowerCase()}function LA(e){return typeof e==`string`?e.toLowerCase():``}let RA=q({accessKey:Y(DD()),account:Y(DD())});function zA(e={}){let t=Qk({chain:Lw,getClient:e.getClient,rpcUrl:nA}),n=Zk({account:e.account});return Xk(_A,{context:RA,async createCredential({challenge:r,context:i}){let a=r.request.methodDetails?.chainId??$k.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.\");VA(r.request),await e.validateRequest?.(r.request);let l=await BA(o,{accessKey:c,account:s,chainId:a,request:r.request});if(!Yd(EA({accessKey:c,chainId:a,payload:{signature:jS(l),type:`keyAuthorization`},request:r.request}).source.address,s.address))throw Error(`keyAuthorization signer does not match the selected account`);return Jk({challenge:r,payload:{signature:jS(l),type:`keyAuthorization`},source:`did:pkh:eip155:${a}:${s.address.toLowerCase()}`})}})}async function BA(e,t){let{accessKey:n,account:r,chainId:i,request:a}=t;return await TA({accessKey:n,account:r,chainId:i,request:a})||ES((await e.request({method:`wallet_authorizeAccessKey`,params:[{address:n.accessKeyAddress,expiry:xA(bA(a.subscriptionExpires)),keyType:n.keyType,limits:[{token:a.currency,limit:L(BigInt(a.amount)),period:SA(a)}],scopes:wA(a)}]})).keyAuthorization)}function VA(e){SA(e),xA(bA(e.subscriptionExpires))}let HA=R(Zg(Lf(`mpp`),{as:`Hex`}),0,4);function UA(e){return mp(R(Zg(Lf(e),{as:`Hex`}),0,10))}function WA(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(mp(HA),0),i[4]=1,i.set(UA(t),5),n&&i.set(UA(n),15),i.set(GA(r),25),I(i)}function GA(e){return mp(R(Zg(Lf(e),{as:`Hex`}),0,7))}function KA(e,t){return e.toLowerCase()===t.toLowerCase()}let qA=[eA.pathUsd,eA.usdc];async function JA(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!KA(e,i)),c=await Promise.allSettled([Bm(e,hw.call({account:n,token:i})),...s.map(t=>Bm(e,hw.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 $C(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[lw.call({token:l,spender:LC,amount:e}),JC.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new XA({currency:i})}}function YA(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>KA(e,t)))]:t,slippage:e.slippage??1}:!1}var XA=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function ZA(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 QA={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function $A(e){return{name:`MPP`,version:`2`,chainId:e}}function ej(e,t){return{challengeId:e,realm:t}}function tj(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}function nj(e={}){let{clientId:t}=e,n=Qk({chain:Lw,getClient:e.getClient,rpcUrl:nA}),r=Zk({account:e.account});return Xk(hA,{context:q({account:Y(DD()),autoSwap:Y(DD()),mode:Y(fD(rA))}),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 Jk({challenge:i,payload:{signature:await Ry(s,{account:c,domain:$A(o),types:QA,primaryType:`Proof`,message:ej(i.id,i.realm)}),type:`proof`},source:tj({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:WA({challengeId:i.id,clientId:t,serverId:i.realm}),g=ZA({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>Ew.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=YA(a?.autoSwap??e.autoSwap,qA),v=[...(_?await JA(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 Iy(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return Jk({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await qd(s,{account:c,calls:v,nonceKey:`expiring`,validBefore:y});return b.gas=(b.gas??0n)+5000n,d?.feePayer&&(b.feePayer=!0),Jk({challenge:i,payload:{signature:await Ly(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function rj(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let ij={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function aj(e,t,n,r,i,a){let o=await Ry(e,{account:t,domain:rj(r,i),types:ij,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=iS(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return Dv(e.inner.signature)}catch{}return o}function oj(e){return Zg(Q_(ev([`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 sj=[{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 cj(e,t,n){return Bm(e,{address:t,abi:sj,functionName:`getChannel`,args:[n]})}ha({abi:sj,name:`open`}),ha({abi:sj,name:`topUp`});function lj(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??tA[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function uj(e,t,n,r){return Jk({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function dj(e,t,n,r,i,a,o){let s=await aj(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function fj(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=up(32),f=oj({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:sj,functionName:`open`,args:[i,a,o,d,u]}),h=Math.floor(Date.now()/1e3)+25,g=await qd(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],feeToken:a,...l?{nonceKey:`expiring`,validBefore:h}:{}});g.gas=(g.gas??0n)+5000n,l&&(g.feePayer=!0);let _=await Ly(e,g),v=await aj(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:_,authorizedSigner:u,cumulativeAmount:s.toString(),signature:v}}}async function pj(e,t,n,r){try{let i=await cj(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 mj=q({account:Y(DD()),action:Y(fD([`open`,`topUp`,`voucher`,`close`])),channelId:Y(G()),cumulativeAmount:Y(wO()),cumulativeAmountRaw:Y(G()),transaction:Y(G()),authorizedSigner:Y(G()),additionalDeposit:Y(wO()),additionalDepositRaw:Y(G()),depositRaw:Y(G())});function hj(e={}){let{decimals:t=6}=e,n=Qk({chain:Lw,getClient:e.getClient,rpcUrl:nA}),r=Zk({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:dy(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 lj(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 dy(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 pj(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?dy(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 ne;if(w?.opened)w.cumulativeAmount+=b,ne=await dj(g,f,w.channelId,w.cumulativeAmount,_,h,te),l(w);else{let e=await fj(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,_),ne=e.payload,l(e.entry)}return uj(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?dy(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?dy(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 aj(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 dj(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 aj(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 uj(e,S,u,r)}return Xk(gA,{context:mj,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 gj(e){let t=rb(e);return JSON.parse(t)}function _j(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 vj(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function yj(){return JSON.stringify({mpp:`payment-close-request`})}function bj(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`&&xj(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`&&Sj(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&xj(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function xj(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function Sj(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let Cj={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function wj(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:dy(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,_=hj({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=fk({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e},orderChallenges:e.orderChallenges});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 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 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?gj(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=Cj.CLOSED,r=null}if(e===`open`&&(i=Cj.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:{...mk(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=_j(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(r,s){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:f,protocols:m,signal:v}=s??{},b=new URL(r.toString()),S=new URL(b.toString());S.protocol===`ws:`&&(S.protocol=`http:`),S.protocol===`wss:`&&(S.protocol=`https:`),o=S.toString();let ne=await t(S,v?{signal:v}:void 0);if(ne.status!==402)throw Error(`Expected a 402 payment challenge from ${S}, received ${ne.status} instead.`);let ie=(await Tj(ZO(HO(ne),[_],JO([_]).entries),s?.orderChallenges??e.orderChallenges))[0]?.challenge;if(!ie)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=ie;let ae=await _.createCredential({challenge:ie,context:{}});d=null,c=ie,h=0n,g=BigInt(ie.request.amount);let se=Gk(ae);l=se.payload.channelId;let ce=new n(b,m);u=ce;let le=oe(ce),ue=e=>{C(Error(e)),w(Error(e)),(ce.readyState===Cj.CONNECTING||ce.readyState===Cj.OPEN)&&ce.close(3008,e)},de=e=>e.challengeId===ie.id&&e.channelId===l,fe=new Promise((e,t)=>{let n=()=>{ce.removeEventListener(`error`,r),le.emit(`open`,{type:`open`}),e()},r=()=>{ce.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${b} failed to open.`))};ce.addEventListener(`open`,n,{once:!0}),ce.addEventListener(`error`,r,{once:!0})});return ce.addEventListener(`close`,e=>{u===ce&&(u=null),c===ie&&(c=null),l===se.payload.channelId&&(l=null),p=null,C(Error(`WebSocket closed before the payment flow completed.`)),w(Error(`WebSocket closed before the payment flow completed.`)),le.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),ce.addEventListener(`error`,()=>{le.emit(`error`,{type:`error`})}),ce.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=bj(t);if(!n){le.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,le.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!de(n.data)){ue(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){ue(`received payment-close-ready beyond local voucher state`);break}y(n.data),f?.(n.data),te(n.data),le.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){ue(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){ue(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ie,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});ce.send(vj(r));break}case`payment-receipt`:if(!de(n.data)){ue(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){ue(`received mismatched payment-close receipt frame`);break}y(n.data),f?.(n.data),ee(n.data);break}}),v&&v.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),w(Error(`WebSocket payment flow aborted.`)),ce.close()},{once:!0}),await fe,ce.send(vj(ae)),await x(),le.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===Cj.OPEN){let t=d??await(async()=>(u.send(yj()),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(vj(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?gj(m):void 0}}}async function Tj(e,t){let n=t;return n?n(e):e}function Ej(e={}){return[nj(e),hj(e)]}(function(e){e.charge=nj,e.session=wj,e.subscription=zA})(Ej||={});function Dj(e){return e}function Oj(){return Dj({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return HO(e)},getChallenge(e){return VO(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function kj(e){let{onChallenge:t,orderChallenges:n,polyfill:r=!0,acceptPaymentPolicy:i=r&&globalThis.location!==void 0?`same-origin`:`always`,transport:a=Oj()}=e,o=e.fetch??globalThis.fetch,s=e.methods.flat(),c=JO(s,e.paymentPreferences),l=hk(),u=t,d={acceptPayment:c,acceptPaymentPolicy:i,...e.fetch&&{fetch:e.fetch},eventDispatcher:l,...u&&{onChallenge:u},...n&&{orderChallenges:n},methods:s},f=fk(d);r&&pk(d);function p(e){return l.on(`challenge.received`,e)}function m(e){return l.on(`credential.created`,e)}function h(e){return l.on(`payment.failed`,e)}function g(e){return l.on(`payment.response`,e)}return{fetch:f,rawFetch:o,methods:s,transport:a,on:l.on,onChallengeReceived:p,onCredentialCreated:m,onPaymentFailed:h,onPaymentResponse:g,async createCredential(e,t,r){let i=a.getChallenges?a.getChallenges(e):[a.getChallenge(e)],o=zj(c.entries,r?.acceptPayment),u,d;try{let a=(await Bj(ZO(i,s,o),r?.orderChallenges??n))[0];if(!a)throw Error(`No method found for challenges: ${i.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${s.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let c=a.challenge;u=c,d=a.method,u.expires&&xO(u.expires,u.id);let f=Aj(e=>Vj(c,d,e??t)),p=await l.emit(`challenge.received`,jj({challenge:c,challenges:i,createCredential:f,method:d,response:e}))??await f();return Fk(p),await l.emit(`credential.created`,Mj({challenge:c,credential:p,method:d,response:e})),p}catch(t){throw await l.emit(`payment.failed`,Nj({challenge:u,challenges:i,error:t,method:d,response:e})),t}}}}function Aj(e){let t;return n=>(t??=e(n),t)}function jj(e){return Object.freeze({challenge:Ij(e.challenge),challenges:e.challenges.map(e=>Ij(e)),createCredential:e.createCredential,method:Pj(e.method),response:Fj(e.response)})}function Mj(e){return Object.freeze({challenge:Ij(e.challenge),credential:e.credential,method:Pj(e.method),response:Fj(e.response)})}function Nj(e){return Object.freeze({...e.challenge?{challenge:Ij(e.challenge)}:{},...e.challenges?{challenges:e.challenges.map(e=>Ij(e))}:{},error:e.error,...e.method?{method:Pj(e.method)}:{},response:Fj(e.response)})}function Pj(e){return Rj(Object.assign({},e))}function Fj(e){return e instanceof Response?e.clone():Ij(e)}function Ij(e){try{return Lj(structuredClone(e))}catch{return Rj(e)}}function Lj(e){if(!e||typeof e!=`object`||Object.isFrozen(e))return e;Object.freeze(e);for(let t of Object.values(e))Lj(t);return e}function Rj(e){return!e||typeof e!=`object`||Object.isFrozen(e)||Object.freeze(e),e}function zj(e,t){return t?typeof t==`string`?YO(t):t:e}async function Bj(e,t){return t?t(e):e}async function Vj(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 Hj(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 Uj(e={}){let{account:t}=e,n=await Jx();return{accessKey:AC(n,t?{access:t}:void 0),keyPair:n}}function Wj(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 Gj(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 Kj(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 qj(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 ux({message:`Account \"${n}\" not found.`}):new fx({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(Xj(t,e))return Jj(t)}}return Yj(l,{signable:r})}function Jj(e){if(`keyPair`in e&&e.keyPair)return AC(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return OC(e.privateKey,{access:e.access});case`p256`:return DC(e.privateKey,{access:e.access})}throw new ux({message:`External access key cannot be hydrated for signing.`})}function Yj(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 ux({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return OC(e.privateKey);case`p256`:return DC(e.privateKey);case`webCrypto`:return AC(e.keyPair);case`webAuthn`:return kC(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return EC(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new ux({message:`Unknown key type.`})}}function Xj(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:Sy(e.selector)).toLowerCase():!0:!1)})}function Zj(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function Qj(e={}){let{dialog:t=ee()?ae():ie(),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.`),Zj({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=Ex();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 lx);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new lx({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=Cx({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:mO});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await Uj();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){Kj({address:e,keyAuthorization:ES(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=Hj(n,{store:i});try{let e=await t(n,r??void 0);return Gj(n,{store:i}),e}catch(e){if((e instanceof Error?Ww(e):void 0)?.errorName===`InsufficientBalance`)return;console.warn(`[accounts] silent sign with access key failed, removing key:`,e),Wj(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()},forwardsAuth:!0,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:DT(nO.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}:{},...r[0]?.capabilities.personalSign?{personalSign:r[0].capabilities.personalSign}:{}}},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:DT(nO.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}:{},...r[0]?.capabilities.personalSign?{personalSign:r[0].capabilities.personalSign}:{}}},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 qd(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:[DT(zD,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 qd(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:[DT(zD,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 qd(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:[DT(zD,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[DT(nO.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:[DT(oO.parameters,e)]})},async swap(e,t){return await l.request(t)},async depositZone(e,t){return await l.request({...t,params:[DT(dO.parameters,e)]})},async withdrawZone(e,t){return await l.request({...t,params:[DT(fO.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let $j=new Map,eM=new WeakMap;function tM(e,t){let{chains:n,feePayer:r,provider:i,store:a,transports:o}=t,s=(()=>{if(r!==!1){if(typeof r==`string`)return rM(r);if(r?.url)return rM(r.url)}})(),c=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,l=e??a.getState().chainId,u=`${l}:${i?`p`:``}:${r===!1?`no-fp`:s??``}:${c}`,d=i??o,f=(()=>{if(!d)return $j;let e=eM.get(d);return e||(e=new Map,eM.set(d,e)),e})(),p=f.get(u);if(!p){let e=n.find(e=>e.id===l)??n[0],t=o?.[l]??Gy(),r=i?nM(i,t):t;p=fh({chain:e,transport:s?iM(r,s,c):r,pollingInterval:1e3}),f.set(u,p)}return p}function nM(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function rM(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function iM(e,t,n){return r=>{let i=e(r),a=Gy(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=xC(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 aM(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(aM.cache.get(n))return aM.cache.get(n);let r=e().finally(()=>aM.cache.delete(n));return aM.cache.set(n,r),r}aM.cache=new Map;function oM(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function sM(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=oM(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let cM;function lM(){return cM||=sM(`keyval-store`,`keyval`),cM}function uM(e,t=lM()){return t(`readonly`,t=>oM(t.get(e)))}function dM(e,t,n=lM()){return n(`readwrite`,n=>(n.put(t,e),oM(n.transaction)))}function fM(e,t=lM()){return t(`readwrite`,t=>(t.delete(e),oM(t.transaction)))}function pM(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 mM(e={}){let t=typeof indexedDB<`u`?sM(`tempo`,`store`):void 0;return pM({async getItem(e){let n=await uM(e,t);return n===null?null:n},async setItem(e,n){await dM(e,n,t)},async removeItem(e){await fM(e,t)}},e)}function hM(e={}){let t=new Map;return pM({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let gM=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 _M(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 vM=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return vM(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return vM(t)(e)}}}},yM=(e,t)=>(n,r,i)=>{let a={storage:_M(()=>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 vM(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},bM=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},xM=(e=>e?bM(e):bM);function SM(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?mM({key:`tempo`}):hM({key:`tempo`})}=e;return xM(gM(yM(()=>({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}:{},...e.auth?{auth:e.auth}:{},chainId:e.chainId}),storage:i,version:0})))}async function CM(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function wM(e,t){let n=TT(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new dx({message:`Unsupported method \"${t?.method}\".`}):new cx(-32602,`Invalid params: ${TM(n.error.issues)}`)}return{...t,_decoded:n.data}}function TM(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?TM([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let EM=new Set;function DM(e={}){let{adapter:t=Qj(),chains:n=[Lw,Rw,zw],maxAccounts:r,persistCredentials:i,relay:a,testnet:o,storage:s=typeof window<`u`?mM():hM()}=e,c=(()=>{if(!(!a&&!e.transports))return{...a?Object.fromEntries(n.map(e=>[e.id,Gy(`${a.replace(/\\/$/,``)}/${e.id}`)])):{},...e.transports}})(),l=(()=>{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}})(),u=SM({chainId:(o?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:s}),d=(e={})=>qj({...e,store:u}),f;function p(e={}){let{chainId:t,feePayer:r}=e;return tM(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:l?.precedence}})(),store:u,transports:c})}let m=t({getAccount:d,getClient:p,storage:s,store:u}),{actions:h}=m,g=Sx();u.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>g.emit(`accountsChanged`,u.getState().accounts.map(e=>e.address))),u.subscribe(e=>e.chainId,e=>g.emit(`chainChanged`,L(e))),u.subscribe(e=>e.accounts.length>0,e=>{e?g.emit(`connect`,{chainId:L(u.getState().chainId)}):g.emit(`disconnect`,new fx)});function _(){if(u.getState().accounts.length===0)throw new fx({message:`No accounts connected.`})}function v(e){if(!m.persistAccounts)return e;let t=[...e];for(let e of u.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function y(e){if(e===!1)return!1;let t=typeof e==`string`?e:l?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let b=Object.assign(Cx({...g,async request({method:t,params:r}){return await CM(u),aM(async()=>{let i;try{i=wM(gO,{method:t,params:r})}catch(e){if(!(e instanceof dx))throw e;return await tM(void 0,{chains:n,store:u,transports:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=u.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(u.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await h.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return u.setState({accounts:v(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{_();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 h.sendTransaction({...r,chainId:e.chainId??u.getState().chainId,...a?{calls:a}:{},feePayer:y(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=y(t.feePayer),a=e=>{let t=p({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 d({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=Hj(e,{store:u});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...MS(n)}});return Gj(e,{store:u}),r}catch{return Wj(e,{store:u}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{_();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 h.signTransaction({...r,chainId:e.chainId??u.getState().chainId,...a?{calls:a}:{},feePayer:y(e.feePayer)},i)}case`eth_sendTransactionSync`:{_();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 h.sendTransactionSync({...r,chainId:e.chainId??u.getState().chainId,...a?{calls:a}:{},feePayer:y(e.feePayer)},i)}case`eth_signTypedData_v4`:{_();let[e,t]=i._decoded.params;return await h.signTypedData({address:e,data:t},i)}case`personal_sign`:{_();let[e,t]=i._decoded.params;return await h.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{_();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=y(t?.feePayer??(l?!0:void 0)),s={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=F(await h.sendTransaction(s,{method:`eth_sendTransaction`,params:[DT(zD,s)]}),cp(L(u.getState().chainId),32),kM);return{capabilities:{sync:a},id:e}}let c=await h.sendTransactionSync(s,{method:`eth_sendTransactionSync`,params:[DT(zD,s)]}),d=c.transactionHash,f=L(u.getState().chainId),p=F(d,cp(f,32),kM);return{atomic:!0,capabilities:{sync:a},chainId:f,id:p,receipts:[c],status:c.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=u.getState(),a=e?.account??t[r]?.address;if(!a)throw new fx({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new ax({message:\"`tokens` is required.\"});let s=tM(e?.chainId,{chains:n,store:u,transports:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([hw(s,{account:a,token:e}),gw(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(kM.slice(2)))throw Error(\"`id` not supported\");ip(e);let t=R(e,0,32),r=L(Number(R(e,32,64))),a=await tM(Number(r),{chains:n,store:u,transports: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}=u.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new ux({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`},...l?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&u.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),a=n?.auth??e.auth,o=a?MM(a):void 0;if(o&&n?.personalSign)throw new ax({message:\"`auth` and `personalSign` cannot both be set on `wallet_connect`.\"});o&&(i={...i,params:[{...i.params?.[0],capabilities:{...i.params?.[0]?.capabilities,auth:o}}]});let s=o&&!m.forwardsAuth?await PM(o,t??u.getState().chainId??0):void 0,c=s?{message:s.message}:n?.personalSign,{keyAuthorization:l,accounts:d,email:f,personalSign:p,signature:g,username:_}=await(async()=>{if(n?.method===`register`){let e=n.name?u.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await h.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r,...c?{personalSign:c}:{}},i):await h.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??up(16),...c?{personalSign:c}:{}},i)}return await h.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount,...c?{personalSign:c}:{}},i)})();u.setState({accounts:v(d),activeAccount:0,auth:o&&typeof o==`object`?o:void 0});let y=d[0]?.address,b=o&&typeof o==`object`?o.verify:void 0,x=s?.message??p?.message,S=o&&b&&x&&g&&y?await FM(o,{address:y,message:x,signature:g}):void 0;return{accounts:d.map(e=>({address:e.address,capabilities:e.address===y?{...l?{keyAuthorization:{...l,address:l.keyId}}:{},...g?{signature:g}:{},...f===void 0?{}:{email:f},..._===void 0?{}:{username:_},...S?{auth:S}:{},...p?{personalSign:{message:p.message}}:{}}:{}}))}}case`wallet_disconnect`:{let t=(()=>{let t=u.getState().auth;if(t?.logout)return t.logout;if(e.auth)try{let t=MM(e.auth);return typeof t==`object`?t.logout:void 0}catch{return}})();t&&await fetch(t,{method:`POST`,credentials:`include`}).catch(()=>{}),await h.disconnect?.(),u.setState({accessKeys:[],accounts:[],activeAccount:0,auth:void 0});return}case`wallet_authorizeAccessKey`:{if(!h.authorizeAccessKey)throw new dx({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await h.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(_(),!h.revokeAccessKey)throw new dx({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await h.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!h.deposit)throw new dx({message:\"`deposit` not supported by adapter.\"});return await h.deposit(i._decoded.params[0],i);case`wallet_send`:{if(_(),!h.send)throw new dx({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:y(e.feePayer)}};return await h.send(t,i)}case`wallet_swap`:if(_(),!h.swap)throw new dx({message:\"`swap` not supported by adapter.\"});return await h.swap(i._decoded.params?.[0]??{},i);case`wallet_depositZone`:{if(_(),!h.depositZone)throw new dx({message:\"`depositZone` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:y(e.feePayer)}};return await h.depositZone(t,i)}case`wallet_withdrawZone`:if(_(),!h.withdrawZone)throw new dx({message:\"`withdrawZone` not supported by adapter.\"});return await h.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 gx({message:`Chain ${e} not configured.`});await h.switchChain?.({chainId:e}),u.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:kf({method:t,params:r})})}},{schema:mO}),{chains:n,getAccount:d,getClient(e={}){let{chainId:t,feePayer:r}=e;return tM(t,{chains:n,feePayer:r,provider:f,store:u,transports:c})},store:u});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;EM.has(e)||(EM.add(e),_O({info:{icon:t.icon??OM,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:b}))}if(e.mpp){let{mode:t=`push`}=typeof e.mpp==`object`?e.mpp:{};kj({methods:[Ej({getClient:({chainId:e})=>{let t=b.getClient({chainId:e}),n=b.getAccount();return Object.assign(t,{account:n})},mode:t})]})}return f=b,b}let OM=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,kM=Zg(sp(`TEMPO_5792`));function AM(){return typeof document<`u`&&typeof document.cookie==`string`||typeof navigator<`u`&&navigator.product===`ReactNative`}function jM(e,t){let n=(()=>{if(typeof e==`string`){let n=e.endsWith(`/`)?e.slice(0,-1):e;return t===`verify`?n:`${n}/${t}`}let n=e[t];if(n)return n;if(e.url){let n=e.url.endsWith(`/`)?e.url.slice(0,-1):e.url;return t===`verify`?n:`${n}/${t}`}throw new ax({message:`\\`auth\\` capability must include either \\`url\\` or an explicit \\`${t}\\` endpoint.`})})();return n.startsWith(`http://`)||n.startsWith(`https://`)?n:typeof window<`u`?new URL(n,window.location.origin).href:n}function MM(e){let t=typeof e==`string`||!!e.url,n=t||typeof e==`object`&&!!e.challenge,r=t||typeof e==`object`&&!!e.verify,i=t||typeof e==`object`&&!!e.logout,a={...n?{challenge:jM(e,`challenge`)}:{},...r?{verify:jM(e,`verify`)}:{},...i?{logout:jM(e,`logout`)}:{},...typeof e==`object`&&e.returnToken?{returnToken:!0}:{}};return NM(a),a}function NM(e){if(typeof e!=`object`)return;let t=[e.challenge,e.verify,e.logout].filter(e=>typeof e==`string`);if(t.length<2)return;let n=t.map(e=>{try{return new URL(e).origin}catch{throw new ax({message:`\\`auth\\` endpoint is not a valid URL: ${e}`})}}),r=n[0];if(n.some(e=>e!==r))throw new ax({message:\"`auth` endpoints (`challenge`, `verify`, `logout`) must share the same origin.\"})}async function PM(e,t){let n=typeof e==`object`?e.challenge:jM(e,`challenge`),r=await fetch(n,{method:`POST`,headers:{\"content-type\":`application/json`},body:JSON.stringify({chainId:t})});if(!r.ok)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` returned ${r.status}.`});let i=await r.json().catch(()=>({}));if(!i.message)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` response missing \\`message\\`.`});let a=Ny(i.message),o=new URL(n);if(a.version!==`1`)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` returned a non-SIWE-v1 message.`});if(!a.nonce)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` response is missing a \\`nonce\\`.`});if(a.domain!==o.host)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` returned a message bound to \\`${a.domain}\\` (expected \\`${o.host}\\`).`});if(a.uri!==o.origin)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` returned a message with \\`uri\\` \\`${a.uri}\\` (expected \\`${o.origin}\\`).`});if(a.chainId!==t)throw new ax({message:`Server Authentication challenge endpoint \\`${n}\\` returned a message bound to chainId \\`${a.chainId}\\` (expected \\`${t}\\`).`});return{message:i.message}}async function FM(e,t){let n=typeof e==`object`?e.verify:jM(e,`verify`),r=typeof e==`object`&&e.returnToken===!0||!AM(),i=await fetch(n,{method:`POST`,credentials:`include`,headers:{\"content-type\":`application/json`},body:JSON.stringify({...t,...r?{returnToken:!0}:{}})});if(!i.ok)throw new ox({message:`Server Authentication verify endpoint \\`${n}\\` returned ${i.status}.`});let a=await i.json().catch(()=>({}));return a.token?{token:a.token}:{}}let IM={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},LM={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},RM={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var zM=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let BM={accent:new zM(`accent`),background:new zM(`background`),border:new zM(`border`),foreground:new zM(`foreground`),muted:new zM(`muted`),negative:new zM(`negative`),positive:new zM(`positive`),surface:new zM(`surface`),fontFamily:new zM(`font-family`),fontSizeBase:new zM(`font-size-base`),radius:new zM(`radius`),spacingUnit:new zM(`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: ${BM.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 VM(e){let t=new URL(location.href);t.searchParams.set(LM.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 HM(e){let t=document.getElementById(IM.data),n=Of(t.textContent),r=t.getAttribute(RM.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(RM.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(RM.challengeId),o=a?(i.removeAttribute(RM.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(IM.error)?.remove();return}let t=document.getElementById(IM.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=IM.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:VM,vars:BM}}let UM=HM(`tempo`),WM=String.raw,GM=document.createElement(`style`);GM.textContent=WM`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${UM.vars.spacingUnit} * 8);\n }\n button {\n background: ${UM.vars.accent};\n border-radius: ${UM.vars.radius};\n color: ${UM.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${UM.vars.spacingUnit} * 4) calc(${UM.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`,UM.root.append(GM);let KM=DM({testnet:UM.challenge.request.methodDetails?.chainId===Rw.id||UM.challenge.request.methodDetails?.chainId===Bw.id}),qM=document.createElement(`button`);qM.innerHTML=`${UM.text.pay===`Pay`?`Continue with`:UM.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>`,qM.onclick=async()=>{try{UM.error(),qM.disabled=!0;let e=await(async()=>{let e=await KM.request({method:`eth_accounts`});return e.length>0?e.at(0):(await KM.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await Ej({account:e,getClient:e=>{let t=e.chainId??UM.challenge.request.methodDetails?.chainId;return fh({chain:[...KM?.chains??[],Rw,Bw].find(e=>e.id===t),transport:By(KM)})}})[0].createCredential({challenge:UM.challenge,context:{}});await UM.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;UM.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{qM.disabled=!1}},UM.root.appendChild(qM)})();</script>";
3
3
  //# sourceMappingURL=html.gen.js.map