mppx 0.6.18 → 0.6.20

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 (155) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/Challenge.d.ts +2 -2
  3. package/dist/Challenge.d.ts.map +1 -1
  4. package/dist/Challenge.js +1 -1
  5. package/dist/Challenge.js.map +1 -1
  6. package/dist/Method.d.ts +34 -0
  7. package/dist/Method.d.ts.map +1 -1
  8. package/dist/Method.js +3 -1
  9. package/dist/Method.js.map +1 -1
  10. package/dist/Receipt.d.ts +1 -0
  11. package/dist/Receipt.d.ts.map +1 -1
  12. package/dist/Receipt.js +2 -0
  13. package/dist/Receipt.js.map +1 -1
  14. package/dist/client/Methods.d.ts +1 -0
  15. package/dist/client/Methods.d.ts.map +1 -1
  16. package/dist/client/Methods.js +1 -0
  17. package/dist/client/Methods.js.map +1 -1
  18. package/dist/middlewares/elysia.d.ts.map +1 -1
  19. package/dist/middlewares/elysia.js +14 -0
  20. package/dist/middlewares/elysia.js.map +1 -1
  21. package/dist/middlewares/express.d.ts.map +1 -1
  22. package/dist/middlewares/express.js +1 -2
  23. package/dist/middlewares/express.js.map +1 -1
  24. package/dist/middlewares/hono.d.ts.map +1 -1
  25. package/dist/middlewares/hono.js +14 -0
  26. package/dist/middlewares/hono.js.map +1 -1
  27. package/dist/middlewares/nextjs.d.ts.map +1 -1
  28. package/dist/middlewares/nextjs.js +14 -0
  29. package/dist/middlewares/nextjs.js.map +1 -1
  30. package/dist/proxy/Proxy.d.ts.map +1 -1
  31. package/dist/proxy/Proxy.js +2 -2
  32. package/dist/proxy/Proxy.js.map +1 -1
  33. package/dist/proxy/Service.d.ts.map +1 -1
  34. package/dist/proxy/Service.js +1 -1
  35. package/dist/proxy/Service.js.map +1 -1
  36. package/dist/server/Mppx.d.ts +15 -3
  37. package/dist/server/Mppx.d.ts.map +1 -1
  38. package/dist/server/Mppx.js +190 -40
  39. package/dist/server/Mppx.js.map +1 -1
  40. package/dist/stripe/server/internal/html.gen.d.ts +1 -1
  41. package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
  42. package/dist/stripe/server/internal/html.gen.js +1 -1
  43. package/dist/stripe/server/internal/html.gen.js.map +1 -1
  44. package/dist/tempo/Methods.d.ts +96 -0
  45. package/dist/tempo/Methods.d.ts.map +1 -1
  46. package/dist/tempo/Methods.js +97 -0
  47. package/dist/tempo/Methods.js.map +1 -1
  48. package/dist/tempo/client/Methods.d.ts +3 -0
  49. package/dist/tempo/client/Methods.d.ts.map +1 -1
  50. package/dist/tempo/client/Methods.js +3 -0
  51. package/dist/tempo/client/Methods.js.map +1 -1
  52. package/dist/tempo/client/Subscription.d.ts +114 -0
  53. package/dist/tempo/client/Subscription.d.ts.map +1 -0
  54. package/dist/tempo/client/Subscription.js +100 -0
  55. package/dist/tempo/client/Subscription.js.map +1 -0
  56. package/dist/tempo/client/index.d.ts +1 -0
  57. package/dist/tempo/client/index.d.ts.map +1 -1
  58. package/dist/tempo/client/index.js +1 -0
  59. package/dist/tempo/client/index.js.map +1 -1
  60. package/dist/tempo/index.d.ts +1 -0
  61. package/dist/tempo/index.d.ts.map +1 -1
  62. package/dist/tempo/index.js +1 -0
  63. package/dist/tempo/index.js.map +1 -1
  64. package/dist/tempo/server/Charge.js +2 -2
  65. package/dist/tempo/server/Charge.js.map +1 -1
  66. package/dist/tempo/server/Methods.d.ts +5 -0
  67. package/dist/tempo/server/Methods.d.ts.map +1 -1
  68. package/dist/tempo/server/Methods.js +5 -0
  69. package/dist/tempo/server/Methods.js.map +1 -1
  70. package/dist/tempo/server/Subscription.d.ts +221 -0
  71. package/dist/tempo/server/Subscription.d.ts.map +1 -0
  72. package/dist/tempo/server/Subscription.js +637 -0
  73. package/dist/tempo/server/Subscription.js.map +1 -0
  74. package/dist/tempo/server/index.d.ts +1 -0
  75. package/dist/tempo/server/index.d.ts.map +1 -1
  76. package/dist/tempo/server/index.js +1 -0
  77. package/dist/tempo/server/index.js.map +1 -1
  78. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  79. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  80. package/dist/tempo/server/internal/html.gen.js +1 -1
  81. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  82. package/dist/tempo/session/Chain.d.ts.map +1 -1
  83. package/dist/tempo/session/Chain.js +3 -4
  84. package/dist/tempo/session/Chain.js.map +1 -1
  85. package/dist/tempo/subscription/KeyAuthorization.d.ts +282 -0
  86. package/dist/tempo/subscription/KeyAuthorization.d.ts.map +1 -0
  87. package/dist/tempo/subscription/KeyAuthorization.js +297 -0
  88. package/dist/tempo/subscription/KeyAuthorization.js.map +1 -0
  89. package/dist/tempo/subscription/Receipt.d.ts +10 -0
  90. package/dist/tempo/subscription/Receipt.d.ts.map +1 -0
  91. package/dist/tempo/subscription/Receipt.js +16 -0
  92. package/dist/tempo/subscription/Receipt.js.map +1 -0
  93. package/dist/tempo/subscription/Store.d.ts +99 -0
  94. package/dist/tempo/subscription/Store.d.ts.map +1 -0
  95. package/dist/tempo/subscription/Store.js +292 -0
  96. package/dist/tempo/subscription/Store.js.map +1 -0
  97. package/dist/tempo/subscription/Types.d.ts +65 -0
  98. package/dist/tempo/subscription/Types.d.ts.map +1 -0
  99. package/dist/tempo/subscription/Types.js +2 -0
  100. package/dist/tempo/subscription/Types.js.map +1 -0
  101. package/dist/tempo/subscription/index.d.ts +6 -0
  102. package/dist/tempo/subscription/index.d.ts.map +1 -0
  103. package/dist/tempo/subscription/index.js +4 -0
  104. package/dist/tempo/subscription/index.js.map +1 -0
  105. package/dist/zod.d.ts +7 -0
  106. package/dist/zod.d.ts.map +1 -1
  107. package/dist/zod.js +18 -0
  108. package/dist/zod.js.map +1 -1
  109. package/package.json +3 -3
  110. package/src/Challenge.test.ts +13 -0
  111. package/src/Challenge.ts +3 -3
  112. package/src/Method.ts +46 -1
  113. package/src/Receipt.ts +2 -0
  114. package/src/client/Methods.ts +1 -0
  115. package/src/middlewares/elysia.test.ts +31 -1
  116. package/src/middlewares/elysia.ts +13 -0
  117. package/src/middlewares/express.ts +1 -5
  118. package/src/middlewares/hono.test.ts +30 -1
  119. package/src/middlewares/hono.ts +13 -0
  120. package/src/middlewares/nextjs.test.ts +28 -1
  121. package/src/middlewares/nextjs.ts +13 -0
  122. package/src/proxy/Proxy.ts +2 -5
  123. package/src/proxy/Service.test.ts +34 -0
  124. package/src/proxy/Service.ts +7 -0
  125. package/src/server/Mppx.authorize.test.ts +210 -0
  126. package/src/server/Mppx.test-d.ts +23 -1
  127. package/src/server/Mppx.test.ts +73 -3
  128. package/src/server/Mppx.ts +291 -58
  129. package/src/stripe/server/internal/html/package.json +1 -1
  130. package/src/stripe/server/internal/html.gen.ts +1 -1
  131. package/src/tempo/Methods.test.ts +131 -0
  132. package/src/tempo/Methods.ts +136 -0
  133. package/src/tempo/Subscription.integration.test.ts +591 -0
  134. package/src/tempo/client/Methods.ts +3 -0
  135. package/src/tempo/client/Subscription.test.ts +131 -0
  136. package/src/tempo/client/Subscription.ts +155 -0
  137. package/src/tempo/client/index.ts +1 -0
  138. package/src/tempo/index.ts +1 -0
  139. package/src/tempo/server/Charge.ts +2 -2
  140. package/src/tempo/server/Methods.ts +5 -0
  141. package/src/tempo/server/Subscription.test.ts +1410 -0
  142. package/src/tempo/server/Subscription.ts +1014 -0
  143. package/src/tempo/server/index.ts +1 -0
  144. package/src/tempo/server/internal/html/package.json +1 -1
  145. package/src/tempo/server/internal/html.gen.ts +1 -1
  146. package/src/tempo/session/Chain.ts +3 -5
  147. package/src/tempo/subscription/KeyAuthorization.test.ts +204 -0
  148. package/src/tempo/subscription/KeyAuthorization.ts +394 -0
  149. package/src/tempo/subscription/Receipt.ts +28 -0
  150. package/src/tempo/subscription/Store.test.ts +554 -0
  151. package/src/tempo/subscription/Store.ts +431 -0
  152. package/src/tempo/subscription/Types.ts +68 -0
  153. package/src/tempo/subscription/index.ts +23 -0
  154. package/src/zod.test.ts +23 -1
  155. package/src/zod.ts +24 -0
@@ -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){return t.endsWith(`.local`)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let y={height:440,width:360};function b(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function x(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function S(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let ee,C,w,te=[];function ne(){return typeof window>`u`?ie():b({name:`iframe`},e=>{let{host:t}=e;if(ee&&ee.host===t){let t=C;return C=e.store,t&&t!==C&&!te.includes(t)&&te.push(t),w?.destroy(),w=re()(e),ee.instance.syncTheme(e.theme),ee.instance}ee?.instance.destroy(),C=e.store,w=re()(e);let n=!1,r=ue(),i=new URL(t);i.searchParams.set(`chainId`,String(C.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),v(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(C,te,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ce(e)}),e.on(`sync`,({valid:e})=>{e===!1&&C?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),ne(),n=!1,l=!0;let e=C?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&w?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,y=()=>se(C),b=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});b.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,ne=()=>{x&&(x=!1,a.removeEventListener(`cancel`,y),a.removeEventListener(`click`,y),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{x||(x=!0,a.addEventListener(`cancel`,y),a.addEventListener(`click`,y),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},de=!1,fe=()=>{de||(de=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(de){de=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},me={close(){w.close(),n=!1,pe(),ne()},destroy(){ee?.instance===me&&(ee=void 0),w?.close(),n=!1,ne(),pe(),w?.destroy(),f.destroy(),a.remove(),b.disconnect(),C=void 0,w=void 0,te=[]},open(){n||(n=!0,fe(),ie())},async syncRequests(e){if(l){w.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(S()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){w.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),w.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:le(C),chainId:C.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return ee={host:t,instance:me},me})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=y}=e;return b({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=ue(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),v(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:le(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ie(){return b({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){if(!C)return;let{accounts:t}=C.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function le(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ue(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var de=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function fe(e,t){return e.exec(t)?.groups}let pe=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,me=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,he=/^\\(.+?\\).*?$/,ge=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function _e(e){let t=e.type;if(ge.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=_e(i),r<n-1&&(t+=`, `)}let r=fe(ge,e.type);return t+=`)${r?.array||``}`,_e({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function ve(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=_e(i),r!==n-1&&(t+=`, `)}return t}function ye(e){return e.type===`function`?`function ${e.name}(${ve(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ve(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ve(e.inputs)})`:e.type===`error`?`error ${e.name}(${ve(e.inputs)})`:e.type===`constructor`?`constructor(${ve(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let be=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function xe(e){return be.test(e)}function Se(e){return fe(be,e)}let Ce=new Set([`memory`,`indexed`,`storage`,`calldata`]),we=new Set([`calldata`,`memory`,`storage`]);var Te=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Ee=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},De=class extends de{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Oe=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},ke=class extends de{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Ae=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},je=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Me=class extends de{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Ne=class extends de{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Pe=class extends de{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Fe=class extends de{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},Ie=class extends de{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Le(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Re=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),ze=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Be=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ve=/^u?int$/;function He(e,t){let n=Le(e,t?.type,t?.structs);if(Re.has(n))return Re.get(n);let r=he.test(e),i=fe(r?Be:ze,e);if(!i)throw new Oe({param:e});if(i.name&&Ke(i.name))throw new ke({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=Ue(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(He(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ve.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!We(c))throw new Ee({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Ae({param:e,type:t?.type,modifier:i.modifier});if(we.has(i.modifier)&&!qe(c,!!i.array))throw new je({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Re.set(n,u),u}function Ue(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?Ue(o,[...t,n.trim()]):Ue(o,t,`${n}${i}`,r);case`(`:return Ue(o,t,`${n}${i}`,r+1);case`)`:return Ue(o,t,`${n}${i}`,r-1);default:return Ue(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Ie({current:n,depth:r});return t.push(n.trim()),t}function We(e){return e===`address`||e===`bool`||e===`function`||e===`string`||pe.test(e)||me.test(e)}let Ge=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Ke(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||pe.test(e)||me.test(e)||Ge.test(e)}function qe(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Je(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!xe(n))continue;let i=Se(n);if(!i)throw new Ne({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=He(t,{type:`struct`});o.push(n)}if(!o.length)throw new Pe({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Xe(a,t)}return r}let Ye=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Xe(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(he.test(i.type))r.push(i);else{let e=fe(Ye,i.type);if(!e?.type)throw new Me({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fe({type:o});r.push({...i,type:`tuple${a??``}`,components:Xe(t[o],t,new Set([...n,o]))})}else if(We(o))r.push(i);else throw new Te({type:o})}}return r}function Ze(e){let t=[];if(typeof e==`string`){let n=Ue(e),r=n.length;for(let e=0;e<r;e++)t.push(He(n[e],{modifiers:Ce}))}else{let n=Je(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(xe(r))continue;let a=Ue(r),o=a.length;for(let e=0;e<o;e++)t.push(He(a[e],{modifiers:Ce,structs:n}))}}if(t.length===0)throw new De({params:e});return t}var Qe,$e=o((()=>{Qe=`0.1.1`}));function et(){return Qe}var tt=o((()=>{$e()}));function nt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?nt(e.cause,t):t?null:e}var T,rt=o((()=>{tt(),T=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return nt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${et()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),it,at=o((()=>{it=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function ot(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function st(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function ct(e,...t){if(!ot(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function lt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);st(e.outputLen),st(e.blockLen)}function ut(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function dt(e,t){ct(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ft(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function pt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function mt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ht(e,t){return e<<32-t|e>>>t}function gt(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function _t(e){for(let t=0;t<e.length;t++)e[t]=gt(e[t]);return e}function vt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function yt(e){return typeof e==`string`&&(e=vt(e)),ct(e),e}function bt(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];ct(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function xt(e){let t=t=>e().update(yt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function St(e){let t=(t,n)=>e(n).update(yt(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ct(e=32){if(it&&typeof it.getRandomValues==`function`)return it.getRandomValues(new Uint8Array(e));if(it&&typeof it.randomBytes==`function`)return Uint8Array.from(it.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var wt,Tt,Et,Dt=o((()=>{at(),wt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Tt=wt?e=>e:_t,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Et=class{}})),Ot,kt,At=o((()=>{Dt(),Ot=class extends Et{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lt(e);let n=yt(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),pt(i)}update(e){return ut(this),this.iHash.update(e),this}digestInto(e){ut(this),ct(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kt=(e,t,n)=>new Ot(e,t).update(n).digest(),kt.create=(e,t)=>new Ot(e,t)}));function jt(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Mt(e,t,n){return e&t^~e&n}function Nt(e,t,n){return e&t^e&n^t&n}var Pt,Ft,It,Lt,Rt=o((()=>{Dt(),Pt=class extends Et{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=mt(this.buffer)}update(e){ut(this),e=yt(e),ct(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=mt(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ut(this),dt(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,pt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;jt(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=mt(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ft=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),It=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function zt(e,t=!1){return t?{h:Number(e&Ht),l:Number(e>>Ut&Ht)}:{h:Number(e>>Ut&Ht)|0,l:Number(e&Ht)|0}}function Bt(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=zt(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function Vt(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn=o((()=>{Ht=BigInt(2**32-1),Ut=BigInt(32),Wt=(e,t,n)=>e>>>n,Gt=(e,t,n)=>e<<32-n|t>>>n,Kt=(e,t,n)=>e>>>n|t<<32-n,qt=(e,t,n)=>e<<32-n|t>>>n,Jt=(e,t,n)=>e<<64-n|t>>>n-32,Yt=(e,t,n)=>e>>>n-32|t<<64-n,Xt=(e,t,n)=>e<<n|t>>>32-n,Zt=(e,t,n)=>t<<n|e>>>32-n,Qt=(e,t,n)=>t<<n-32|e>>>64-n,$t=(e,t,n)=>e<<n-32|t>>>64-n,en=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),tn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,nn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),rn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,an=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),on=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function cn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=xn(a,o,1)^n[r],c=Sn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=gn[n],a=xn(t,i,r),o=Sn(t,i,r),s=hn[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=yn[r],e[1]^=bn[r]}pt(n)}var ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn=o((()=>{sn(),Dt(),ln=BigInt(0),un=BigInt(1),dn=BigInt(2),fn=BigInt(7),pn=BigInt(256),mn=BigInt(113),hn=[],gn=[],_n=[];for(let e=0,t=un,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],hn.push(2*(5*r+n)),gn.push((e+1)*(e+2)/2%64);let i=ln;for(let e=0;e<7;e++)t=(t<<un^(t>>fn)*mn)%pn,t&dn&&(i^=un<<(un<<BigInt(e))-un);_n.push(i)}vn=Bt(_n,!0),yn=vn[0],bn=vn[1],xn=(e,t,n)=>n>32?Qt(e,t,n):Xt(e,t,n),Sn=(e,t,n)=>n>32?$t(e,t,n):Zt(e,t,n),Cn=class e extends Et{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,st(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ft(this.state)}clone(){return this._cloneInto()}keccak(){Tt(this.state32),cn(this.state32,this.rounds),Tt(this.state32),this.posOut=0,this.pos=0}update(e){ut(this),e=yt(e),ct(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ut(this,!1),ct(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return st(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dt(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,pt(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},wn=(e,t,n)=>xt(()=>new Cn(t,e,n)),wn(6,144,224/8),wn(6,136,256/8),wn(6,104,384/8),wn(6,72,512/8),wn(1,144,224/8),Tn=wn(1,136,256/8),wn(1,104,384/8),wn(1,72,512/8),En=(e,t,n)=>St((r={})=>new Cn(t,e,r.dkLen===void 0?n:r.dkLen,!0)),En(31,168,128/8),En(31,136,256/8)})),On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn=o((()=>{Rt(),sn(),Dt(),On=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kn=new Uint32Array(64),An=class extends Pt{constructor(e=32){super(64,e,8,!1),this.A=Ft[0]|0,this.B=Ft[1]|0,this.C=Ft[2]|0,this.D=Ft[3]|0,this.E=Ft[4]|0,this.F=Ft[5]|0,this.G=Ft[6]|0,this.H=Ft[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)kn[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=kn[e-15],n=kn[e-2],r=ht(t,7)^ht(t,18)^t>>>3;kn[e]=(ht(n,17)^ht(n,19)^n>>>10)+kn[e-7]+r+kn[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=ht(o,6)^ht(o,11)^ht(o,25),u=l+t+Mt(o,s,c)+On[e]+kn[e]|0,d=(ht(n,2)^ht(n,13)^ht(n,22))+Nt(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){pt(kn)}destroy(){this.set(0,0,0,0,0,0,0,0),pt(this.buffer)}},jn=Bt(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Mn=jn[0],Nn=jn[1],Pn=new Uint32Array(80),Fn=new Uint32Array(80),In=class extends Pt{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Pn[n]=e.getUint32(t),Fn[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Pn[e-15]|0,n=Fn[e-15]|0,r=Kt(t,n,1)^Kt(t,n,8)^Wt(t,n,7),i=qt(t,n,1)^qt(t,n,8)^Gt(t,n,7),a=Pn[e-2]|0,o=Fn[e-2]|0,s=Kt(a,o,19)^Jt(a,o,61)^Wt(a,o,6),c=qt(a,o,19)^Yt(a,o,61)^Gt(a,o,6),l=nn(i,c,Fn[e-7],Fn[e-16]);Pn[e]=rn(l,r,s,Pn[e-7],Pn[e-16])|0,Fn[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=Kt(u,d,14)^Kt(u,d,18)^Jt(u,d,41),v=qt(u,d,14)^qt(u,d,18)^Yt(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=an(_,v,b,Nn[e],Fn[e]),S=on(x,g,t,y,Mn[e],Pn[e]),ee=x|0,C=Kt(n,r,28)^Jt(n,r,34)^Jt(n,r,39),w=qt(n,r,28)^Yt(n,r,34)^Yt(n,r,39),te=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=Vt(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let re=en(ee,w,ne);n=tn(re,S,C,te),r=re|0}({h:n,l:r}=Vt(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=Vt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=Vt(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=Vt(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=Vt(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=Vt(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=Vt(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=Vt(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){pt(Pn,Fn)}destroy(){pt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ln=class extends In{constructor(){super(48),this.Ah=It[0]|0,this.Al=It[1]|0,this.Bh=It[2]|0,this.Bl=It[3]|0,this.Ch=It[4]|0,this.Cl=It[5]|0,this.Dh=It[6]|0,this.Dl=It[7]|0,this.Eh=It[8]|0,this.El=It[9]|0,this.Fh=It[10]|0,this.Fl=It[11]|0,this.Gh=It[12]|0,this.Gl=It[13]|0,this.Hh=It[14]|0,this.Hl=It[15]|0}},Rn=xt(()=>new An),zn=xt(()=>new In),Bn=xt(()=>new Ln)}));Vn();let Hn=Rn;function Un(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Wn(e){if(!Un(e))throw Error(`Uint8Array expected`)}function Gn(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Kn(e){let t=e.toString(16);return t.length&1?`0`+t:t}function qn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?dr:BigInt(`0x`+e)}function Jn(e){if(Wn(e),pr)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=mr[e[n]];return t}function Yn(e){if(e>=hr._0&&e<=hr._9)return e-hr._0;if(e>=hr.A&&e<=hr.F)return e-(hr.A-10);if(e>=hr.a&&e<=hr.f)return e-(hr.a-10)}function Xn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(pr)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Yn(e.charCodeAt(i)),a=Yn(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Zn(e){return qn(Jn(e))}function Qn(e){return Wn(e),qn(Jn(Uint8Array.from(e).reverse()))}function $n(e,t){return Xn(e.toString(16).padStart(t*2,`0`))}function er(e,t){return $n(e,t).reverse()}function tr(e,t,n){let r;if(typeof t==`string`)try{r=Xn(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Un(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function nr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Wn(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function rr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function ir(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ar(e,t,n){return gr(e)&&gr(t)&&gr(n)&&t<=e&&e<n}function or(e,t,n,r){if(!ar(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function sr(e){let t;for(t=0;e>dr;e>>=fr,t+=1);return t}function cr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=vr(e),i=vr(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=vr(0))=>{i=s(yr([0]),e),r=s(),e.length!==0&&(i=s(yr([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return nr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function lr(e,t,n={}){let r=(t,n,r)=>{let i=br[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function ur(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr=o((()=>{dr=BigInt(0),fr=BigInt(1),pr=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,mr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hr={_0:48,_9:57,A:65,F:70,a:97,f:102},gr=e=>typeof e==`bigint`&&dr<=e,_r=e=>(fr<<BigInt(e))-fr,vr=e=>new Uint8Array(e),yr=e=>Uint8Array.from(e),br={bigint:e=>typeof e==`bigint`,function:e=>typeof e==`function`,boolean:e=>typeof e==`boolean`,string:e=>typeof e==`string`,stringOrUint8Array:e=>typeof e==`string`||Un(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e==`function`&&Number.isSafeInteger(e.outputLen)}}));function Sr(e,t){if(yi(e)>t)throw new Mi({givenSize:yi(e),maxSize:t})}function Cr(e,t){if(typeof t==`number`&&t>0&&t>yi(e)-1)throw new Ni({offset:t,position:`start`,size:yi(e)})}function wr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&yi(e)!==n-t)throw new Ni({offset:n,position:`end`,size:yi(e)})}function Tr(e){if(e>=Or.zero&&e<=Or.nine)return e-Or.zero;if(e>=Or.A&&e<=Or.F)return e-(Or.A-10);if(e>=Or.a&&e<=Or.f)return e-(Or.a-10)}function Er(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Pi({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function Dr(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var Or,kr=o((()=>{Fi(),Or={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ar(e,t){if(Jr(e)>t)throw new si({givenSize:Jr(e),maxSize:t})}function jr(e,t){if(typeof t==`number`&&t>0&&t>Jr(e)-1)throw new ci({offset:t,position:`start`,size:Jr(e)})}function Mr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Jr(e)!==n-t)throw new ci({offset:n,position:`end`,size:Jr(e)})}function Nr(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new li({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Pr(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var Fr=o((()=>{A()}));function Ir(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>Ir(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${Ir(r)}`),t},[]).join(`,`)}}`}function Lr(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(zr)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Rr(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+zr:n,n)}var zr,Br=o((()=>{zr=`#__bigint`}));function Vr(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new ii(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new ai(e)}function E(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function Hr(e){return e instanceof Uint8Array?D(e):Array.isArray(e)?D(new Uint8Array(e)):e}function Ur(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ar(n,t.size),Gr(n,t.size)):n}function D(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=ni[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ar(r,t.size),Kr(r,t.size)):r}function O(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ri({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Gr(s,r):s}function Wr(e,t={}){return D(ti.encode(e),t)}function Gr(e,t){return Nr(e,{dir:`left`,size:t})}function Kr(e,t){return Nr(e,{dir:`right`,size:t})}function qr(e){return D(vi(e))}function k(e,t,n,r={}){let{strict:i}=r;jr(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Mr(a,t,n),a}function Jr(e){return Math.ceil((e.length-2)/2)}function Yr(e){return Pr(e,{dir:`left`})}function Xr(e,t={}){let{signed:n}=t;t.size&&Ar(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Zr(e,t={}){return mi(e,t)}function Qr(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:Xr(e,t))}function $r(e,t={}){let{size:n}=t,r=mi(e);return n&&(Sr(r,n),r=Ei(r)),new TextDecoder().decode(r)}function ei(e,t={}){let{strict:n=!1}=t;try{return Vr(e,{strict:n}),!0}catch{return!1}}var ti,ni,ri,ii,ai,oi,si,ci,li,A=o((()=>{Fi(),rt(),kr(),Fr(),Br(),ti=new TextEncoder,ni=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ri=class extends T{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},ii=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Rr(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},ai=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},oi=class extends T{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},si=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},ci=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},li=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function ui(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new ji(e)}function di(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function fi(e){return e instanceof Uint8Array?e:typeof e==`string`?mi(e):pi(e)}function pi(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function mi(e,t={}){let{size:n}=t,r=e;n&&(Ar(e,n),r=Kr(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=Tr(i.charCodeAt(t++)),r=Tr(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new T(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function hi(e,t={}){let{size:n}=t,r=ki.encode(e);return typeof n==`number`?(Sr(r,n),_i(r,n)):r}function gi(e,t){return rr(e,t)}function _i(e,t){return Er(e,{dir:`right`,size:t})}function vi(e){return crypto.getRandomValues(new Uint8Array(e))}function yi(e){return e.length}function bi(e,t,n,r={}){let{strict:i}=r;Cr(e,t);let a=e.slice(t,n);return i&&wr(a,t,n),a}function xi(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Xr(D(e,t),t)}function Si(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(Sr(r,n),r=Ti(r)),r.length>1||r[0]>1)throw new Ai(r);return!!r[0]}function Ci(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Qr(D(e,t),t)}function wi(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(Sr(r,n),r=Ei(r)),Oi.decode(r)}function Ti(e){return Dr(e,{dir:`left`})}function Ei(e){return Dr(e,{dir:`right`})}function Di(e){try{return ui(e),!0}catch{return!1}}var Oi,ki,Ai,ji,Mi,Ni,Pi,Fi=o((()=>{xr(),rt(),A(),kr(),Fr(),Br(),Oi=new TextDecoder,ki=new TextEncoder,Ai=class extends T{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},ji=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Rr(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},Mi=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Ni=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Pi=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));At(),Dn(),Fi(),A();function Ii(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(fi(e));return n===`Bytes`?r:D(r)}function Li(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=kt(Hn,fi(e),fi(t));return r===`Bytes`?i:D(i)}function Ri(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(fi(e));return n===`Bytes`?r:D(r)}function zi(e){return ei(e)&&Jr(e)===32}let Bi={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;Fi(),rt(),A(),Br();function Vi(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new Ji({prefix:r,cause:new Xi});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Ji({prefix:r,cause:new Yi});return}throw new qi({publicKey:e})}function Hi(e){let t=(()=>{if(ei(e))return Wi(e);if(Di(e))return Ui(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return Vi(t),t}function Ui(e){return Wi(D(e))}function Wi(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Zi({publicKey:e});return e.length===130?{prefix:4,x:BigInt(k(e,0,32)),y:BigInt(k(e,32,64))}:e.length===132?{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33)),y:BigInt(k(e,33,65))}:{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33))}}function Gi(e,t={}){return mi(Ki(e,t))}function Ki(e,t={}){Vi(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return E(a?O(n,{size:1}):`0x`,O(r,{size:32}),typeof i==`bigint`?O(i,{size:32}):`0x`)}var qi=class extends T{constructor({publicKey:e}){super(`Value \\`${Rr(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},Ji=class extends T{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},Yi=class extends T{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},Xi=class extends T{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Zi=class extends T{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Jr(Hr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Fi(),rt();let Qi=/^0x[a-fA-F0-9]{40}$/;function $i(e,t={}){let{strict:n=!0}=t;if(!Qi.test(e))throw new aa({address:e,cause:new oa});if(n){if(e.toLowerCase()===e)return;if(ea(e)!==e)throw new aa({address:e,cause:new sa})}}function ea(e){if(Bi.has(e))return Bi.get(e);$i(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ii(hi(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Bi.set(e,i),i}function ta(e,t={}){let{checksum:n=!1}=t;return $i(e),n?ea(e):e}function na(e,t={}){return ta(`0x${Ii(`0x${Ki(e).slice(4)}`).substring(26)}`,t)}function ra(e,t){return $i(e,{strict:!1}),$i(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function ia(e,t={}){let{strict:n=!0}=t??{};try{return $i(e,{strict:n}),!0}catch{return!1}}var aa=class extends T{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},oa=class extends T{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},sa=class extends T{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};rt();function ca(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new T(`Unable to normalize signature.`);return i}function la(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return ia(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>la(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>la(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ua(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ua(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&ia(n[r],{strict:!1}))return o}}rt(),A();function da(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=ei(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?fa(e)===k(t,0,4):e.type===`event`?ma(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ga({name:t});if(o.length===1)return{...o[0],...i?{hash:ma(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:ma(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?la(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ua(e.inputs,s.inputs,r);if(t)throw new ha({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new ga({name:t});return{...c,...i?{hash:ma(c)}:{}}}function fa(...e){return k(ma((()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})()),0,4)}function pa(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})();return ca(typeof t==`string`?t:ye(t))}function ma(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Ii(Wr(pa(t)))}var ha=class extends T{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ca(ye(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${ca(ye(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},ga=class extends T{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let _a=/^(.*)\\[([0-9]*)\\]$/,va=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ya=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let ba=2n**256n-1n;Fi(),rt(),A();function xa(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=za(t.type);if(a){let[n,o]=a;return Ca(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return Da(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return Sa(e,{checksum:r});if(t.type===`bool`)return wa(e);if(t.type.startsWith(`bytes`))return Ta(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Ea(e,t);if(t.type===`string`)return Oa(e,{staticPosition:i});throw new no(t.type)}function Sa(e,t={}){let{checksum:n=!1}=t;return[(e=>n?ea(e):e)(D(bi(e.readBytes(32),-20))),32]}function Ca(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Ci(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Ci(e.readBytes(32)),s=Ba(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=xa(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ba(t)){let n=a+Ci(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=xa(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=xa(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function wa(e){return[Si(e.readBytes(32),{size:32}),32]}function Ta(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Ci(e.readBytes(32));e.setPosition(n+t);let r=Ci(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[D(i),32]}return[D(e.readBytes(Number.parseInt(i,10),32)),32]}function Ea(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?xi(i,{signed:n}):Ci(i,{signed:n}),32]}function Da(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(Ba(t)){let n=i+Ci(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=xa(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=xa(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function Oa(e,{staticPosition:t}){let n=t+Ci(e.readBytes(32));e.setPosition(n);let r=Ci(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=wi(Ti(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function ka({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(Aa({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function Aa({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=za(r.type);if(i){let[t,a]=i;return Na(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Ra(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return Ma(n,{checksum:e});if(r.type===`bool`)return Fa(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=ya.exec(r.type)??[];return Ia(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return Pa(n,{type:r.type});if(r.type===`string`)return La(n);throw new no(r.type)}function ja(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Jr(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(O(t+i,{size:32})),r.push(s),i+=Jr(s)):n.push(s)}return E(...n,...r)}function Ma(e,t){let{checksum:n=!1}=t;return $i(e,{strict:n}),{dynamic:!1,encoded:Gr(e.toLowerCase())}}function Na(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new to(e);if(!a&&e.length!==r)throw new Qa({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=Aa({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ja(s);if(a){let t=O(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?E(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:E(...s.map(({encoded:e})=>e))}}function Pa(e,{type:t}){let[,n]=t.split(`bytes`),r=Jr(e);if(!n){let t=e;return r%32!=0&&(t=Kr(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:E(Gr(O(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new $a({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Kr(e)}}function Fa(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Gr(Ur(e))}}function Ia(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new ri({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:O(e,{size:32,signed:t})}}function La(e){let t=Wr(e),n=Math.ceil(Jr(t)/32),r=[];for(let e=0;e<n;e++)r.push(Kr(k(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:E(Kr(O(Jr(t),{size:32})),...r)}}function Ra(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=Aa({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ja(a):E(...a.map(({encoded:e})=>e))}}function za(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ba(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ba);let n=za(e.type);return!!(n&&Ba({...e,type:n[1]}))}rt();let Va={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Ga({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Wa({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ua({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Ua({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Ha(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Va);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Ua=class extends T{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Wa=class extends T{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Ga=class extends T{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Fi(),rt(),A();function Ka(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?mi(t):t,o=Ha(a);if(yi(a)===0&&e.length>0)throw new Za;if(yi(a)&&yi(a)<32)throw new Xa({data:typeof t==`string`?t:D(t),parameters:e,size:yi(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=xa(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function qa(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new eo({expectedLength:e.length,givenLength:t.length});let i=ja(ka({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ja(e,t){if(e.length!==t.length)throw new eo({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(Ja.encode(i,a))}return E(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return $i(e),Gr(e.toLowerCase(),r?32:0)}if(e===`string`)return Wr(n);if(e===`bytes`)return n;if(e===`bool`)return Gr(Ur(n),r?32:1);let i=e.match(ya);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return O(n,{size:r?32:o,signed:t===`int`})}let a=e.match(va);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new $a({expectedSize:Number.parseInt(t,10),value:n});return Kr(n,r?32:0)}let o=e.match(_a);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:E(...i)}throw new no(e)}e.encode=t})(Ja||={});function Ya(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Ze(e):e}var Xa=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${ve(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Za=class extends T{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Qa=class extends T{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},$a=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Jr(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},eo=class extends T{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},to=class extends T{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},no=class extends T{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function ro(e){return fa(e)}rt(),A();function io(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&$i(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>zi(e)?e:Yr(e))})}return t}function ao(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Jr(r[e])!==32)throw new oo({storageKey:r[e]});n&&$i(n,{strict:!1}),t.push([n,r])}return t}var oo=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Jr(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};Fi(),rt(),A();function so(e){return co(e,`Hex`)}function co(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return lo(Ha((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new oi(e);return mi(e)}return e})(),{recursiveReadLimit:1/0}),n)}function lo(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?D(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=uo(e,n,128),i=e.readBytes(r);return t===`Hex`?D(i):i}return fo(e,uo(e,n,192),t)}function uo(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new T(`Invalid RLP prefix`)}function fo(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(lo(e,n));return i}function po(e,t){let{as:n}=t,r=ho(e),i=Ha(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}function mo(e,t={}){let{as:n=`Hex`}=t;return po(e,{as:n})}function ho(e){return Array.isArray(e)?go(e.map(e=>ho(e))):_o(e)}function go(e){let t=e.reduce((e,t)=>e+t.length,0),n=vo(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function _o(e){let t=typeof e==`string`?mi(e):e,n=vo(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function vo(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new T(`Length is too large.`)}function yo(e,t){let n=e%t;return n>=Fo?n:t+n}function bo(e,t,n){let r=e;for(;t-- >Fo;)r*=r,r%=n;return r}function xo(e,t){if(e===Fo)throw Error(`invert: expected non-zero number`);if(t<=Fo)throw Error(`invert: expected positive modulus, got `+t);let n=yo(e,t),r=t,i=Fo,a=Io,o=Io,s=Fo;for(;n!==Fo;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==Io)throw Error(`invert: does not exist`);return yo(i,t)}function So(e,t){let n=(e.ORDER+Io)/zo,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function Co(e,t){let n=(e.ORDER-Bo)/Vo,r=e.mul(t,Lo),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Lo),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function wo(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Io,n=0;for(;t%Lo===Fo;)t/=Lo,n++;let r=Lo,i=jo(e);for(;ko(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return So;let a=i.pow(r,t),o=(t+Io)/Lo;return function(e,r){if(e.is0(r))return r;if(ko(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=Io<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function To(e){return e%zo===Ro?So:e%Vo===Bo?Co:wo(e)}function Eo(e){return lr(e,Ho.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Do(e,t,n){if(n<Fo)throw Error(`invalid exponent, negatives unsupported`);if(n===Fo)return e.ONE;if(n===Io)return t;let r=e.ONE,i=t;for(;n>Fo;)n&Io&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Io;return r}function Oo(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function ko(e,t){let n=(e.ORDER-Io)/Lo,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function Ao(e,t){t!==void 0&&st(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function jo(e,t,n=!1,r={}){if(e<=Fo)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Ao(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:_r(i),ZERO:Fo,ONE:Io,create:t=>yo(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Fo<=t&&t<e},is0:e=>e===Fo,isOdd:e=>(e&Io)===Io,neg:t=>yo(-t,e),eql:(e,t)=>e===t,sqr:t=>yo(t*t,e),add:(t,n)=>yo(t+n,e),sub:(t,n)=>yo(t-n,e),mul:(t,n)=>yo(t*n,e),pow:(e,t)=>Do(s,e,t),div:(t,n)=>yo(t*xo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>xo(t,e),sqrt:r.sqrt||(t=>(o||=To(e),o(s,t))),toBytes:e=>n?er(e,a):$n(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Qn(e):Zn(e)},invertBatch:e=>Oo(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Mo(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function No(e){let t=Mo(e);return t+Math.ceil(t/2)}function Po(e,t,n=!1){let r=e.length,i=Mo(t),a=No(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=yo(n?Qn(e):Zn(e),t-Io)+Io;return n?er(o,i):$n(o,i)}var Fo,Io,Lo,Ro,zo,Bo,Vo,Ho,Uo=o((()=>{Dt(),xr(),Fo=BigInt(0),Io=BigInt(1),Lo=BigInt(2),Ro=BigInt(3),zo=BigInt(4),Bo=BigInt(5),Vo=BigInt(8),Ho=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Wo(e,t){let n=t.negate();return e?n:t}function Go(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Ko(e,t){Go(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:_r(e),maxNumber:i,shiftBy:BigInt(e)}}function qo(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=ts);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function Jo(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function Yo(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function Xo(e){return rs.get(e)||1}function Zo(e,t){return{constTimeNegate:Wo,hasPrecomputes(e){return Xo(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>es;)n&ts&&(r=r.add(i)),i=i.double(),n>>=ts;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Ko(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Ko(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=qo(i,e,s);i=t,c?o=o.add(Wo(u,r[d])):a=a.add(Wo(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Ko(n,t);for(let e=0;e<o.windows&&i!==es;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=qo(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=ns.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&ns.set(t,n(r))),r},wNAFCached(e,t,n){let r=Xo(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Xo(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Go(n,t),rs.set(e,n),ns.delete(e)}}}function Qo(e,t,n,r){Jo(n,e),Yo(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=sr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=_r(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function $o(e){return Eo(e.Fp),lr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Ao(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var es,ts,ns,rs,is=o((()=>{Uo(),xr(),es=BigInt(0),ts=BigInt(1),ns=new WeakMap,rs=new WeakMap}));function as(e){e.lowS!==void 0&&Gn(`lowS`,e.lowS),e.prehash!==void 0&&Gn(`prehash`,e.prehash)}function os(e){let t=$o(e);lr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function ss(e,t){return Jn($n(e,t))}function cs(e){let t=os(e),{Fp:n}=t,r=jo(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return nr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,_s),vs),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return ar(e,j,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Un(e)&&(e=Jn(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Zn(tr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=yo(o,a)),or(`private key`,o,j,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=ur((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=ur(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Oo(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(tr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Qo(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,_s),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,_s),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;or(`scalar`,e,hs,i);let a=h.ZERO;if(e===hs)return a;if(this.is0()||e===j)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>hs||l>hs;)s&j&&(u=u.add(f)),l&j&&(d=d.add(f)),f=f.double(),s>>=j,l>>=j;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;or(`scalar`,e,j,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===hs||t===j||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===j)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===j?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Gn(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Gn(`isCompressed`,e),Jn(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=Zo(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function ls(e){let t=$o(e);return lr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function us(e){let t=ls(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return yo(e,r)}function l(e){return xo(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=cs({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=nr;return Gn(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Zn(i);if(!ar(e,j,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&j)===j;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>j}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Zn(e.slice(t,n));class _{constructor(e,t,n){or(`r`,e,j,r),or(`s`,t,j,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=tr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=ms.toSig(tr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(tr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+ss(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return ms.hexFromSig(this)}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){let e=i;return ss(this.r,e)+ss(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=No(t.n);return Po(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=tr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Zn(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=_r(a);function w(e){return or(`num < 2^`+a,e,hs,C),$n(e,i)}function te(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=tr(`msgHash`,e),as(i),f&&(e=tr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[w(y),w(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(tr(`extraEntropy`,e))}let x=nr(...b),C=v;function te(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===hs)return;let a=c(n*c(C+i*y));if(a===hs)return;let o=(r.x===i?0:2)|Number(r.y&j),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:te}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=te(e,n,r),o=t;return cr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=tr(`msgHash`,n),r=tr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(as(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Un(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof ms.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),C=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return C?c(C.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function ds(e,t){let n=e.ORDER,r=hs;for(let e=n-j;e%gs===hs;e/=gs)r+=j;let i=r,a=gs<<i-j-j,o=a*gs,s=(n-j)/o,c=(s-j)/gs,l=o-j,u=a,d=e.pow(t,s),f=e.pow(t,(s+j)/gs),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>j;t--){let n=t-gs;n=gs<<n-j;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%vs===_s){let n=(e.ORDER-_s)/vs,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function fs(e,t){if(Eo(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=ds(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=Oo(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var ps,ms,hs,j,gs,_s,vs,ys=o((()=>{is(),Uo(),xr(),ps=class extends Error{constructor(e=``){super(e)}},ms={Err:ps,_tlv:{encode:(e,t)=>{let{Err:n}=ms;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Kn(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Kn(i.length/2|128):``;return Kn(e)+a+i+t},decode(e,t){let{Err:n}=ms,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=ms;if(e<hs)throw new t(`integer: negative integers are not allowed`);let n=Kn(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=ms;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Zn(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=ms,i=tr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=ms,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},hs=BigInt(0),j=BigInt(1),gs=BigInt(2),_s=BigInt(3),vs=BigInt(4)}));function bs(e){return{hash:e,hmac:(t,...n)=>kt(e,t,bt(...n)),randomBytes:Ct}}function xs(e,t){let n=t=>us({...e,...bs(t)});return{...n(t),create:n}}var Ss=o((()=>{At(),Dt(),ys()}));function Cs(e,t){if(Ts(e),Ts(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function ws(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function Ts(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Es(e,t,n,r){Wn(e),Wn(t),Ts(n),t.length>255&&(t=r(nr(ir(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=nr(t,Cs(t.length,1)),c=Cs(0,a),l=Cs(n,2),u=Array(o),d=r(nr(c,e,l,Cs(0,1),s));u[0]=r(nr(d,Cs(1,1),s));for(let e=1;e<=o;e++)u[e]=r(nr(ws(d,u[e-1]),Cs(e+1,1),s));return nr(...u).slice(0,n)}function Ds(e,t,n,r,i){if(Wn(e),Wn(t),Ts(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(ir(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(Cs(n,2)).update(t).update(Cs(t.length,1)).digest()}function Os(e,t,n){lr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Wn(e),Ts(t);let l=typeof c==`string`?ir(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Es(e,l,f,o);else if(s===`xof`)p=Ds(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=yo(js(p.subarray(i,i+d)),r)}m[e]=t}return m}function ks(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=Oo(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function As(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=Os(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(Os(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var js,Ms=o((()=>{Uo(),xr(),js=Zn})),Ns=c({encodeToCurve:()=>lc,hashToCurve:()=>cc,schnorr:()=>ic,secp256k1:()=>Ys,secp256k1_hasher:()=>sc});function Ps(e){let t=Hs,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=bo(bo(bo(u,n,t)*u%t,n,t)*u%t,Ks,t)*l%t,f=bo(d,i,t)*d%t,p=bo(f,a,t)*f%t,m=bo(p,s,t)*p%t,h=bo(bo(bo(bo(bo(bo(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Ks,t);if(!Js.eql(Js.sqr(h),e))throw Error(`Cannot find square root`);return h}function Fs(e,...t){let n=Xs[e];if(n===void 0){let t=Rn(Uint8Array.from(e,e=>e.charCodeAt(0)));n=nr(t,t),Xs[e]=n}return Rn(nr(n,...t))}function Is(e){let t=Ys.utils.normPrivateKeyToScalar(e),n=tc.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:ec(-t),bytes:Zs(n)}}function Ls(e){or(`x`,e,Gs,Hs);let t=Ps($s($s(e*e)*e+BigInt(7)));t%Ks!==Ws&&(t=$s(-t));let n=new tc(e,t,Gs);return n.assertValidity(),n}function Rs(...e){return ec(rc(Fs(`BIP0340/challenge`,...e)))}function zs(e){return Is(e).bytes}function Bs(e,t,n=Ct(32)){let r=tr(`message`,e),{bytes:i,scalar:a}=Is(t),o=ec(rc(Fs(`BIP0340/nonce`,Qs(a^rc(Fs(`BIP0340/aux`,tr(`auxRand`,n,32)))),i,r)));if(o===Ws)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Is(o),l=Rs(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Qs(ec(c+l*a)),32),!Vs(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Vs(e,t,n){let r=tr(`signature`,e,64),i=tr(`message`,t),a=tr(`publicKey`,n,32);try{let e=Ls(rc(a)),t=rc(r.subarray(0,32));if(!ar(t,Gs,Hs))return!1;let n=rc(r.subarray(32,64));if(!ar(n,Gs,Us))return!1;let o=nc(e,n,ec(-Rs(Qs(t),Zs(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs,Zs,Qs,$s,ec,tc,nc,rc,ic,ac,oc,sc,cc,lc,uc=o((()=>{Vn(),Dt(),Ss(),Ms(),Uo(),xr(),ys(),Hs=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Us=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Ws=BigInt(0),Gs=BigInt(1),Ks=BigInt(2),qs=(e,t)=>(e+t/Ks)/t,Js=jo(Hs,void 0,void 0,{sqrt:Ps}),Ys=xs({a:Ws,b:BigInt(7),Fp:Js,n:Us,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Us,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Gs*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=qs(a*e,t),c=qs(-r*e,t),l=yo(e-s*n-c*i,t),u=yo(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Rn),Xs={},Zs=e=>e.toRawBytes(!0).slice(1),Qs=e=>$n(e,32),$s=e=>yo(e,Hs),ec=e=>yo(e,Us),tc=Ys.ProjectivePoint,nc=(e,t,n)=>tc.BASE.multiplyAndAddUnsafe(e,t,n),rc=Zn,ic={getPublicKey:zs,sign:Bs,verify:Vs,utils:{randomPrivateKey:Ys.utils.randomPrivateKey,lift_x:Ls,pointToBytes:Zs,numberToBytesBE:$n,bytesToNumberBE:Zn,taggedHash:Fs,mod:yo}},ac=ks(Js,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),oc=fs(Js,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:Js.create(BigInt(`-11`))}),sc=As(Ys.ProjectivePoint,e=>{let{x:t,y:n}=oc(Js.create(e[0]));return ac(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:Js.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),cc=sc.hashToCurve,lc=sc.encodeToCurve}));rt(),A(),Br();function dc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Tc({signature:e});if(e.r<0n||e.r>ba)throw new Ec({value:e.r});if(e.s<0n||e.s>ba)throw new Dc({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Oc({value:e.yParity})}function fc(e){return pc(D(e))}function pc(e){if(e.length!==130&&e.length!==132)throw new wc({signature:e});let t=BigInt(k(e,0,32)),n=BigInt(k(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return Sc(t)}catch{throw new Oc({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function mc(e){if(e.r!==void 0&&e.s!==void 0)return hc(e)}function hc(e){let t=typeof e==`string`?pc(e):e instanceof Uint8Array?fc(e):typeof e.r==`string`?_c(e):e.v?gc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return dc(t),t}function gc(e){return{r:e.r,s:e.s,yParity:Sc(e.v)}}function _c(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=Sc(t)),typeof n!=`number`)throw new Oc({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function vc(e){let[t,n,r]=e;return hc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function yc(e){dc(e);let t=e.r,n=e.s;return E(O(t,{size:32}),O(n,{size:32}),typeof e.yParity==`number`?O(Cc(e.yParity),{size:1}):`0x`)}function bc(e){let{r:t,s:n,yParity:r}=e;return{r:O(t,{size:32}),s:O(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function xc(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Yr(O(t)),n===0n?`0x`:Yr(O(n))]}function Sc(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new kc({value:e})}function Cc(e){if(e===0)return 27;if(e===1)return 28;throw new Oc({value:e})}var wc=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Jr(Hr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Tc=class extends T{constructor({signature:e}){super(`Signature \\`${Rr(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Ec=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Dc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Oc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},kc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};A();function Ac(e,t={}){return typeof e.chainId==`string`?jc(e):{...e,...t.signature}}function jc(e){let{address:t,chainId:n,nonce:r}=e,i=mc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Mc(e){return e.map(jc)}function Nc(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:O(n),nonce:O(r),...bc(i)}}function Pc(e){return e.map(Nc)}Fi();let Fc=new TextEncoder,Ic=new TextDecoder,Lc=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Rc={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function zc(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=Lc[r>>18],i[t+1]=Lc[r>>12&63],i[t+2]=Lc[r>>6&63],i[t+3]=Lc[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Ic.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function Bc(e,t={}){return zc(mi(e),t)}function Vc(e,t={}){return zc(hi(e),t)}function Hc(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Fc.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Rc[r[e]]<<18)+(Rc[r[e+1]]<<12)+(Rc[r[e+2]]<<6)+Rc[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function Uc(e){return wi(Hc(e))}let Wc={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Gc={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Kc(e,t={}){if(!e)return null;let n=mc(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=Mc(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Gc[e.type]??e.type),n&&(r.v=Cc(n.yParity)),r}function qc(e){return{address:e.address,amount:O(e.amount),index:O(e.index),validatorIndex:O(e.validatorIndex)}}var Jc=o((()=>{A()}));function Yc(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:O(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:O(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:O(e.gasLimit)},...typeof e.number==`bigint`&&{number:O(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:O(e.prevRandao)},...typeof e.time==`bigint`&&{time:O(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(qc)}}}var Xc=o((()=>{A(),Jc()}));Fi(),rt(),A();function Zc(e,t={}){let{as:n=`Hex`}=t,r=dl(e),i=Ha(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}var Qc=class extends T{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},$c=class extends T{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},el=class extends T{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},tl=class extends T{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},nl=class extends T{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},rl=class extends T{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},il=class extends T{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},al=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},ol=class extends T{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},sl=class extends T{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},cl=class extends T{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},ll=class extends T{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},ul=class extends T{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function dl(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return dl.number(e);if(typeof e==`bigint`)throw new il;if(typeof e==`string`)return dl.string(e);if(Array.isArray(e))return dl.array(e);if(e instanceof Uint8Array)return dl.byteString(e);if(e instanceof ArrayBuffer)return dl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return dl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return dl.map(e);if(typeof e==`object`)return dl.object(e);throw new al({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new ol({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new ol({number:e.toString(10)})}e.number=t;function n(e){let t=hi(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new sl({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new cl({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new ul({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new ll({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new ll({size:i})}e.map=o})(dl||={});function fl(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return fl.readUnsignedInteger(e,r);case 1:return fl.readNegativeInteger(e,r);case 2:return fl.readByteString(e,r);case 3:return fl.readTextString(e,r);case 4:return fl.readArray(e,r);case 5:return fl.readMap(e,r);case 6:throw new tl({tag:r});case 7:return fl.readSimpleOrFloat(e,r);default:throw new Qc({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new el:new $c({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new nl({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new nl({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return wi(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new rl({value:t});return}throw new $c({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(fl||={}),rt();function pl(e){let t=Gi(e),n=t.slice(1,33),r=t.slice(33,65);return Zc(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}uc(),Fi(),A();function ml(e){let{privateKey:t}=e;return Hi(Ys.ProjectivePoint.fromPrivateKey(Hr(t).slice(2)))}function hl(e){return na(gl(e))}function gl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Hi(new Ys.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(Hr(t).substring(2)))}function _l(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Ys.sign(fi(r),fi(i),{extraEntropy:typeof t==`boolean`?t:Hr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function vl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?ra(t,hl({payload:r,signature:a})):Ys.verify(a,fi(r),Gi(i),...n?[{prehash:!0,lowS:!0}]:[])}Vn(),Ss(),Ms(),Uo(),ys();let yl=jo(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),bl=yl.create(BigInt(`-3`)),xl=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Sl=xs({a:bl,b:xl,Fp:yl,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Rn),Cl=Sl,wl=fs(yl,{A:bl,B:xl,Z:yl.create(BigInt(`-10`))}),Tl=As(Cl.ProjectivePoint,e=>wl(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:yl.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),El=jo(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Dl=El.create(BigInt(`-3`)),Ol=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),kl=xs({a:Dl,b:Ol,Fp:El,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Bn),Al=fs(El,{A:Dl,B:Ol,Z:El.create(BigInt(`-12`))});As(kl.ProjectivePoint,e=>Al(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:El.ORDER,m:1,k:192,expand:`xmd`,hash:Bn});let jl=jo(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Ml=jl.create(BigInt(`-3`)),Nl=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Pl=xs({a:Ml,b:Nl,Fp:jl,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},zn),Fl=fs(jl,{A:Ml,B:Nl,Z:jl.create(BigInt(`-4`))});As(Pl.ProjectivePoint,e=>Fl(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:jl.ORDER,m:1,k:256,expand:`xmd`,hash:zn});let Il=Sl,Ll=Sl;Tl.hashToCurve,Tl.encodeToCurve,Fi(),A();function Rl(e){let{privateKey:t}=e;return Hi(Ll.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):D(t).slice(2)))}function zl(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Ll.sign(r instanceof Uint8Array?r:mi(r),i instanceof Uint8Array?i:mi(i),{extraEntropy:typeof t==`boolean`?t:Hr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Bl(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Ll.verify(i,n instanceof Uint8Array?n:mi(n),Ki(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Vl=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function Hl(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Ul(r.error);return r.result}function Ul(e){let t=e;if(t instanceof Error&&!(`code`in t))return new tu({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===tu.code?new tu(t):n===Gl.code?new Gl(t):n===eu.code?new eu(t):n===Ql.code?new Ql(t):n===Xl.code?new Xl(t):n===$l.code?new $l(t):n===Yl.code?new Yl(t):n===nu.code?new nu(t):n===Kl.code?new Kl(t):n===ql.code?new ql(t):n===Jl.code?new Jl(t):n===Zl.code?new Zl(t):new tu({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Wl=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},Gl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(Gl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Kl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(Kl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var ql=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Jl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(Jl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Yl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(Yl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var Xl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(Xl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Zl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(Zl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Ql=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(Ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var $l=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty($l,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var eu=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(eu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var tu=class e extends Wl{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var nu=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty(nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),rt();var ru=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},iu=class extends ru{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var au=class extends ru{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var ou=class extends ru{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var su=class extends ru{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(su,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var cu=class extends ru{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(cu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var lu=class extends ru{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var uu=class extends ru{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var du=class extends ru{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty(du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var fu=class extends ru{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var pu=class extends ru{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var mu=class extends ru{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(mu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var hu=class extends ru{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(hu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var gu=class extends ru{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(gu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function _u(){let e=new Vl.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function vu(e,t={}){if(!e)throw new bu;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?Hl(n):n}catch(e){throw yu(e)}}}}function yu(e){let t=Ul(e);if(t instanceof tu){if(!t.data)return t;let{code:e}=t.data;if(e===su.code)return new su(t);if(e===cu.code)return new cu(t);if(e===iu.code)return new iu(t);if(e===au.code)return new au(t);if(e===ou.code)return new ou(t);if(e===lu.code)return new lu(t);if(e===hu.code)return new hu(t);if(e===gu.code)return new gu(t);if(e===mu.code)return new mu(t);if(e===pu.code)return new pu(t);if(e===fu.code)return new fu(t);if(e===du.code)return new du(t);if(e===uu.code)return new uu(t)}return t}var bu=class extends T{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function xu(e={}){let t=e.id??0;return{prepare(e){return Su({id:t++,...e})},get id(){return t}}}function Su(e){return{...e,jsonrpc:`2.0`}}function Cu(){return null}A();function wu(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Pc(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=O(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=O(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=O(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=O(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=O(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=O(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Wc[e.type]||e.type),e.value!==void 0&&(t.value=O(e.value)),t}rt();let Tu={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Eu(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function Du(e,t=`wei`){return Eu(e,Tu.gwei-Tu[t])}rt();var Ou=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Du(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},ku=class extends T{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},Au=class extends T{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},ju=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Du(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Du(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function Mu(e){let t=Il.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}A();function Nu(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=E(Ri(Wr(r)),O(n,{size:1}),O(i,{size:4}));if(!t)return a;let o=D(new Uint8Array(16)),s=D(t.id);return E(a,o,O(t.id.length,{size:2}),s,pl(t.publicKey))}function Pu(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:Bc(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Fi(),rt(),A();function Fu(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:Hc(e),type:`public-key`})):[{id:Hc(t),type:`public-key`}]}:{},challenge:mi(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Iu(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Nu({flag:i,rpId:o,signCount:s}),u=Pu({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ri(Wr(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:E(l,d)}}async function Lu(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Fu(n);try{let e=await t(r);if(!e)throw new Ru;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=Mu(o);return{id:s,metadata:{authenticatorData:D(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Ru({cause:e})}}var Ru=class extends T{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function zu(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=mi(s);if(u.length<37||a!==void 0&&!gi(u.slice(0,32),Ri(Wr(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||D(Hc(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Bl({hash:!0,payload:di(u,Ri(hi(c),{as:`Bytes`})),publicKey:i,signature:o})}let Bu=Iu;async function Vu(e){return Lu(e)}function Hu(e){return zu(e)}Fi();async function Uu(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=Hi(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Wu(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,fi(t)),i=pi(new Uint8Array(r)),a=xi(bi(i,0,32)),o=xi(bi(i,32,64));return o>Il.CURVE.n/2n&&(o=Il.CURVE.n-o),{r:a,s:o}}var Gu,Ku=o((()=>{Gu=`1.2.3`})),qu,Ju=o((()=>{Ku(),qu=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Gu}`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function Yu(e,t){return e.exec(t)?.groups}var Xu,Zu,Qu,$u=o((()=>{Xu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Zu=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Qu=/^\\(.+?\\).*?$/}));function ed(e){let t=e.type;if(td.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=ed(i),r<n-1&&(t+=`, `)}let r=Yu(td,e.type);return t+=`)${r?.array||``}`,ed({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var td,nd=o((()=>{$u(),td=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function rd(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ed(i),r!==n-1&&(t+=`, `)}return t}var id=o((()=>{nd()}));function ad(e){return e.type===`function`?`function ${e.name}(${rd(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${rd(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${rd(e.inputs)})`:e.type===`error`?`error ${e.name}(${rd(e.inputs)})`:e.type===`constructor`?`constructor(${rd(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var od=o((()=>{id()}));function sd(e){return bd.test(e)}function cd(e){return Yu(bd,e)}function ld(e){return xd.test(e)}function ud(e){return Yu(xd,e)}function dd(e){return Sd.test(e)}function fd(e){return Yu(Sd,e)}function pd(e){return Cd.test(e)}function md(e){return Yu(Cd,e)}function hd(e){return wd.test(e)}function gd(e){return Yu(wd,e)}function _d(e){return Td.test(e)}function vd(e){return Yu(Td,e)}function yd(e){return Ed.test(e)}var bd,xd,Sd,Cd,wd,Td,Ed,Dd,Od,kd=o((()=>{$u(),bd=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,xd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Sd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Cd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,wd=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Td=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Ed=/^receive\\(\\) external payable$/,Dd=new Set([`indexed`]),Od=new Set([`calldata`,`memory`,`storage`])})),Ad,jd,Md=o((()=>{Ju(),Ad=class extends qu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},jd=class extends qu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),Nd,Pd,Fd,Id,Ld,Rd=o((()=>{Ju(),Nd=class extends qu{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Pd=class extends qu{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Fd=class extends qu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Id=class extends qu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Ld=class extends qu{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),zd,Bd,Vd,Hd=o((()=>{Ju(),zd=class extends qu{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Bd=class extends qu{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},Vd=class extends qu{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),Ud,Wd=o((()=>{Ju(),Ud=class extends qu{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),Gd,Kd=o((()=>{Ju(),Gd=class extends qu{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function qd(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var Jd,Yd=o((()=>{Jd=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]])}));function Xd(e,t={}){if(dd(e))return Zd(e,t);if(ld(e))return Qd(e,t);if(sd(e))return $d(e,t);if(hd(e))return ef(e,t);if(_d(e))return tf(e);if(yd(e))return{type:`receive`,stateMutability:`payable`};throw new Bd({signature:e})}function Zd(e,t={}){let n=fd(e);if(!n)throw new zd({signature:e,type:`function`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{modifiers:Od,structs:t,type:`function`}));let o=[];if(n.returns){let e=rf(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(nf(e[n],{modifiers:Od,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function Qd(e,t={}){let n=ud(e);if(!n)throw new zd({signature:e,type:`event`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{modifiers:Dd,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function $d(e,t={}){let n=cd(e);if(!n)throw new zd({signature:e,type:`error`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function ef(e,t={}){let n=gd(e);if(!n)throw new zd({signature:e,type:`constructor`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function tf(e){let t=vd(e);if(!t)throw new zd({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function nf(e,t){let n=qd(e,t?.type,t?.structs);if(Jd.has(n))return Jd.get(n);let r=Qu.test(e),i=Yu(r?lf:cf,e);if(!i)throw new Nd({param:e});if(i.name&&of(i.name))throw new Pd({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=rf(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(nf(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(uf.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!af(c))throw new jd({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Fd({param:e,type:t?.type,modifier:i.modifier});if(Od.has(i.modifier)&&!sf(c,!!i.array))throw new Id({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Jd.set(n,u),u}function rf(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?rf(o,[...t,n.trim()]):rf(o,t,`${n}${i}`,r);case`(`:return rf(o,t,`${n}${i}`,r+1);case`)`:return rf(o,t,`${n}${i}`,r-1);default:return rf(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Gd({current:n,depth:r});return t.push(n.trim()),t}function af(e){return e===`address`||e===`bool`||e===`function`||e===`string`||Xu.test(e)||Zu.test(e)}function of(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||Xu.test(e)||Zu.test(e)||df.test(e)}function sf(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var cf,lf,uf,df,ff=o((()=>{$u(),Md(),Rd(),Hd(),Kd(),Yd(),kd(),cf=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,lf=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,uf=/^u?int$/,df=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function pf(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!pd(n))continue;let i=md(n);if(!i)throw new zd({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=nf(t,{type:`struct`});o.push(n)}if(!o.length)throw new Vd({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=mf(a,t)}return r}function mf(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Qu.test(i.type))r.push(i);else{let e=Yu(hf,i.type);if(!e?.type)throw new Ld({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Ud({type:o});r.push({...i,type:`tuple${a??``}`,components:mf(t[o],t,new Set([...n,o]))})}else if(af(o))r.push(i);else throw new Ad({type:o})}}return r}var hf,gf=o((()=>{$u(),Md(),Rd(),Hd(),Wd(),kd(),ff(),hf=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function _f(e){let t=pf(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];pd(r)||n.push(Xd(r,t))}return n}var vf=o((()=>{kd(),gf(),ff()})),yf=o((()=>{Ju(),od(),nd(),id(),vf(),Md(),kd(),gf(),ff(),Rd(),Hd(),Kd(),Wd()}));function M(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function bf(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new Qf(e.type);return`${e.name}(${xf(e.inputs,{includeName:t})})`}function xf(e,{includeName:t=!1}={}){return e?e.map(e=>Sf(e,{includeName:t})).join(t?`, `:`,`):``}function Sf(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${xf(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Cf=o((()=>{$f()}));function N(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var wf=o((()=>{}));function P(e){return N(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Tf=o((()=>{wf()})),Ef,Df=o((()=>{Ef=`2.47.6`}));function Of(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Of(e.cause,t):t?null:e}var kf,F,I=o((()=>{Df(),kf={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Ef}`},F=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=kf.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...kf.version?[`Version: ${kf.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Ef}walk(e){return Of(this,e)}}})),Af,jf,Mf,Nf,Pf,Ff,If,Lf,Rf,zf,Bf,Vf,Hf,Uf,Wf,Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf,$f=o((()=>{Cf(),Tf(),I(),Af=class extends F{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},jf=class extends F{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},Mf=class extends F{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${xf(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`AbiDecodingDataSizeTooSmallError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=t,this.size=n}},Nf=class extends F{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Pf=class extends F{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Ff=class extends F{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${P(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},If=class extends F{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},Lf=class extends F{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Rf=class extends F{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},zf=class extends F{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},Bf=class extends F{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Vf=class extends F{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},Hf=class extends F{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},Uf=class extends F{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},Wf=class extends F{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},Gf=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${bf(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${bf(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Kf=class extends F{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},qf=class extends F{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${xf(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`DecodeLogDataMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=t,this.params=n,this.size=r}},Jf=class extends F{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${bf(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},Yf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},Xf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},Zf=class extends F{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},Qf=class extends F{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),ep,tp,np,rp=o((()=>{I(),ep=class extends F{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},tp=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},np=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function ip(e,{dir:t,size:n=32}={}){return typeof e==`string`?ap(e,{dir:t,size:n}):op(e,{dir:t,size:n})}function ap(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new tp({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function op(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new tp({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var sp=o((()=>{rp()})),cp,lp,up,dp,fp,pp=o((()=>{I(),cp=class extends F{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},lp=class extends F{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},up=class extends F{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},dp=class extends F{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},fp=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function mp(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var hp=o((()=>{}));function gp(e,{size:t}){if(P(e)>t)throw new fp({givenSize:P(e),maxSize:t})}function L(e,t={}){let{signed:n}=t;t.size&&gp(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function _p(e,t={}){let n=e;if(t.size&&(gp(n,{size:t.size}),n=mp(n)),mp(n)===`0x00`)return!1;if(mp(n)===`0x01`)return!0;throw new up(n)}function vp(e,t={}){let n=L(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new cp({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var yp=o((()=>{pp(),Tf(),hp()}));function bp(e,t={}){return typeof e==`number`||typeof e==`bigint`?R(e,t):typeof e==`string`?Cp(e,t):typeof e==`boolean`?xp(e,t):Sp(e,t)}function xp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{size:t.size})):n}function Sp(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=wp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(gp(r,{size:t.size}),ip(r,{dir:`right`,size:t.size})):r}function R(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new cp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?ip(s,{size:r}):s}function Cp(e,t={}){return Sp(Tp.encode(e),t)}var wp,Tp,z=o((()=>{pp(),sp(),yp(),wp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Tp=new TextEncoder}));function Ep(e,t={}){return typeof e==`number`||typeof e==`bigint`?Ap(e,t):typeof e==`boolean`?Dp(e,t):N(e)?kp(e,t):jp(e,t)}function Dp(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{size:t.size})):n}function Op(e){if(e>=Np.zero&&e<=Np.nine)return e-Np.zero;if(e>=Np.A&&e<=Np.F)return e-(Np.A-10);if(e>=Np.a&&e<=Np.f)return e-(Np.a-10)}function kp(e,t={}){let n=e;t.size&&(gp(n,{size:t.size}),n=ip(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=Op(r.charCodeAt(t++)),i=Op(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new F(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Ap(e,t){return kp(R(e,t))}function jp(e,t={}){let n=Mp.encode(e);return typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{dir:`right`,size:t.size})):n}var Mp,Np,Pp=o((()=>{I(),wf(),sp(),yp(),z(),Mp=new TextEncoder,Np={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Fp(e,t){let n=t||`hex`,r=Tn(N(e,{strict:!1})?Ep(e):e);return n===`bytes`?r:bp(r)}var Ip=o((()=>{Dn(),wf(),Pp(),z()}));function Lp(e){return Rp(e)}var Rp,zp=o((()=>{Pp(),Ip(),Rp=e=>Fp(Ep(e))}));function Bp(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new F(`Unable to normalize signature.`);return i}var Vp=o((()=>{I()})),Hp,Up=o((()=>{yf(),Vp(),Hp=e=>Bp(typeof e==`string`?e:ad(e))}));function Wp(e){return Lp(Hp(e))}var Gp=o((()=>{zp(),Up()})),Kp,qp=o((()=>{Gp(),Kp=Wp})),Jp,Yp=o((()=>{I(),Jp=class extends F{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),Xp,Zp=o((()=>{Xp=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function Qp(e,t){if(em.has(`${e}.${t}`))return em.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Fp(jp(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return em.set(`${e}.${t}`,a),a}function $p(e,t){if(!nm(e,{strict:!1}))throw new Jp({address:e});return Qp(e,t)}var em,tm=o((()=>{Yp(),Pp(),Ip(),Zp(),am(),em=new Xp(8192)}));function nm(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(im.has(r))return im.get(r);let i=rm.test(e)?e.toLowerCase()===e?!0:n?Qp(e)===e:!0:!1;return im.set(r,i),i}var rm,im,am=o((()=>{Zp(),tm(),rm=/^0x[a-fA-F0-9]{40}$/,im=new Xp(8192)}));function om(e){return typeof e[0]==`string`?cm(e):sm(e)}function sm(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function cm(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var lm=o((()=>{}));function um(e,t,n,{strict:r}={}){return N(e,{strict:!1})?mm(e,t,n,{strict:r}):pm(e,t,n,{strict:r})}function dm(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new ep({offset:t,position:`start`,size:P(e)})}function fm(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new ep({offset:n,position:`end`,size:P(e)})}function pm(e,t,n,{strict:r}={}){dm(e,t);let i=e.slice(t,n);return r&&fm(i,t,n),i}function mm(e,t,n,{strict:r}={}){dm(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&fm(i,t,n),i}var hm=o((()=>{rp(),wf(),Tf()})),gm,_m,vm=o((()=>{gm=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,_m=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/}));function ym(e,t){if(e.length!==t.length)throw new If({expectedLength:e.length,givenLength:t.length});let n=Sm(bm({params:e,values:t}));return n.length===0?`0x`:n}function bm({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(xm({param:e[r],value:t[r]}));return n}function xm({param:e,value:t}){let n=Am(e.type);if(n){let[r,i]=n;return wm(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return km(t,{param:e});if(e.type===`address`)return Cm(t);if(e.type===`bool`)return Em(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=_m.exec(e.type)??[];return Dm(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Tm(t,{param:e});if(e.type===`string`)return Om(t);throw new Yf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Sm(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=P(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(R(t+i,{size:32})),r.push(s),i+=P(s)):n.push(s)}return om([...n,...r])}function Cm(e){if(!nm(e))throw new Jp({address:e});return{dynamic:!1,encoded:ap(e.toLowerCase())}}function wm(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new Zf(e);if(!r&&e.length!==t)throw new Pf({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=xm({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Sm(a);if(r){let t=R(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?om([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:om(a.map(({encoded:e})=>e))}}function Tm(e,{param:t}){let[,n]=t.type.split(`bytes`),r=P(e);if(!n){let t=e;return r%32!=0&&(t=ap(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:om([ap(R(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Ff({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ap(e,{dir:`right`})}}function Em(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ap(xp(e))}}function Dm(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new cp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:R(e,{size:32,signed:t})}}function Om(e){let t=Cp(e),n=Math.ceil(P(t)/32),r=[];for(let e=0;e<n;e++)r.push(ap(um(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:om([ap(R(P(t),{size:32})),...r])}}function km(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=xm({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Sm(r):om(r.map(({encoded:e})=>e))}}function Am(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var jm=o((()=>{$f(),Yp(),I(),pp(),am(),lm(),sp(),Tf(),hm(),z(),vm()})),Mm,Nm=o((()=>{hm(),Gp(),Mm=e=>um(Wp(e),0,4)}));function Pm(e){let{abi:t,args:n=[],name:r}=e,i=N(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Mm(e)===r:e.type===`event`?Kp(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Fm(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Im(e.inputs,o.inputs,n);if(t)throw new Gf({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Fm(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return nm(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,r)=>n===`object`&&Fm(Object.values(e)[r],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>Fm(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Im(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Im(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&nm(n[r],{strict:!1}))return o}}var Lm=o((()=>{$f(),wf(),am(),qp(),Nm()}));function Rm(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var zm=o((()=>{}));function Bm(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Pm({abi:t,args:n,name:r});if(!e)throw new Hf(r,{docsPath:Vm});i=e}if(i.type!==`function`)throw new Hf(void 0,{docsPath:Vm});return{abi:[i],functionName:Mm(bf(i))}}var Vm,Hm=o((()=>{$f(),Nm(),Cf(),Lm(),Vm=`/docs/contract/encodeFunctionData`}));function Um(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Bm(e),i=n[0];return cm([r,(`inputs`in i&&i.inputs?ym(i.inputs,t??[]):void 0)??`0x`])}var Wm=o((()=>{lm(),jm(),Hm()})),Gm,Km,qm,Jm=o((()=>{Gm={1:\"An `assert` condition failed.\",17:`Arithmetic operation resulted in underflow or overflow.`,18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:`Attempted to convert to an invalid type.`,34:`Attempted to access a storage byte array that is incorrectly encoded.`,49:\"Performed `.pop()` on an empty array\",50:`Array index is out of bounds.`,65:`Allocated too much memory or created an array which is too large.`,81:`Attempted to call a zero-initialized variable of internal function type.`},Km={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},qm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Ym,Xm,Zm,Qm=o((()=>{I(),Ym=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Xm=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Zm=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function $m(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(eh);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var eh,th=o((()=>{Qm(),eh={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Zm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Xm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ym({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Ym({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function nh(e,t={}){return t.size!==void 0&&gp(e,{size:t.size}),L(Sp(e,t),t)}function rh(e,t={}){let n=e;if(t.size!==void 0&&(gp(n,{size:t.size}),n=mp(n)),n.length>1||n[0]>1)throw new lp(n);return!!n[0]}function ih(e,t={}){return t.size!==void 0&&gp(e,{size:t.size}),vp(Sp(e,t),t)}function ah(e,t={}){let n=e;return t.size!==void 0&&(gp(n,{size:t.size}),n=mp(n,{dir:`right`})),new TextDecoder().decode(n)}var oh=o((()=>{pp(),hp(),yp(),z()}));function sh(e,t){let n=typeof t==`string`?kp(t):t,r=$m(n);if(P(n)===0&&e.length>0)throw new Nf;if(P(t)&&P(t)<32)throw new Mf({data:typeof t==`string`?t:Sp(t),params:e,size:P(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=ch(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function ch(e,t,{staticPosition:n}){let r=Am(t.type);if(r){let[i,a]=r;return uh(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return mh(e,t,{staticPosition:n});if(t.type===`address`)return lh(e);if(t.type===`bool`)return dh(e);if(t.type.startsWith(`bytes`))return fh(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return ph(e,t);if(t.type===`string`)return hh(e,{staticPosition:n});throw new Xf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function lh(e){return[Qp(Sp(pm(e.readBytes(32),-20))),32]}function uh(e,t,{length:n,staticPosition:r}){if(!n){let n=r+ih(e.readBytes(vh)),i=n+_h;e.setPosition(n);let a=ih(e.readBytes(_h)),o=gh(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=ch(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(gh(t)){let i=r+ih(e.readBytes(vh)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=ch(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=ch(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function dh(e){return[rh(e.readBytes(32),{size:32}),32]}function fh(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=ih(e.readBytes(32));e.setPosition(n+t);let r=ih(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Sp(i),32]}return[Sp(e.readBytes(Number.parseInt(i,10),32)),32]}function ph(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?nh(i,{signed:n}):ih(i,{signed:n}),32]}function mh(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(gh(t)){let o=n+ih(e.readBytes(vh));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=ch(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=ch(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function hh(e,{staticPosition:t}){let n=t+ih(e.readBytes(32));e.setPosition(n);let r=ih(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=ah(mp(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function gh(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(gh);let n=Am(e.type);return!!(n&&gh({...e,type:n[1]}))}var _h,vh,yh=o((()=>{$f(),tm(),th(),Tf(),hm(),hp(),oh(),Pp(),z(),jm(),_h=32,vh=32}));function bh(e){let{abi:t,data:n,cause:r}=e,i=um(n,0,4);if(i===`0x`)throw new Nf({cause:r});let a=[...t||[],Km,qm].find(e=>e.type===`error`&&i===Mm(bf(e)));if(!a)throw new zf(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?sh(a.inputs,um(n,4)):void 0,errorName:a.name}}var xh=o((()=>{Jm(),$f(),hm(),Nm(),yh(),Cf()})),Sh,Ch=o((()=>{Sh=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function wh({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if(`name`in e&&`inputs`in e&&e.inputs)return`${n?e.name:``}(${e.inputs.map((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?Sh(t[n]):t[n]}`).join(`, `)})`}var Th=o((()=>{Ch()})),Eh,Dh,Oh=o((()=>{Eh={gwei:9,wei:18},Dh={ether:-9,wei:9}}));function kh(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var Ah=o((()=>{}));function jh(e,t=`wei`){return kh(e,Eh[t])}var Mh=o((()=>{Oh(),Ah()}));function Nh(e,t=`wei`){return kh(e,Dh[t])}var Ph=o((()=>{Oh(),Ah()}));function Fh(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Ih(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=Fh(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Fh(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Lh,Rh,zh=o((()=>{I(),Lh=class extends F{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},Rh=class extends F{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Bh(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var Vh,Hh,Uh,Wh,Gh,Kh,qh=o((()=>{Mh(),Ph(),I(),Vh=class extends F{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Hh=class extends F{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Bh(e),`}`,``,`To infer the type, either provide:`,\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},Uh=class extends F{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},Wh=class extends F{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},Gh=class extends F{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Kh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Bh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),Jh,Yh,Xh=o((()=>{Jh=e=>e,Yh=e=>e})),Zh,Qh,$h,eg,tg,ng,rg=o((()=>{zm(),Jm(),xh(),Cf(),Th(),Lm(),Mh(),Ph(),$f(),I(),zh(),qh(),Xh(),Zh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=Bh({from:(t?Rm(t):void 0)?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});f&&(p+=`\\n${Ih(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},Qh=class extends F{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Pm({abi:t,args:n,name:a}),c=s?wh({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?bf(s,{includeName:!0}):void 0,u=Bh({address:r&&Jh(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),Object.defineProperty(this,`abi`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`args`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`contractAddress`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`formattedArgs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`functionName`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`sender`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},$h=class extends F{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=bh({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=Gm[e]}else{let e=n?bf(n,{includeName:!0}):void 0,t=n&&a?wh({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof zf&&(l=a.signature,s=[`Unable to decode signature \"${l}\" as it was not found on the provided ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`reason`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.raw=t,this.reason=c,this.signature=l}},eg=class extends F{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},tg=class extends F{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},ng=class extends F{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),ig,ag,og,sg=o((()=>{Ch(),I(),Xh(),ig=class extends F{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${Yh(a)}`,e&&`Request body: ${Sh(e)}`].filter(Boolean),name:`HttpRequestError`}),Object.defineProperty(this,`body`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`headers`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`status`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=i,this.url=a}},ag=class extends F{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Yh(n)}`,`Request body: ${Sh(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},og=class extends F{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Yh(t)}`,`Request body: ${Sh(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),cg,lg,ug,dg,fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg,Tg,Eg,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig,Lg,Rg=o((()=>{I(),sg(),cg=-1,lg=class extends F{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof ag?e.code:t??cg}},ug=class extends lg{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},dg=class e extends lg{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),fg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),pg=class e extends lg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),mg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),hg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(hg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),gg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(gg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),_g=class e extends lg{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(_g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),vg=class e extends lg{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(vg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),yg=class e extends lg{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(yg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),bg=class e extends lg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(bg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),xg=class e extends lg{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(xg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Sg=class e extends lg{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Sg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Cg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(Cg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),wg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(wg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Tg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Tg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Eg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Eg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Dg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Og=class e extends ug{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(Og,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),kg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(kg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Ag=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(Ag,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),jg=class e extends ug{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(jg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Mg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Ng=class e extends ug{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Ng,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Pg=class e extends ug{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(Pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Fg=class e extends ug{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Ig=class e extends ug{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Ig,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Lg=class extends lg{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));$f(),I(),rg(),sg(),Rg();function zg(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof ng?e:e instanceof F?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Qh(e instanceof Nf?new eg({functionName:a,cause:e}):[3,hg.code].includes(c)&&(l||u||d||f)||c===gg.code&&u===`execution reverted`&&l?new $h({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof ag?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}tm(),Ip();function Bg(e){return Qp(`0x${Fp(`0x${e.substring(4)}`).substring(26)}`)}wf(),Tf(),yp(),z();async function Vg({hash:e,signature:t}){let n=N(e)?e:bp(e),{secp256k1:r}=await Promise.resolve().then(()=>(uc(),Ns));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Hg(Number(a??i));return new r.Signature(L(e),L(n)).addRecoveryBit(o)}let e=N(t)?t:bp(t);if(P(e)!==65)throw Error(`invalid signature length`);let n=Hg(vp(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Hg(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Ug({hash:e,signature:t}){return Bg(await Vg({hash:e,signature:t}))}I(),th(),Pp(),z();function Wg(e,t=`hex`){let n=Gg(e),r=$m(new Uint8Array(n.length));return n.encode(r),t===`hex`?Sp(r.bytes):r.bytes}function Gg(e){return Array.isArray(e)?Kg(e.map(e=>Gg(e))):qg(e)}function Kg(e){let t=e.reduce((e,t)=>e+t.length,0),n=Jg(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function qg(e){let t=typeof e==`string`?kp(e):e,n=Jg(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Jg(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new F(`Length is too large.`)}lm(),Pp(),z(),Ip();function Yg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Fp(cm([`0x05`,Wg([t?R(t):`0x`,i,n?R(n):`0x`])]));return r===`bytes`?kp(a):a}async function Xg(e){let{authorization:t,signature:n}=e;return Ug({hash:Yg(t),signature:n??t})}Mh(),Ph(),I(),qh();var Zg=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Bh({from:t?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},Qg,$g,e_,t_,n_,r_,i_,a_,o_,s_,c_,l_,u_=o((()=>{Ph(),I(),Qg=class extends F{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(Qg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Qg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),$g=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Nh(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty($g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),e_=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Nh(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(e_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/}),t_=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(t_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),n_=class extends F{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(n_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),r_=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(r_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),i_=class extends F{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(i_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),a_=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(a_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),o_=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(o_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),s_=class extends F{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(s_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),c_=class extends F{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Nh(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Nh(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(c_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),l_=class extends F{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function d_(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof F?e.walk(e=>e?.code===Qg.code):e;return r instanceof F?new Qg({cause:e,message:r.details}):Qg.nodeMessage.test(n)?new Qg({cause:e,message:e.details}):$g.nodeMessage.test(n)?new $g({cause:e,maxFeePerGas:t?.maxFeePerGas}):e_.nodeMessage.test(n)?new e_({cause:e,maxFeePerGas:t?.maxFeePerGas}):t_.nodeMessage.test(n)?new t_({cause:e,nonce:t?.nonce}):n_.nodeMessage.test(n)?new n_({cause:e,nonce:t?.nonce}):r_.nodeMessage.test(n)?new r_({cause:e,nonce:t?.nonce}):i_.nodeMessage.test(n)?new i_({cause:e}):a_.nodeMessage.test(n)?new a_({cause:e,gas:t?.gas}):o_.nodeMessage.test(n)?new o_({cause:e,gas:t?.gas}):s_.nodeMessage.test(n)?new s_({cause:e}):c_.nodeMessage.test(n)?new c_({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new l_({cause:e})}var f_=o((()=>{I(),u_()}));u_(),f_();function p_(e,{docsPath:t,...n}){return new Zg((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}function m_(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var h_=o((()=>{}));function g_(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var __=o((()=>{}));function v_(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=y_(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Sp(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=R(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=R(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=R(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=R(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=R(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=b_[e.type]),e.value!==void 0&&(n.value=R(e.value)),n}function y_(e){return e.map(e=>({address:e.address,r:e.r?R(BigInt(e.r)):e.r,s:e.s?R(BigInt(e.s)):e.s,chainId:R(e.chainId),nonce:R(e.nonce),...e.yParity===void 0?{}:{yParity:R(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:R(e.v)}:{}}))}var b_,x_,S_=o((()=>{z(),__(),b_={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},x_=g_(`transactionRequest`,v_)}));function C_(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new np({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new np({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function w_(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=R(t)),n!==void 0&&(o.nonce=R(n)),r!==void 0&&(o.state=C_(r)),i!==void 0){if(o.state)throw new Rh;o.stateDiff=C_(i)}return o}function T_(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!nm(n,{strict:!1}))throw new Jp({address:n});if(t[n])throw new Lh({address:n});t[n]=w_(r)}return t}var E_=o((()=>{Yp(),rp(),zh(),am(),z()})),D_,O_=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),D_=2n**256n-1n}));function k_(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?Rm(t):void 0;if(a&&!nm(a.address))throw new Jp({address:a.address});if(i&&!nm(i))throw new Jp({address:i});if(n&&n>D_)throw new $g({maxFeePerGas:n});if(r&&n&&r>n)throw new c_({maxFeePerGas:n,maxPriorityFeePerGas:r})}var A_=o((()=>{zm(),O_(),Yp(),u_(),am()}));Ph(),I();var j_=class extends F{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},M_=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},N_=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Nh(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};I();var P_=class extends F{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};yp(),__();let F_={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function I_(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?vp(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?vp(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?F_[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=R_(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let L_=g_(`transaction`,I_);function R_(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function z_(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:I_(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}z();async function B_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:R(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new P_({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||z_)(s,`getBlock`)}async function V_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}yp();async function H_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await M(e,B_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?L(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):M(e,B_,`getBlock`)({}),M(e,V_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new M_;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function U_(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new j_;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await M(e,B_,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new M_;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await H_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await M(e,V_,`getGasPrice`)({}))}}yp(),z();async function W_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return vp(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?R(r):n]},{dedupe:!!r}))}Pp(),z();function G_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>kp(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Sp(e))}Pp(),z();function K_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>kp(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>kp(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Sp(e))}wf(),Pp(),z();function q_(e,t){let n=t||`hex`,r=Hn(N(e,{strict:!1})?Ep(e):e);return n===`bytes`?r:bp(r)}z();function J_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=q_(t,`bytes`);return i.set([n],0),r===`bytes`?i:Sp(i)}function Y_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(J_({commitment:e,to:r,version:n}));return i}let X_=4096,Z_=32*X_;Z_*6-1-1*X_*6,I();var Q_=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},$_=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},ev=class extends F{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},tv=class extends F{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};th(),Tf(),Pp(),z();function nv(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?kp(e.data):e.data,r=P(n);if(!r)throw new $_;if(r>761855)throw new Q_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=$m(new Uint8Array(Z_)),t=0;for(;t<X_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Sp(e.bytes))}function rv(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??nv({data:t,to:r}),a=e.commitments??G_({blobs:i,kzg:n,to:r}),o=e.proofs??K_({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}qh();function iv(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new Hh({transaction:e})}u_(),qh(),f_();function av(e,{docsPath:t,...n}){return new Kh((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}yp();async function ov(e){return vp(await e.request({method:`eth_chainId`},{dedupe:!0}))}zm(),h_(),S_(),A_();async function sv(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=Rm(n),r=a?a.id:await M(e,ov,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();k_(t);let x=a?.formatters?.transactionRequest?.format,S=(x||v_)({...m_(y,{format:x}),account:n?Rm(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||I_)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await M(e,B_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new j_;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw av(n,{...t,chain:e.chain})}}zm(),Zp(),A_();let cv=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],lv=new Map,uv=new Xp(128);async function dv(e,t){let n=t;n.account??=e.account,n.parameters??=cv;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await M(e,ov,`getChainId`)({}),c):n.chainId)}let u=r&&Rm(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||uv.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await M(e,sv,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return uv.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&uv.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await M(e,B_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await M(e,W_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=G_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Y_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=rv({blobs:p,commitments:e,proofs:K_({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=iv(n)}catch{let t=lv.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,lv.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await U_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new N_({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new M_;if(n.gasPrice===void 0){let{gasPrice:t}=await U_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await M(e,fv,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),k_(n),delete n.parameters,n}zm(),I(),z(),h_(),S_(),E_(),A_();async function fv(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?Rm(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Xg({authorization:t.authorizationList[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await dv(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?R(u):void 0)||d,ee=T_(b);k_(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||v_)({...m_(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw p_(n,{...t,account:i,chain:e.chain})}}function pv(e,t){if(!nm(e,{strict:!1}))throw new Jp({address:e});if(!nm(t,{strict:!1}))throw new Jp({address:t});return e.toLowerCase()===t.toLowerCase()}var mv=o((()=>{Yp(),am()}));function hv(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}$f(),Qm(),Tf(),qp(),yh(),Cf();let gv=`/docs/contract/decodeEventLog`;function _v(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Bf({docsPath:gv});let c=t.find(e=>e.type===`event`&&o===Kp(bf(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Vf(o,{docsPath:gv});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new Jf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=vv({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=sh(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof Mf||e instanceof Xm?new qf({abiItem:c,data:n,params:g,size:P(n)}):e}else if(a)throw new qf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function vv({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(sh([e],t)||[])[0]}mv(),Pp(),Ip(),qp();function yv(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:Kp(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?hv(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=_v({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=_v({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!bv({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function bv(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?pv(t,n):e.type===`string`||e.type===`bytes`?Fp(Ep(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function xv(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Pm({abi:t,args:n,name:r});if(!e)throw new Hf(r,{docsPath:Sv});a=e}if(a.type!==`function`)throw new Hf(void 0,{docsPath:Sv});if(!a.outputs)throw new Uf(a.name,{docsPath:Sv});let o=sh(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var Sv,Cv=o((()=>{$f(),yh(),Lm(),Sv=`/docs/contract/decodeFunctionResult`})),wv,Tv,Ev,Dv,Ov,kv=o((()=>{wv=[{inputs:[{components:[{name:`target`,type:`address`},{name:`allowFailure`,type:`bool`},{name:`callData`,type:`bytes`}],name:`calls`,type:`tuple[]`}],name:`aggregate3`,outputs:[{components:[{name:`success`,type:`bool`},{name:`returnData`,type:`bytes`}],name:`returnData`,type:`tuple[]`}],stateMutability:`view`,type:`function`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],Tv=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],Ev=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...Ev],[...Ev],Dv=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Ov=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),Av=o((()=>{})),jv,Mv,Nv,Pv,Fv=o((()=>{jv=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Mv=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Nv=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Pv=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Iv,Lv,Rv,zv,Bv,Vv=o((()=>{I(),Iv=class extends F{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Lv=class extends F{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},Rv=class extends F{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},zv=class extends F{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Bv=class extends F{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Hv(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new Af({docsPath:Uv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new jf({docsPath:Uv});return cm([r,ym(i.inputs,n)])}var Uv,Wv=o((()=>{$f(),lm(),jm(),Uv=`/docs/contract/encodeDeployData`}));function Gv({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Iv({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Iv({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Kv=o((()=>{Vv()}));function qv(e,{docsPath:t,...n}){return new Zh((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}var Jv=o((()=>{rg(),u_(),f_()}));function Yv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Xv=o((()=>{}));function Zv({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>Qv.delete(t),s=()=>c().map(({args:e})=>e),c=()=>Qv.get(t)||[],l=e=>Qv.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Yv();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var Qv,$v=o((()=>{Xv(),Qv=new Map})),ey,ty,ny,ry=o((()=>{Ch(),I(),Xh(),ey=class extends F{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${Yh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ty=class extends F{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Yh(t)}`,`Response: ${Sh(e)}`],name:`OffchainLookupResponseMalformedError`})}},ny=class extends F{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function iy(e){let{abi:t,data:n}=e,r=um(n,0,4),i=t.find(e=>e.type===`function`&&r===Mm(bf(e)));if(!i)throw new Wf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?sh(i.inputs,um(n,4)):void 0}}var ay=o((()=>{$f(),hm(),Nm(),yh(),Cf()}));function oy(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Pm({abi:t,args:r,name:n});if(!e)throw new Rf(n,{docsPath:sy});i=e}if(i.type!==`error`)throw new Rf(void 0,{docsPath:sy});let a=Mm(bf(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new Lf(i.name,{docsPath:sy});o=ym(i.inputs,r)}return cm([a,o])}var sy,cy=o((()=>{$f(),lm(),Nm(),jm(),Cf(),Lm(),sy=`/docs/contract/encodeErrorResult`}));function ly(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Pm({abi:t,name:n});if(!e)throw new Hf(n,{docsPath:uy});i=e}if(i.type!==`function`)throw new Hf(void 0,{docsPath:uy});if(!i.outputs)throw new Uf(i.name,{docsPath:uy});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Zf(r)})();return ym(i.outputs,a)}var uy,dy=o((()=>{$f(),jm(),Lm(),uy=`/docs/contract/encodeFunctionResult`}));async function fy(e){let{data:t,ccipRequest:n}=e,{args:[r]}=iy({abi:Tv,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await fy({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=py(e)}})),ly({abi:Tv,functionName:`query`,result:[i,a]})}function py(e){return e.name===`HttpRequestError`&&e.status?oy({abi:Tv,errorName:`HttpError`,args:[e.status,e.shortMessage]}):oy({abi:[Km],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var my=o((()=>{kv(),Jm(),ay(),cy(),dy()})),hy=c({ccipRequest:()=>_y,offchainLookup:()=>gy,offchainLookupAbiItem:()=>yy,offchainLookupSignature:()=>vy});async function gy(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=bh({data:r,abi:[yy]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:_y;try{if(!pv(i,o))throw new ny({sender:o,to:i});let{data:r}=await xy(e,{blockNumber:t,blockTag:n,data:om([l,ym([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await fy({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new ey({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function _y({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new ig({body:s,details:i?.error?Sh(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!N(i)){r=new ty({result:i,url:a});continue}return i}catch(e){r=new ig({body:s,details:e.message,url:a})}}throw r}var vy,yy,by=o((()=>{Dy(),ry(),sg(),xh(),jm(),mv(),lm(),wf(),my(),Ch(),vy=`0x556f1830`,yy={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function xy(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?Rm(n):void 0;if(u&&(f||p))throw new F(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new F(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?wy({code:u,data:d}):te?Ty({data:d,factory:f,factoryData:p,to:b}):d;try{k_(t);let n=(typeof a==`bigint`?R(a):void 0)||o,u=l?Yc(l):void 0,d=T_(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||v_)({...m_(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&Sy({request:p})&&!d&&!u)try{return await Cy(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof zv)&&!(e instanceof Iv))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=Ey(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(by(),hy));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new tg({factory:f}):qv(n,{...t,account:C,chain:e.chain})}}function Sy({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function Cy(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return Gv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new zv})(),u=(typeof a==`bigint`?R(a):void 0)||o,{schedule:d}=Zv({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=Um({abi:wv,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:wy({code:Pv,data:r})}:{to:l,data:r}},u]});return xv({abi:wv,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new ng({data:f});return f===`0x`?{data:void 0}:{data:f}}function wy(e){let{code:t,data:n}=e;return Hv({abi:_f([`constructor(bytes, bytes)`]),bytecode:jv,args:[t,n]})}function Ty(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Hv({abi:_f([`constructor(address, bytes, address, bytes)`]),bytecode:Mv,args:[i,t,n,r]})}function Ey(e){if(!(e instanceof F))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Dy=o((()=>{yf(),Xc(),zm(),kv(),Av(),Fv(),I(),Vv(),rg(),Cv(),Wv(),Wm(),Kv(),z(),Jv(),h_(),S_(),$v(),E_(),A_()}));Cv(),Wm(),Dy();async function Oy(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Um({abi:n,args:i,functionName:a});try{let{data:t}=await M(e,xy,`call`)({...o,data:s,to:r});return xv({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw zg(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let ky=new Map,Ay=new Map,jy=0;function My(e,t,n){let r=++jy,i=()=>ky.get(e)||[],a=()=>{let t=i();ky.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Ay.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(ky.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&Ay.set(e,l),o}async function Ny(e){return new Promise(t=>setTimeout(t,e))}function Py(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Ny(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Ny(r),s())};s()})(),a}I();var Fy=class extends F{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},Iy=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Vv();function Ly({chain:e,currentChainId:t}){if(!e)throw new Rv;if(t!==e.id)throw new Lv({chain:e,currentChainId:t})}async function Ry(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}zm(),I(),lm(),h_(),S_(),Zp(),A_();let zy=new Xp(128);async function By(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new Fy({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?Rm(n):null;try{k_(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Xg({authorization:o[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await M(e,ov,`getChainId`)({}),r&&Ly({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||v_)({...m_(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?om([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=zy.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(zy.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(zy.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await M(e,dv,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?om([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...cv,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await M(e,Ry,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Iy({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Iy({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Iy?e:av(e,{...t,account:y,chain:t.chain||void 0})}}zm(),Wm();async function Vy(e,t){return Vy.internal(e,By,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new Fy({docsPath:`/docs/contract/writeContract`});let u=a?Rm(a):null,d=Um({abi:i,args:s,functionName:c});try{return await M(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw zg(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Vy||={}),I();var Hy=class extends F{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function Uy(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await Ny(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}yp(),__();let Wy={\"0x0\":`reverted`,\"0x1\":`success`};function Gy(e,t){let n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(e=>hv(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?vp(e.transactionIndex):null,status:e.status?Wy[e.status]:null,type:e.type?F_[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Ky=g_(`transactionReceipt`,Gy);zm(),I(),Rg(),Wm(),lm(),yp(),z();let qy=R(0,{size:32});async function Jy(e,t){let{account:n=e.account,chain:r=e.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:s,version:c=`2.0.0`}=t,l=n?Rm(n):null,u=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(u=typeof e.dataSuffix==`string`?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});let d=t.calls.map(e=>{let t=e,n=t.abi?Um({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?om([n,t.dataSuffix]):n,to:t.to,value:t.value?R(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:R(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new kg(new F(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new Fg(new F(e,{details:e}))}let t=[];for(let n of d){let i=By(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?L(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:om([...n.map(e=>e.status===`fulfilled`?e.value:qy),R(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw av(n,{...t,account:l,chain:t.chain})}}hm(),hp(),yp();async function Yy(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=mp(mm(t,-64,-32)),r=mm(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>qy.slice(2)===t?void 0:e.request({method:`eth_getTransactionReceipt`,params:[`0x${t}`]},{dedupe:!0}))),a=i.some(e=>e===null)?100:i.every(e=>e?.status===`0x1`)?200:i.every(e=>e?.status===`0x0`)?500:600;return{atomic:!1,chainId:vp(n),receipts:i.filter(Boolean),status:a,version:`2.0.0`}}return e.request({method:`wallet_getCallsStatus`,params:[t]})}let{atomic:r=!1,chainId:i,receipts:a,version:o=`2.0.0`,...s}=await n(t.id),[c,l]=(()=>{let e=s.status;return e>=100&&e<200?[`pending`,e]:e>=200&&e<300?[`success`,e]:e>=300&&e<700?[`failure`,e]:e===`CONFIRMED`?[`success`,200]:e===`PENDING`?[`pending`,100]:[void 0,e]})();return{...s,atomic:r,chainId:i?vp(i):void 0,receipts:a?.map(e=>({...e,blockNumber:L(e.blockNumber),gasUsed:L(e.gasUsed),status:Wy[e.status]}))??[],statusCode:l,status:c,version:o}}I(),Xv(),Ch();async function Xy(e,t){let{id:n,pollingInterval:r=e.pollingInterval,status:i=({statusCode:e})=>e===200||e>=300,retryCount:a=4,retryDelay:o=({count:e})=>~~(1<<e)*200,timeout:s=6e4,throwOnFailure:c=!1}=t,l=Sh([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=Yv(),p,m=My(l,{resolve:d,reject:f},t=>{let s=Py(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await Uy(async()=>{let t=await M(e,Yy,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Hy(t);return t},{retryCount:a,delay:o});if(!i(s))return;r(()=>t.resolve(s))}catch(e){r(()=>t.reject(e))}},{interval:r,emitOnBegin:!0});return s});return p=s?setTimeout(()=>{m(),clearTimeout(p),f(new Zy({id:n}))},s):void 0,await u}var Zy=class extends F{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let Qy=256,$y;function eb(e=11){if(!$y||Qy+e>256*2){$y=``,Qy=0;for(let e=0;e<256;e++)$y+=(256+Math.random()*256|0).toString(16).substring(1)}return $y.substring(Qy,Qy+++e)}zm();function tb(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?Rm(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:eb(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}z();async function nb(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:R(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}O_(),Yp(),I(),Vv(),u_(),am(),Tf(),hm(),yp();function rb(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!nm(n))throw new Jp({address:n});if(t<0)throw new Bv({chainId:t})}ab(e)}function ib(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new $_;for(let e of t){let t=P(e),n=vp(um(e,0,1));if(t!==32)throw new ev({hash:e,size:t});if(n!==1)throw new tv({hash:e,version:n})}}ab(e)}function ab(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Bv({chainId:t});if(i&&!nm(i))throw new Jp({address:i});if(r&&r>D_)throw new $g({maxFeePerGas:r});if(n&&r&&n>r)throw new c_({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ob(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Bv({chainId:t});if(a&&!nm(a))throw new Jp({address:a});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>D_)throw new $g({maxFeePerGas:r})}function sb(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!nm(a))throw new Jp({address:a});if(t!==void 0&&t<=0)throw new Bv({chainId:t});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>D_)throw new $g({maxFeePerGas:r})}Yp(),qh(),am();function cb(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new Gh({storageKey:i[e]});if(!nm(r,{strict:!1}))throw new Jp({address:r});t.push([r,i])}return t}qh(),lm(),hp(),z();function lb(e,t){let n=iv(e);return n===`eip1559`?fb(e,t):n===`eip2930`?pb(e,t):n===`eip4844`?db(e,t):n===`eip7702`?ub(e,t):mb(e,t)}function ub(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;rb(e);let f=cb(u),p=gb(n);return cm([`0x04`,Wg([R(r),a?R(a):`0x`,l?R(l):`0x`,c?R(c):`0x`,i?R(i):`0x`,o??`0x`,s?R(s):`0x`,d??`0x`,f,p,...hb(e,t)])])}function db(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;ib(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Sp(e)),n=e.kzg,r=G_({blobs:t,kzg:n});f===void 0&&(f=Y_({commitments:r})),p===void 0&&(p=rv({blobs:t,commitments:r,proofs:K_({blobs:t,commitments:r,kzg:n})}))}let m=cb(u),h=[R(n),i?R(i):`0x`,l?R(l):`0x`,c?R(c):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,d??`0x`,m,s?R(s):`0x`,f??[],...hb(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return cm([`0x03`,Wg(p?[h,g,_,v]:h)])}function fb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;ab(e);let d=cb(l);return cm([`0x02`,Wg([R(n),i?R(i):`0x`,c?R(c):`0x`,s?R(s):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,u??`0x`,d,...hb(e,t)])])}function pb(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;ob(e);let u=cb(c);return cm([`0x01`,Wg([R(n),a?R(a):`0x`,l?R(l):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`,u,...hb(e,t)])])}function mb(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;sb(e);let l=[a?R(a):`0x`,c?R(c):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new Vh({v:t.v});return e})(),r=mp(t.r),i=mp(t.s);l=[...l,R(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,R(n),`0x`,`0x`]);return Wg(l)}function hb(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=mp(n.r),o=mp(n.s);return[typeof i==`number`?i?R(1):`0x`:r===0n?`0x`:r===1n?R(1):r===27n?`0x`:R(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}z();function gb(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?bp(e):`0x`,a,r?bp(r):`0x`,...hb({},i)])}return t}tm(),mv();async function _b({address:e,authorization:t,signature:n}){return pv($p(e),await Xg({authorization:t,signature:n}))}Zp();let vb=new Xp(8192);function yb(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(vb.get(n))return vb.get(n);let r=e().finally(()=>vb.delete(n));return vb.set(n,r),r}I(),sg(),Rg(),z(),Ch();function bb(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new bg(Error(`method not supported`),{method:l});return yb(()=>Uy(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case dg.code:throw new dg(t);case fg.code:throw new fg(t);case pg.code:throw new pg(t,{method:n.method});case mg.code:throw new mg(t);case hg.code:throw new hg(t);case gg.code:throw new gg(t);case _g.code:throw new _g(t);case vg.code:throw new vg(t);case yg.code:throw new yg(t);case bg.code:throw new bg(t,{method:n.method});case xg.code:throw new xg(t);case Sg.code:throw new Sg(t);case Cg.code:throw new Cg(t);case wg.code:throw new wg(t);case Tg.code:throw new Tg(t);case Eg.code:throw new Eg(t);case Dg.code:throw new Dg(t);case Og.code:throw new Og(t);case kg.code:throw new kg(t);case Ag.code:throw new Ag(t);case jg.code:throw new jg(t);case Mg.code:throw new Mg(t);case Ng.code:throw new Ng(t);case Pg.code:throw new Pg(t);case Fg.code:throw new Fg(t);case 5e3:throw new Cg(t);case Ig.code:throw new Ig(t);default:throw e instanceof F?e:new Lg(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof ig){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>xb(e)}),{enabled:i,id:i?Cp(`${c}.${Sh(n)}`):void 0})}}function xb(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===xg.code||e.code===hg.code:e instanceof ig&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function Sb(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function Cb(){return{}}I(),pp(),th(),Pp(),z();function wb(e,t=`hex`){return Tb($m((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new dp(e);return kp(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Tb(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Sp(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Eb(e,n,128),i=e.readBytes(r);return t===`hex`?Sp(i):i}return Db(e,Eb(e,n,192),t)}function Eb(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new F(`Invalid RLP prefix`)}function Db(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Tb(e,n));return i}wf(),Tf();function Ob(e){return N(e)&&P(e)===32}function kb(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function Ab(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let jb=Ab();sg(),Ch();function Mb(e,t={}){let{url:n,headers:r}=Nb(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await kb(async({signal:e})=>{let t={...l,body:Sh(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??jb.take(),...e})):{jsonrpc:`2.0`,id:i.id??jb.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new og({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new ig({body:i,details:Sh(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof ig||e instanceof og?e:new ig({body:i,cause:e,url:n})}}}}function Nb(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}lm(),Tf(),z();function Pb(e){let t=typeof e==`string`?Cp(e):typeof e.raw==`string`?e.raw:Sp(e.raw);return om([Cp(`\u0019Ethereum Signed Message:\n${P(t)}`),t])}Ip();function Fb(e,t){return Fp(Pb(e),t)}Ch(),I();var Ib=class extends F{constructor({domain:e}){super(`Invalid domain \"${Sh(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Lb=class extends F{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Rb=class extends F{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};$f(),Yp(),am(),Tf(),z(),vm(),Ch();function zb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{let n={...t};for(let t of e){let{name:e,type:r}=t;r===`address`&&(n[e]=n[e].toLowerCase())}return n};return Sh({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Bb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(_m);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;R(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!nm(o))throw new Jp({address:o});let c=r.match(gm);if(c){let[e,t]=c;if(t&&P(o)!==Number.parseInt(t,10))throw new Kf({expectedSize:Number.parseInt(t,10),givenSize:P(o)})}let l=i[r];l&&(Hb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Ib({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Lb({primaryType:r,types:i})}function Vb({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function Hb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Rb({type:e})}jm(),lm(),z(),Ip();function Ub(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Vb({domain:t}),...e.types};Bb({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Wb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Gb({data:n,primaryType:r,types:i})),Fp(om(a))}function Wb({domain:e,types:t}){return Gb({data:e,primaryType:`EIP712Domain`,types:t})}function Gb({data:e,primaryType:t,types:n}){return Fp(Kb({data:e,primaryType:t,types:n}))}function Kb({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[qb({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Xb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return ym(r,i)}function qb({primaryType:e,types:t}){return Fp(bp(Jb({primaryType:e,types:t})))}function Jb({primaryType:e,types:t}){let n=``,r=Yb({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Yb({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Yb({primaryType:e.type,types:t},n);return n}function Xb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Fp(Kb({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Fp(r)];if(n===`string`)return[{type:`bytes32`},Fp(bp(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Xb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Fp(ym(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}rt(),A();let Zb=Ya(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Qb(e){if(typeof e==`string`){if(k(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new tx(e)}else dc(e.authorization)}function $b(e){Qb(e);let t=Qr(k(e,-64,-32)),n=k(e,-t-64,-64),r=k(e,0,-t-64),[i,a,o]=Ka(Zb,n);return{authorization:Ac({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function ex(e){try{return Qb(e),!0}catch{return!1}}var tx=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};qh(),hm(),yp();function nx(e){let t=mm(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&vp(t)>=192)return`legacy`;throw new Uh({serializedType:t})}Yp(),qh(),am(),wf(),sp(),hp(),yp();function rx(e){let t=nx(e);return t===`eip1559`?ox(e):t===`eip2930`?sx(e):t===`eip4844`?ax(e):t===`eip7702`?ix(e):cx(e)}function ix(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Wh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:vp(n),type:`eip7702`};return N(s)&&s!==`0x`&&(h.to=s),N(o)&&o!==`0x`&&(h.gas=L(o)),N(l)&&l!==`0x`&&(h.data=l),N(r)&&(h.nonce=r===`0x`?0:vp(r)),N(c)&&c!==`0x`&&(h.value=L(c)),N(a)&&a!==`0x`&&(h.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(h.accessList=ux(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=dx(d)),rb(h),{...t.length===13?fx(t):void 0,...h}}function ax(e){let t=lx(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new Wh({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:vp(a),to:u,type:`eip4844`};return N(l)&&l!==`0x`&&(S.gas=L(l)),N(f)&&f!==`0x`&&(S.data=f),N(o)&&(S.nonce=o===`0x`?0:vp(o)),N(d)&&d!==`0x`&&(S.value=L(d)),N(m)&&m!==`0x`&&(S.maxFeePerBlobGas=L(m)),N(c)&&c!==`0x`&&(S.maxFeePerGas=L(c)),N(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=L(s)),p.length!==0&&p!==`0x`&&(S.accessList=ux(p)),y&&b&&x&&(S.sidecars=rv({blobs:y,commitments:b,proofs:x})),ib(S),{...r.length===14?fx(r):void 0,...S}}function ox(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Wh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:vp(n),type:`eip1559`};return N(s)&&s!==`0x`&&(m.to=s),N(o)&&o!==`0x`&&(m.gas=L(o)),N(l)&&l!==`0x`&&(m.data=l),N(r)&&(m.nonce=r===`0x`?0:vp(r)),N(c)&&c!==`0x`&&(m.value=L(c)),N(a)&&a!==`0x`&&(m.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(m.accessList=ux(u)),ab(m),{...t.length===12?fx(t):void 0,...m}}function sx(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Wh({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:vp(n),type:`eip2930`};return N(o)&&o!==`0x`&&(p.to=o),N(a)&&a!==`0x`&&(p.gas=L(a)),N(c)&&c!==`0x`&&(p.data=c),N(r)&&(p.nonce=r===`0x`?0:vp(r)),N(s)&&s!==`0x`&&(p.value=L(s)),N(i)&&i!==`0x`&&(p.gasPrice=L(i)),l.length!==0&&l!==`0x`&&(p.accessList=ux(l)),ob(p),{...t.length===11?fx(t):void 0,...p}}function cx(e){let t=wb(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Wh({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(N(a)&&a!==`0x`&&(d.to=a),N(i)&&i!==`0x`&&(d.gas=L(i)),N(s)&&s!==`0x`&&(d.data=s),N(n)&&(d.nonce=n===`0x`?0:vp(n)),N(o)&&o!==`0x`&&(d.value=L(o)),N(r)&&r!==`0x`&&(d.gasPrice=L(r)),sb(d),t.length===6)return d;let f=N(c)&&c!==`0x`?L(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new Vh({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function lx(e){return wb(`0x${e.slice(4)}`,`hex`)}function ux(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!nm(r,{strict:!1}))throw new Jp({address:r});t.push({address:r,storageKeys:i.map(e=>Ob(e)?e:mp(e))})}return t}function dx(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:vp(r),nonce:a===`0x`?0:vp(a),...fx([o,s,c])})}return t}function fx(e){let t=e.slice(-3),n=t[0]===`0x`||L(t[0])===0n?27n:28n;return{r:ap(t[1],{size:32}),s:ap(t[2],{size:32}),v:n,yParity:n===27n?0:1}}I();var px=class extends F{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function mx(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new px({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,`0`);return BigInt(`${i?`-`:``}${n}${r}`)}kv(),Fv(),$f(),I(),rg(),Cv(),Wm(),Kv();async function hx(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return Gv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=Um({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=zg(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>M(e,Oy,`readContract`)({...f===null?{code:Pv}:{address:f},abi:wv,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new Nf;if(!a)throw new ng({data:r});let e=xv({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=zg(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new F(`multicall results mismatch`);return _}rt(),A();function gx(e){if(k(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new yx(e)}function _x(e){let{data:t,signature:n,to:r}=e;return E(qa(Ya(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function vx(e){try{return gx(e),!0}catch{return!1}}var yx=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};uc(),yp(),Pp();function bx({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Ys.Signature(L(e),L(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:kp(o)}kv(),Fv(),rg(),Wv(),Wm(),tm(),mv(),lm(),wf(),yp(),z(),Dy();async function xx(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return N(e)?e:typeof e==`object`&&`r`in e&&`s`in e?bx(e):Sp(e)})();try{if(s===`eoa`)try{if(pv($p(n),await Ug({hash:i,signature:c})))return!0}catch{}return ex(c)?await Sx(e,{...t,multicallAddress:o,signature:c}):await Cx(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(pv($p(n),await Ug({hash:i,signature:c})))return!0}catch{}if(e instanceof Tx)return!1;throw e}}async function Sx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=$b(t.signature);if(await nb(e,{address:n,blockNumber:r,blockTag:i})===cm([`0xef0100`,s.address]))return await wx(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:R(s.r,{size:32}),s:R(s.s,{size:32}),yParity:s.yParity};if(!await _b({address:n,authorization:d}))throw new Tx;let f=await M(e,Oy,`readContract`)({...o?{address:o}:{code:Pv},authorizationList:[d],abi:wv,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Um({abi:Dv,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Tx}async function Cx(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||vx(o)?o:_x({data:i,signature:o,to:r}))(),u=s?{to:s,data:Um({abi:Ov,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Hv({abi:Ov,args:[n,a,l],bytecode:Nv}),...c},{data:d}=await M(e,xy,`call`)(u).catch(e=>{throw e instanceof Zh?new Tx:e});if(_p(d??`0x0`))return!0;throw new Tx}async function wx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await M(e,Oy,`readContract`)({address:n,abi:Dv,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Qh?new Tx:e})).startsWith(`0x1626ba7e`))return!0;throw new Tx}var Tx=class extends Error{};async function Ex(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await M(e,Jy,`sendCalls`)(t);return await M(e,Xy,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}zm(),z(),S_(),A_();async function Dx(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Fy({docsPath:`/docs/actions/wallet/signTransaction`});let a=Rm(n);k_({account:a,...t});let o=await M(e,ov,`getChainId`)({});r!==null&&Ly({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||v_;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:R(o),from:a.address}]},{retryCount:0})}zm();async function Ox(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Fy({docsPath:`/docs/actions/wallet/signTypedData`});let o=Rm(n),s={EIP712Domain:Vb({domain:r}),...t.types};if(Bb({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=zb({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function kx({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=eb();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:bb(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Ax(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>kx({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}I();var jx=class extends F{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};sg(),$v();function Mx(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new jx;let b=Mb(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return kx({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=Zv({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new ag({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}var Nx;function B(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var Px=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Fx=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Nx=globalThis).__zod_globalConfig??(Nx.__zod_globalConfig={});let Ix=globalThis.__zod_globalConfig;function Lx(e){return e&&Object.assign(Ix,e),Ix}function Rx(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function zx(e,t){return typeof t==`bigint`?t.toString():t}function Bx(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Vx(e){return e==null}function Hx(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Ux=Symbol(`evaluating`);function V(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Ux)return r===void 0&&(r=Ux,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let Wx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Gx(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Kx(e){if(Gx(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Gx(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let qx=new Set([`string`,`number`,`symbol`]),Jx=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Yx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Xx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Zx(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Qx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function $x(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function eS(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function tS(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function nS(e){return typeof e==`string`?e:e?.message}function rS(e,t,n){let r=e.message?e.message:nS(e.inst?._zod.def?.error?.(e))??nS(t?.error?.(e))??nS(n.customError?.(e))??nS(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function iS(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function aS(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let oS=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,zx,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},sS=B(`$ZodError`,oS),cS=B(`$ZodError`,oS,{Parent:Error}),lS=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Px;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>rS(e,a,Lx())));throw Wx(t,i?.callee),t}return o.value},uS=lS(cS),dS=(e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>rS(e,a,Lx())));throw Wx(t,i?.callee),t}return o.value})(cS),fS=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Px;return a.issues.length?{success:!1,error:new(e??sS)(a.issues.map(e=>rS(e,i,Lx())))}:{success:!0,data:a.value}})(cS),pS=(e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>rS(e,i,Lx())))}:{success:!0,data:a.value}})(cS),mS=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return lS(e)(t,n,i)})(cS),hS=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},gS=/^-?\\d+n?$/,_S=/^-?\\d+(?:\\.\\d+)?$/,vS=/^(?:true|false)$/i,yS=/^null$/i,bS=/^undefined$/i,xS=B(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),SS=B(`$ZodCheckMaxLength`,(e,t)=>{var n;xS.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Vx(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=iS(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),CS=B(`$ZodCheckMinLength`,(e,t)=>{var n;xS.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Vx(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=iS(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),wS=B(`$ZodCheckStringFormat`,(e,t)=>{var n,r;xS.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),TS=B(`$ZodCheckRegex`,(e,t)=>{wS.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),ES={major:4,minor:4,patch:2},H=B(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ES;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=$x(e),i;for(let a of t){if(a._zod.def.when){if(eS(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new Px;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=$x(e,t))});else{if(e.issues.length===t)continue;r||=$x(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if($x(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Px;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Px;return o.then(e=>t(e,r,a))}return t(o,r,a)}}V(e,`~standard`,()=>({validate:t=>{try{let n=fS(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return pS(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),DS=B(`$ZodString`,(e,t)=>{H.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??hS(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),OS=B(`$ZodNumber`,(e,t)=>{H.init(e,t),e._zod.pattern=e._zod.bag.pattern??_S,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),kS=B(`$ZodBoolean`,(e,t)=>{H.init(e,t),e._zod.pattern=vS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),AS=B(`$ZodBigInt`,(e,t)=>{H.init(e,t),e._zod.pattern=gS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),jS=B(`$ZodUndefined`,(e,t)=>{H.init(e,t),e._zod.pattern=bS,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),MS=B(`$ZodNull`,(e,t)=>{H.init(e,t),e._zod.pattern=yS,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),NS=B(`$ZodUnknown`,(e,t)=>{H.init(e,t),e._zod.parse=e=>e}),PS=B(`$ZodVoid`,(e,t)=>{H.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function FS(e,t,n){e.issues.length&&t.issues.push(...tS(n,e.issues)),t.value[n]=e.value}let IS=B(`$ZodArray`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>FS(t,n,e))):FS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function LS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...tS(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function RS(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Qx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function zS(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>LS(e,n,i,t,u,d))):LS(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let BS=B(`$ZodObject`,(e,t)=>{if(H.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Bx(()=>RS(t));V(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Gx,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>LS(n,t,e,s,r,i))):LS(a,t,e,s,r,i)}return i?zS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function VS(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!$x(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>rS(e,r,Lx())))}),t)}let HS=B(`$ZodUnion`,(e,t)=>{H.init(e,t),V(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),V(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),V(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),V(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Hx(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>VS(t,r,e,i)):VS(o,r,e,i)}}),US=B(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,HS.init(e,t);let n=e._zod.parse;V(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Bx(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Gx(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),WS=B(`$ZodTuple`,(e,t)=>{H.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=GS(n,`optin`),c=GS(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>KS(t,r,e))):KS(a,r,e)}}return o.length?Promise.all(o).then(()=>qS(l,r,n,a,c)):qS(l,r,n,a,c)}});function GS(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function KS(e,t,n){e.issues.length&&t.issues.push(...tS(n,e.issues)),t.value[n]=e.value}function qS(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...tS(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}let JS=B(`$ZodRecord`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Kx(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>rS(e,r,Lx())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...tS(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...tS(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&_S.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>rS(e,r,Lx())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...tS(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...tS(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),YS=B(`$ZodEnum`,(e,t)=>{H.init(e,t);let n=Rx(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>qx.has(typeof e)).map(e=>typeof e==`string`?Yx(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),XS=B(`$ZodLiteral`,(e,t)=>{if(H.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Yx(e):e?Yx(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),ZS=B(`$ZodTransform`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Fx(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new Px;return n.value=i,n}});function QS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let $S=B(`$ZodOptional`,(e,t)=>{H.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,V(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),V(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Hx(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>QS(t,e.value)):QS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),eC=B(`$ZodNullable`,(e,t)=>{H.init(e,t),V(e._zod,`optin`,()=>t.innerType._zod.optin),V(e._zod,`optout`,()=>t.innerType._zod.optout),V(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Hx(e.source)}|null)$`):void 0}),V(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),tC=B(`$ZodPipe`,(e,t)=>{H.init(e,t),V(e._zod,`values`,()=>t.in._zod.values),V(e._zod,`optin`,()=>t.in._zod.optin),V(e._zod,`optout`,()=>t.out._zod.optout),V(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>nC(e,t.in,n)):nC(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>nC(e,t.out,n)):nC(r,t.out,n)}});function nC(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let rC=B(`$ZodCodec`,(e,t)=>{H.init(e,t),V(e._zod,`values`,()=>t.in._zod.values),V(e._zod,`optin`,()=>t.in._zod.optin),V(e._zod,`optout`,()=>t.out._zod.optout),V(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>iC(e,t,n)):iC(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>iC(e,t,n)):iC(r,t,n)}}});function iC(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>aC(e,r,t.out,n)):aC(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>aC(e,r,t.in,n)):aC(e,r,t.in,n)}}function aC(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let oC=B(`$ZodReadonly`,(e,t)=>{H.init(e,t),V(e._zod,`propValues`,()=>t.innerType._zod.propValues),V(e._zod,`values`,()=>t.innerType._zod.values),V(e._zod,`optin`,()=>t.innerType?._zod?.optin),V(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(sC):sC(r)}});function sC(e){return e.value=Object.freeze(e.value),e}let cC=B(`$ZodTemplateLiteral`,(e,t)=>{H.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||Jx.has(typeof e))n.push(Yx(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),lC=B(`$ZodCustom`,(e,t)=>{xS.init(e,t),H.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>uC(t,n,r,e));uC(i,n,r,e)}});function uC(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(aS(e))}}function dC(e,t){return new e({type:`string`,...Zx(t)})}function fC(e,t){return new e({type:`number`,checks:[],...Zx(t)})}function pC(e,t){return new e({type:`boolean`,...Zx(t)})}function mC(e,t){return new e({type:`bigint`,...Zx(t)})}function hC(e,t){return new e({type:`undefined`,...Zx(t)})}function gC(e,t){return new e({type:`null`,...Zx(t)})}function _C(e){return new e({type:`unknown`})}function vC(e,t){return new e({type:`void`,...Zx(t)})}function yC(e,t){return new SS({check:`max_length`,...Zx(t),maximum:e})}function bC(e,t){return new CS({check:`min_length`,...Zx(t),minimum:e})}function xC(e,t){return new TS({check:`string_format`,format:`regex`,...Zx(t),pattern:e})}function SC(e,t,n){let r=Zx(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function CC(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Zx(n)})}let wC=B(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);H.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>uS(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>fS(e,t,n),e.parseAsync=async(t,n)=>dS(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>pS(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Xx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),TC=B(`ZodMiniString`,(e,t)=>{DS.init(e,t),wC.init(e,t)});function U(e){return dC(TC,e)}let EC=B(`ZodMiniNumber`,(e,t)=>{OS.init(e,t),wC.init(e,t)});function DC(e){return fC(EC,e)}let OC=B(`ZodMiniBoolean`,(e,t)=>{kS.init(e,t),wC.init(e,t)});function kC(e){return pC(OC,e)}let AC=B(`ZodMiniBigInt`,(e,t)=>{AS.init(e,t),wC.init(e,t)});function jC(e){return mC(AC,e)}let MC=B(`ZodMiniUndefined`,(e,t)=>{jS.init(e,t),wC.init(e,t)});function NC(e){return hC(MC,e)}let PC=B(`ZodMiniNull`,(e,t)=>{MS.init(e,t),wC.init(e,t)});function FC(e){return gC(PC,e)}let IC=B(`ZodMiniUnknown`,(e,t)=>{NS.init(e,t),wC.init(e,t)});function LC(){return _C(IC)}let RC=B(`ZodMiniVoid`,(e,t)=>{PS.init(e,t),wC.init(e,t)});function zC(e){return vC(RC,e)}let BC=B(`ZodMiniArray`,(e,t)=>{IS.init(e,t),wC.init(e,t)});function W(e,t){return new BC({type:`array`,element:e,...Zx(t)})}let VC=B(`ZodMiniObject`,(e,t)=>{BS.init(e,t),wC.init(e,t),V(e,`shape`,()=>t.shape)});function G(e,t){return new VC({type:`object`,shape:e??{},...Zx(t)})}let HC=B(`ZodMiniUnion`,(e,t)=>{HS.init(e,t),wC.init(e,t)});function UC(e,t){return new HC({type:`union`,options:e,...Zx(t)})}let WC=B(`ZodMiniDiscriminatedUnion`,(e,t)=>{US.init(e,t),wC.init(e,t)});function GC(e,t,n){return new WC({type:`union`,options:t,discriminator:e,...Zx(n)})}let KC=B(`ZodMiniTuple`,(e,t)=>{WS.init(e,t),wC.init(e,t)});function qC(e,t,n){let r=t instanceof H;return new KC({type:`tuple`,items:e,rest:r?t:null,...Zx(r?n:t)})}let JC=B(`ZodMiniRecord`,(e,t)=>{JS.init(e,t),wC.init(e,t)});function YC(e,t,n){return!t||!t._zod?new JC({type:`record`,keyType:U(),valueType:e,...Zx(t)}):new JC({type:`record`,keyType:e,valueType:t,...Zx(n)})}let XC=B(`ZodMiniEnum`,(e,t)=>{YS.init(e,t),wC.init(e,t),e.options=Object.values(t.entries)});function ZC(e,t){return new XC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Zx(t)})}let QC=B(`ZodMiniLiteral`,(e,t)=>{XS.init(e,t),wC.init(e,t)});function K(e,t){return new QC({type:`literal`,values:Array.isArray(e)?e:[e],...Zx(t)})}let $C=B(`ZodMiniTransform`,(e,t)=>{ZS.init(e,t),wC.init(e,t)});function ew(e){return new $C({type:`transform`,transform:e})}let tw=B(`ZodMiniOptional`,(e,t)=>{$S.init(e,t),wC.init(e,t)});function q(e){return new tw({type:`optional`,innerType:e})}let nw=B(`ZodMiniNullable`,(e,t)=>{eC.init(e,t),wC.init(e,t)});function rw(e){return new nw({type:`nullable`,innerType:e})}let iw=B(`ZodMiniPipe`,(e,t)=>{tC.init(e,t),wC.init(e,t)});function aw(e,t){return new iw({type:`pipe`,in:e,out:t})}let ow=B(`ZodMiniCodec`,(e,t)=>{iw.init(e,t),rC.init(e,t)});function sw(e,t,n){return new ow({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let cw=B(`ZodMiniReadonly`,(e,t)=>{oC.init(e,t),wC.init(e,t)});function J(e){return new cw({type:`readonly`,innerType:e})}let lw=B(`ZodMiniTemplateLiteral`,(e,t)=>{cC.init(e,t),wC.init(e,t)});function uw(e,t){return new lw({type:`template_literal`,parts:e,...Zx(t)})}let dw=B(`ZodMiniCustom`,(e,t)=>{lC.init(e,t),wC.init(e,t)});function fw(e,t){return SC(dw,e??(()=>!0),t)}function pw(e,t={}){return CC(dw,e,t)}function mw(e){return e}function hw(e){return e}let Y=()=>uw([`0x`,U()],`Expected address`),gw=()=>sw(UC([X(),jC()]),jC(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:Xr(e),encode:e=>O(e)}),X=()=>uw([`0x`,U()],`Expected hex value`),_w=()=>sw(UC([X(),DC()]),DC(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Qr(e),encode:e=>O(e)}),vw=G({address:Y(),blockHash:X(),blockNumber:gw(),data:X(),logIndex:_w(),removed:kC(),topics:J(W(X())),transactionHash:X(),transactionIndex:_w()}),yw=G({blobGasPrice:q(gw()),blobGasUsed:q(gw()),blockHash:X(),blockNumber:gw(),contractAddress:rw(Y()),cumulativeGasUsed:gw(),effectiveGasPrice:gw(),feePayer:q(Y()),feeToken:q(Y()),from:Y(),gasUsed:gw(),logs:W(vw),logsBloom:X(),root:q(X()),status:sw(X(),ZC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:rw(Y()),transactionHash:X(),transactionIndex:_w(),type:X()}),bw=fw(),xw=UC([K(`secp256k1`),K(`p256`),K(`webAuthn`)]),Sw=G({address:Y(),chainId:gw(),expiry:UC([_w(),FC(),NC()]),keyId:Y(),keyType:xw,limits:q(J(W(G({token:Y(),limit:gw(),period:q(_w())})))),signature:bw}),Cw=G({data:q(X()),to:q(Y()),value:q(gw())}),ww=G({accessList:q(W(G({address:Y(),storageKeys:W(X())}))),calls:q(J(W(Cw))),chainId:q(_w()),data:q(X()),feePayer:q(UC([kC(),U()])),feePayerSignature:q(YC(U(),LC())),feeToken:q(Y()),from:q(Y()),gas:q(gw()),keyAuthorization:q(Sw),maxFeePerGas:q(gw()),maxPriorityFeePerGas:q(gw()),nonce:q(_w()),nonceKey:q(gw()),to:q(Y()),validAfter:q(_w()),validBefore:q(_w()),value:q(gw())});var Tw;(function(e){e.schema=mw({method:K(`eth_accounts`),params:void 0,returns:J(W(Y()))})})(Tw||={});var Ew;(function(e){e.schema=mw({method:K(`eth_chainId`),params:void 0,returns:X()})})(Ew||={});var Dw;(function(e){e.schema=mw({method:K(`eth_requestAccounts`),params:void 0,returns:J(W(Y()))})})(Dw||={});var Ow;(function(e){e.schema=mw({method:K(`eth_sendTransaction`),params:J(qC([ww])),returns:X()})})(Ow||={});var kw;(function(e){let t=G({address:Y(),decimals:DC(),direction:ZC([`incoming`,`outgoing`]),formatted:U(),name:U(),recipients:J(W(Y())),symbol:U(),value:X()}),n=G({decimals:DC(),formatted:U(),name:U(),symbol:U(),token:Y(),value:X()});e.schema=mw({method:K(`eth_fillTransaction`),params:J(qC([ww])),returns:G({capabilities:G({balanceDiffs:q(YC(Y(),J(W(t)))),error:q(G({abiItem:q(YC(U(),LC())),data:q(X()),errorName:U(),message:U()})),fee:q(G({amount:X(),decimals:DC(),formatted:U(),symbol:U()})),requireFunds:q(G({amount:X(),decimals:DC(),formatted:U(),token:Y(),symbol:U()})),autoSwap:q(G({maxIn:n,minOut:n,slippage:DC()})),sponsor:q(G({address:Y(),name:q(U()),url:q(U())})),sponsored:kC()}),tx:YC(U(),LC())})})})(kw||={});var Aw;(function(e){e.schema=mw({method:K(`eth_signTransaction`),params:J(qC([ww])),returns:X()})})(Aw||={});var jw;(function(e){e.schema=mw({method:K(`eth_sendTransactionSync`),params:J(qC([ww])),returns:yw})})(jw||={});var Mw;(function(e){e.schema=mw({method:K(`eth_signTypedData_v4`),params:J(qC([Y(),U()])),returns:X()})})(Mw||={});var Nw;(function(e){e.schema=mw({method:K(`personal_sign`),params:J(qC([X(),Y()])),returns:X()})})(Nw||={});let Pw=q(G({feePayer:q(UC([kC(),U()])),sync:q(kC())}));var Fw;(function(e){e.schema=mw({method:K(`wallet_sendCalls`),params:q(J(qC([G({atomicRequired:q(kC()),calls:J(W(Cw)),capabilities:Pw,chainId:q(_w()),from:q(Y()),version:q(U())})]))),returns:G({atomic:q(kC()),capabilities:Pw,chainId:q(_w()),id:U(),receipts:q(W(yw)),status:q(DC()),version:q(U())})})})(Fw||={});var Iw;(function(e){e.schema=mw({method:K(`wallet_getBalances`),params:q(J(qC([G({account:q(Y()),chainId:q(_w()),tokens:q(J(W(Y())))})]))),returns:J(W(G({address:Y(),balance:gw(),decimals:DC(),display:U(),name:U(),symbol:U()})))})})(Iw||={});var Lw;(function(e){e.schema=mw({method:K(`wallet_getCapabilities`),params:q(J(UC([qC([Y()]),qC([Y(),J(W(X()))])]))),returns:YC(X(),G({accessKeys:q(G({status:UC([K(`supported`),K(`unsupported`)])})),atomic:G({status:UC([K(`supported`),K(`ready`),K(`unsupported`)])}),feePayer:q(G({status:UC([K(`supported`),K(`unsupported`)])}))}))})})(Lw||={});var Rw;(function(e){e.parameters=G({address:q(Y()),chainId:q(gw()),expiry:DC(),keyType:q(xw),limits:q(J(W(G({token:Y(),limit:gw(),period:q(DC())})))),publicKey:q(X()),scopes:q(J(W(G({address:Y(),selector:q(UC([X(),U()])),recipients:q(J(W(Y())))}))))}),e.returns=G({keyAuthorization:Sw,rootAddress:Y()}),e.schema=mw({method:K(`wallet_authorizeAccessKey`),params:J(qC([e.parameters])),returns:e.returns})})(Rw||={});var zw;(function(e){e.parameters=G({address:q(Y()),expiry:DC(),keyType:q(xw),limits:J(W(G({token:Y(),limit:gw(),period:q(DC())}))),publicKey:q(X()),scopes:q(J(W(G({address:Y(),selector:q(UC([X(),U()])),recipients:q(J(W(Y())))}))))})})(zw||={});var Bw;(function(e){e.schema=mw({method:K(`wallet_revokeAccessKey`),params:J(qC([G({address:Y(),accessKeyAddress:Y()})])),returns:void 0})})(Bw||={});var Vw;(function(e){e.authorizeAccessKey=q(Rw.parameters),e.capabilities={request:q(UC([G({digest:q(X()),authorizeAccessKey:e.authorizeAccessKey,method:K(`register`),name:q(U()),userId:q(U())}),G({digest:q(X()),credentialId:q(U()),authorizeAccessKey:e.authorizeAccessKey,method:q(K(`login`)),selectAccount:q(kC())})])),result:G({email:q(rw(U())),keyAuthorization:q(Sw),signature:q(X()),username:q(rw(U()))})},e.schema=mw({method:K(`wallet_connect`),params:q(J(qC([G({capabilities:e.capabilities.request,chainId:q(_w()),version:q(U())})]))),returns:G({accounts:J(W(G({address:Y(),capabilities:e.capabilities.result})))})})})(Vw||={});var Hw;(function(e){let t=q(zw.parameters);e.parameters=G({capabilities:q(UC([G({digest:q(X()),authorizeAccessKey:t,method:K(`register`),name:q(U()),userId:q(U())}),G({digest:q(X()),credentialId:q(U()),authorizeAccessKey:t,method:q(K(`login`)),selectAccount:q(kC())})])),chainId:q(_w()),version:q(U())})})(Hw||={});var Uw;(function(e){e.schema=mw({method:K(`wallet_disconnect`),params:void 0,returns:void 0})})(Uw||={});var Ww;(function(e){e.schema=mw({method:K(`wallet_getCallsStatus`),params:q(J(qC([U()]))),returns:G({atomic:kC(),chainId:_w(),id:U(),receipts:q(W(yw)),status:DC(),version:U()})})})(Ww||={});var Gw;(function(e){e.parameters=G({feePayer:q(UC([kC(),U()])),to:q(Y()),token:q(Y()),value:q(U())}),e.schema=mw({method:K(`wallet_send`),params:q(J(qC([e.parameters]))),returns:G({receipt:yw})})})(Gw||={});var Kw;(function(e){e.schema=mw({method:K(`wallet_switchEthereumChain`),params:J(qC([G({chainId:_w()})])),returns:void 0})})(Kw||={});var qw;(function(e){e.schema=mw({method:K(`wallet_deposit`),params:J(qC([G({address:q(Y()),chainId:q(_w()),displayName:q(U()),token:q(Y()),value:q(U())})])),returns:zC()})})(qw||={}),zw.parameters,Hw.parameters;let Jw=hw([Tw.schema,Ew.schema,kw.schema,Dw.schema,Ow.schema,jw.schema,Aw.schema,Mw.schema,Nw.schema,Rw.schema,Vw.schema,qw.schema,Uw.schema,Iw.schema,Ww.schema,Lw.schema,Bw.schema,Gw.schema,Fw.schema,Kw.schema]),Yw=Cu();function Xw(e){return e.params?G({method:e.method,params:e.params}):G({method:e.method})}let Zw=GC(`method`,Jw.map(Xw));function Qw(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}var $w=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},eT=class extends $w{name=`InvalidChallengeError`;title=`Invalid Challenge`;status=402;type=`https://paymentauth.org/problems/invalid-challenge`;constructor(e={}){let{id:t,reason:n}=e,r=t?` \"${t}\"`:``,i=n?`: ${n}`:``;super(`Challenge${r} is invalid${i}.`)}},tT=class extends $w{name=`PaymentExpiredError`;title=`Payment Expired`;type=`https://paymentauth.org/problems/payment-expired`;constructor(e={}){let{expires:t}=e;super(t?`Payment expired at ${t}.`:`Payment has expired.`)}};function nT(e,t){if(!e)throw new eT({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new eT({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new tT({expires:e})}function rT(e){let t=Uc(e);return JSON.parse(t)}function iT(e){return Vc(Ir(e),{pad:!1,url:!0})}function aT(){return U().check(xC(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function oT(){return U().check(xC(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function sT(){return U().check(xC(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function cT(){return U().check(xC(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let lT=G({description:q(U()),digest:q(U().check(xC(/^sha-256=/,`Invalid digest format`))),expires:q(oT()),id:U(),intent:U(),method:U(),meta:q(YC(U(),U())),opaque:q(U()),realm:U(),request:YC(U(),LC())});function uT(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=e.opaque??(i===void 0?void 0:iT(i)),f=l?CT({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return lT.parse({id:f,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i!==void 0&&{meta:i},...d!==void 0&&{opaque:d}})}function dT(e,t){let n=fT(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=pT(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return uT({...a,request:rT(r),...i&&{opaque:i}},t)}function fT(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!gT(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function pT(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=mT(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function mT(e,t){if(e[t]===`\"`)return hT(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function hT(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function gT(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function _T(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return dT(n,t)}function vT(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return _T(e.headers,t)}function yT(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return bT(e.headers,t)}function bT(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return xT(n,t)}function xT(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return dT(e.slice(r,a).replace(/,\\s*$/,``),t)})}function ST(e){return[e.realm,e.method,e.intent,iT(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?iT(e.meta):``)].join(`|`)}function CT(e,t){let n=ST(e);return zc(Li(hi(t.secretKey),hi(n),{as:`Bytes`}),{url:!0,pad:!1})}function wT(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=AT(n)}return t}function TT(e,t){let n=wT(e),r=IT(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[AT(e)]??1,index:t}));return{definition:r,entries:i,header:DT(i),keys:n}}function ET(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>PT(e,t))}function DT(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${BT(n)}`}).join(`, `)}function OT(e,t){return e.map((e,n)=>{let r=jT(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function kT(e,t,n){let r=new Map;for(let e of t){let t=AT(e);r.has(t)||r.set(t,e)}let i=OT(e.filter(e=>r.has(AT(e))),n)[0];if(i)return{challenge:i,method:r.get(AT(i))}}function AT(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function jT(e,t){let n;for(let r of t){if(!MT(e,r))continue;let t={...r,specificity:NT(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function MT(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function NT(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function PT(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);VT(r,`method`),VT(i,`intent`);let a=1;for(let t of FT(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=RT(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function FT(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function IT(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>AT(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=LT(t,`payment preference \"${e}\"`)}return a}function LT(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return zT(e,t)}function RT(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return zT(Number(e),t)}function zT(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function BT(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function VT(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let HT=Symbol.for(`mppx.fetch.wrapper`),UT;function WT(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??TT(i),s=XT(r),c=async(e,t)=>{let r=YT(e,t?.headers),c=r.has(`Accept-Payment`),l=$T(r,o),u=JT(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=yT(d),g=kT(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g;_.expires&&nT(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>QT(_,v,e??f)}):void 0)??await QT(_,v,f);return ZT(y),s(u.input,{...m,headers:qT(u.headers,y)})};return c[HT]=s,c}function GT(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);UT||=globalThis.fetch,globalThis.fetch=WT({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(nE()?`same-origin`:`always`),fetch:globalThis.fetch})}function KT(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function qT(e,t){let n=KT(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function JT(e,t,n,r,i,a){let o=!!r&&!i&&eE(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function YT(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function XT(e){let t=e;for(;t[HT];)t=t[HT];return t}function ZT(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function QT(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function $T(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:ET(n),header:n}}catch{return t}}function eE(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=rE(e);return t===`same-origin`?nE()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>tE(n,e))}function tE(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function nE(){return globalThis.location!==void 0}function rE(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,nE()?globalThis.location.href:void 0)}var iE=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},aE=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function oE(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new iE;try{let e=Uc(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=sE(r);return{challenge:lT.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:rT(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new aE}}function sE(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!cE(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:iT(e)}}function cE(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function lE(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:iT(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:iT(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${Vc(JSON.stringify(o),{pad:!1,url:!0})}`}function uE(e){return e}function dE(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}rt(),A(),Br();let fE=`0x01`,pE=`0x02`,mE=`0x03`,hE=`0x04`,gE=`0x7777777777777777777777777777777777777777777777777777777777777777`;function _E(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:_E({...e,signature:t.inner}):na(vE(e))}function vE(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return gl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return vE({payload:t,signature:n.inner})}}function yE(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?k(e,0,-Jr(gE)):e;if(Jr(t)===65){let e=pc(t);return dc(e),{signature:e,type:`secp256k1`}}let n=k(t,0,1),r=k(t,1),i=Jr(r);if(n===fE){if(i!==129)throw new DE({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:Xr(k(r,64,96)),y:Xr(k(r,96,128))},prehash:Qr(k(r,128,129))!==0,signature:{r:Xr(k(r,0,32)),s:Xr(k(r,32,64))},type:`p256`}}if(n===pE){if(i<128)throw new DE({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=k(r,0,e),a,o;for(let t=37;t<e;t++){let e=$r(k(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=k(n,0,t),o=e;break}catch{}}if(!a||!o)throw new DE({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:Xr(k(r,e+64,e+96)),y:Xr(k(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:Xr(k(r,e,e+32)),s:Xr(k(r,e+32,e+64))},type:`webAuthn`}}if(n===mE||n===hE)return{userAddress:k(r,0,20),inner:yE(k(r,20)),type:`keychain`,version:n===hE?`v2`:`v1`};throw new DE({reason:`Unknown signature type identifier: ${n}. Expected ${fE} (P256), ${pE} (WebAuthn), ${mE} (Keychain V1), or ${hE} (Keychain V2)`,serialized:t})}function bE(e,t){if(typeof e==`string`)return yE(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=SE(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:na(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:na(gl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function xE(e){if(e.type===`secp256k1`)return{signature:_c(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Jr(t),r,i;for(let e=37;e<n;e++){let n=$r(k(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=k(t,0,e),i=n;break}catch{}}if(!r||!i)throw new DE({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:xE(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new EE({envelope:e})}function SE(e){if(typeof e!=`object`||!e)throw new EE({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new EE({envelope:e})}function CE(e,t={}){let n=SE(e);if(n===`secp256k1`)return E(yc(e.signature),t.magic?gE:`0x`);if(n===`p256`){let n=e;return E(fE,O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),O(+!!n.prehash,{size:1}),t.magic?gE:`0x`)}if(n===`webAuthn`){let n=e;return E(pE,E(n.metadata.authenticatorData,Wr(n.metadata.clientDataJSON)),O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),t.magic?gE:`0x`)}if(n===`keychain`){let n=e;return E(n.version===`v1`?mE:hE,n.userAddress,CE(n.inner),t.magic?gE:`0x`)}throw new EE({envelope:e})}function wE(e){let t=SE(e);if(t===`secp256k1`)return{...bc(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=E(t.metadata.authenticatorData,Wr(t.metadata.clientDataJSON));return{pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:wE(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new EE({envelope:e})}function TE(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return na(t.publicKey)})();if(!r)return!1;let i=bE(e);if(i.type===`secp256k1`)return r?vl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return ra(na(i.publicKey),r)?Bl({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return ra(na(i.publicKey),r)?Hu({challenge:Hr(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new OE(`Unable to verify signature envelope of type \"${i.type}\".`)}var EE=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Rr(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},DE=class extends T{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},OE=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};rt(),A();function kE(e){return e.startsWith(`tempo`)?AE(e).address:e}function AE(e){if(!e.startsWith(`tempox`))throw new jE({address:e});let t=e.slice(6);return Vr(t,{strict:!0}),{address:ea(t)}}var jE=class extends T{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};A();function ME(e,t={}){if(typeof e.chainId==`string`)return NE(e);let n={...e,address:kE(e.address)};return t.signature?{...n,signature:t.signature}:n}function NE(e){let{address:t,chainId:n,nonce:r}=e,i=xE(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function PE(e){return e.map(e=>NE(e))}function FE(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=yE(i)),ME(a)}function IE(e){let t=[];for(let n of e)t.push(FE(n));return t}function LE(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:O(n),nonce:O(r),signature:wE(i)}}function RE(e){return e.map(e=>LE(e))}function zE(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?CE(e.signature):void 0;return[n?O(n):`0x`,t,r?O(r):`0x`,...i?[i]:[]]}function BE(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(zE(n));return t}A();function VE(e,t={}){if(`keyId`in e)return HE(e);let n=e,r={...n,address:kE(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:kE(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:kE(e.address),selector:$E(e.selector),...e.recipients?{recipients:e.recipients.map(e=>kE(e))}:{}}))}:{}};return t.signature?{...r,signature:bE(t.signature)}:r}function HE(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=xE(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:QE(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:Xr(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&ZE(e.period)>0?{period:ZE(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function UE(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:ZE(o)||void 0,type:l,chainId:r===`0x`?0n:Xr(r),...o===void 0?{}:{expiry:ZE(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:XE(n),...r===void 0?{}:{period:ZE(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=yE(n)),VE(u)}function WE(e){return GE(e)}function GE(e){let[t]=qE(e);return Ii(mo(t))}function KE(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:$E(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:O(r),expiry:typeof i==`number`?O(i):null,keyId:kE(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:O(t),...n?{period:YE(n)}:{}})),signature:wE(s),...c?{allowedCalls:c}:{}}}function qE(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?CE(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,JE(e.limit)];return e.period&&e.period>0&&t.push(YE(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([$E(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[JE(n),s,t,i!=null&&i!==0||c||l?YE(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function JE(e){return e===0n?`0x`:O(e)}function YE(e){return e===0?`0x`:O(e)}function XE(e){return e===`0x`?0n:BigInt(e)}function ZE(e){return e===`0x`?0:Qr(e)}function QE(e){return typeof e==`string`?e:Array.isArray(e)?D(new Uint8Array(e)):e}function $E(e){if(e)return e.startsWith(`0x`)?e:fa(e)}A();let eD=`0x20c0`;function tD(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):nD(e)}function nD(e){let t=kE(e);if(!t.toLowerCase().startsWith(eD))throw Error(`invalid tip20 address.`);return Xr(k(t,6))}function Z(e){if(typeof e==`string`){let t=kE(e);return $i(t),t}return E(eD,O(e,{size:18}))}A();let rD={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function iD(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ii(Wr(rD[e]??e))}let aD={...Wc,tempo:`0x76`},oD={...Gc,\"0x76\":`tempo`};function sD(e,t={}){if(!e)return null;let n=Kc(e);return n.type=oD[e.type],e.aaAuthorizationList&&(n.authorizationList=PE(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=xE(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=HE(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=_c(e.feePayerSignature),n.feePayerSignature.v=Cc(n.feePayerSignature.yParity)),n}A();function cD(e){let t=wu({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=RE(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?kE(e.to):e.to,value:e.value?O(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?kE(e.to):void 0,value:e.value?O(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=Z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=KE(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=O(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=O(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return qr(6);if(typeof e.nonceKey==`bigint`)return O(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=aD.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}rt(),A();let lD=`tempo`;function uD(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new _D;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new vD({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&$i(e.to,{strict:!1});if(n<=0)throw new ku({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Ou({feeCap:r});if(i&&r&&i>r)throw new ju({maxFeePerGas:r,maxPriorityFeePerGas:i})}function dD(e){let t=so(k(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new Au({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:lD});let y={chainId:Number(n),type:lD};ei(a)&&a!==`0x`&&(y.gas=BigInt(a)),ei(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),ei(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),ei(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),ei(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),ei(u)&&u!==`0x`&&(y.validBefore=Number(u)),ei(d)&&d!==`0x`&&(y.validAfter=Number(d)),ei(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=io(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=IE(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||ia(p)?(y.feePayerSignature=null,ia(p)&&(y.from=p)):y.feePayerSignature=vc(p)),_&&(y.keyAuthorization=UE(_));let b=v?yE(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=_E({payload:mD(fD(y)),signature:b,root:!0})}catch{}return uD(y),y}function fD(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?dD(e):e;return i.from&&=kE(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:kE(e.to)}:{}})),uD(i),{...i,...r?{signature:bE(r)}:{},...n?{feePayerSignature:hc(n)}:{},type:`tempo`}}function pD(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;uD(e);let h=ao(n),g=t.signature||e.signature,_=BE(r),v=i.map(e=>[e.to?kE(e.to):`0x`,e.value?O(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=bE(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return na(t.publicKey);if(t.type===`secp256k1`)return hl({payload:mD(fD(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?xc(n):`0x`})(),x=[O(a),f?O(f):`0x`,d?O(d):`0x`,s?O(s):`0x`,v,h,u?O(u):`0x`,l?O(l):`0x`,typeof p==`number`?O(p):`0x`,typeof m==`number`?O(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?Z(o):`0x`,b,_,...c?[qE(c)]:[],...g?[CE(bE(g))]:[]];return E(t.format===`feePayer`?`0x78`:`0x76`,mo(x))}function mD(e,t={}){let n=hD(e,{presign:!0});return t.from?Ii(E(`0x04`,n,kE(t.from))):n}function hD(e,t={}){return Ii(pD({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function gD(e,t){let n=kE(t.sender);return Ii(pD({...e,signature:void 0},{sender:n,format:`feePayer`}))}var _D=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},vD=class extends T{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};A();function yD(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:iv(e)}function bD(e){try{return yD(e)===`tempo`}catch{return!1}}function xD(e){let t=k(e,0,1);return t===`0x76`||t===`0x78`?CD(e):rx(e)}async function SD(e,t){if(!bD(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return lb(e,{r:O(n,{size:32}),s:O(r,{size:32}),yParity:i})}return lb(e,t)}if(yD(e)===`tempo`)return wD(e,t);throw Error(`Unsupported transaction type`)}function CD(e){let{feePayerSignature:t,nonce:n,...r}=dD(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:O(t.r,{size:32}),s:O(t.s,{size:32}),yParity:t.yParity}}}async function wD(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return bE({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=fD(c,{signature:n}),r=gD(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return hl({payload:mD(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return pD(t,{feePayerSignature:hc(await e.feePayer.sign({hash:r}))})}return i===!0?n?pD(c,{format:`feePayer`,sender:e.from,signature:n}):pD(c,{feePayerSignature:null}):pD({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}A(),zm(),S_();function TD(e){if(!bD(e))return I_(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=sD(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:O(t.r,{size:32}),s:O(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:aD[i.type],type:i.type}}function ED(e){return Gy(e)}function DD(e,t){let n=e,r=n.account?Rm(n.account):void 0;if(!bD(n))return v_(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=cD({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?Rm(n.feePayer):n.feePayer}:{}}}let OD=new Map;async function kD(e){OD.set(e,(OD.get(e)??0)+1),await Promise.resolve();let t=(OD.get(e)??0)>1;return queueMicrotask(()=>{let t=OD.get(e)??0;t<=1?OD.delete(e):OD.set(e,t-1)}),t}O_(),S_();let AD={blockTime:1e3,extendSchema:Cb(),formatters:{transaction:L_({exclude:[`aaAuthorizationList`],format:TD}),transactionReceipt:Ky({format:ED}),transactionRequest:x_({format:DD})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await kD(e):!1})()?(n.nonceKey=D_,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>SD(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=yE(i);if(a.type!==`keychain`){let i=await nb(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return TE(a,{address:n,payload:r})}}return await M(e,xx,`verifyHash`)({...t,chain:null})}},jD=Sb({...AD,id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),MD=Sb({...AD,id:31318,name:`Tempo Devnet`,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.devnet.tempo.xyz`}},nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.devnet.tempoxyz.dev`],webSocket:[`wss://rpc.devnet.tempoxyz.dev`]}}}),ND=Sb({...AD,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),PD=Sb({...AD,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),Q=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],FD=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]}],ID=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];A(),zm(),Ip();function LD(e){let{access:t}=e;return t?GD(e):WD(e)}function RD(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Rl({privateKey:e});return LD({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Bu({...t,challenge:n,rpId:r,origin:i});return CE({metadata:a,signature:zl({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function zD(e,t={}){let{access:n,internal_version:r}=t,i=Rl({privateKey:e});return LD({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return CE({signature:zl({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function BD(e,t={}){let{access:n,internal_version:r}=t;return LD({access:n,internal_version:r,keyType:`secp256k1`,publicKey:ml({privateKey:e}),async sign(t){let{hash:n}=t;return yc(_l({payload:n,privateKey:e}))}})}function VD(e,t={}){let{id:n}=e,r=Wi(e.publicKey);return LD({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Vu({...t,challenge:e,credentialId:n});return CE({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function HD(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return LD({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return CE({signature:await Wu({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function UD(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??na(e.publicKey),o=Ki(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Fp(E(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?CE(bE({userAddress:n,inner:bE(o),type:`keychain`,version:i})):t===`secp256k1`?o:E(o,gE)}return{address:ea(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=bE(await s({hash:Yg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:O(a,{size:32}),s:O(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Fb(t)})},async signTransaction(e,t){let{serializer:n=SD}=t??{};return await n(e,bE(await s({hash:Fp(await n(e))})))},async signTypedData(e){return await s({hash:Ub(e)})},publicKey:o,source:r,type:`local`}}function WD(e){let t=UD(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return VE({address:o,chainId:r,expiry:i,limits:a,signature:bE(await t.sign({hash:WE({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function GD(e){let{access:t}=e,{address:n}=Rm(t);return{...UD({...e,parentAddress:n}),accessKeyAddress:na(e.publicKey),source:`accessKey`}}let KD=`0xdec0000000000000000000000000000000000000`;function $(e){return{...e,data:Um(e),to:e.address}}A(),zm();async function qD(e,t){return qD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return $({address:KD,abi:FD,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(qD||={});async function JD(e,t){return JD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:KD,abi:FD,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(JD||={});async function YD(e,t){return YD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:KD,abi:FD,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(YD||={});async function XD(e,t){return XD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return $({address:KD,abi:FD,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(XD||={});async function ZD(e,t){let{account:n=e.account,token:r,...i}=t,a=n?Rm(n).address:void 0;if(!a)throw Error(`account is required.`);return Oy(e,{...i,...ZD.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:KD,abi:FD,args:[t,n],functionName:`balanceOf`})}e.call=t})(ZD||={});async function QD(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Oy(e,{...a,...QD.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(QD||={});async function $D(e,t){let{orderId:n,...r}=t;return Oy(e,{...r,...$D.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return $({address:KD,abi:FD,args:[t],functionName:`getOrder`})}e.call=t})($D||={});async function eO(e,t){let{base:n,quote:r,...i}=t;return Oy(e,{...i,...eO.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return $({address:KD,abi:FD,args:[sO(t,n)],functionName:`books`})}e.call=t})(eO||={});async function tO(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Oy(e,{...a,...tO.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(tO||={});async function nO(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Oy(e,{...a,...nO.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(nO||={});async function rO(e,t){return rO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return $({address:KD,abi:FD,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(rO||={});async function iO(e,t){return iO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return $({address:KD,abi:FD,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=yv({abi:FD,logs:e,eventName:`OrderPlaced`,strict:!0}).find(e=>e.args.isFlipOrder);if(!t)throw Error(\"`OrderPlaced` event (flip order) not found.\");return t}e.extractEvent=r})(iO||={});async function aO(e,t){return aO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return $({address:KD,abi:FD,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(aO||={});async function oO(e,t){return oO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return $({address:KD,abi:FD,functionName:`withdraw`,args:[t,n]})}e.call=n})(oO||={});function sO(e,t){return Ii(E(e,t))}A(),zm(),Wm();async function cO(e,t){let{token:n,...r}=t;return cO.inner(Vy,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(cO||={});async function lO(e,t){return lO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(lO||={});async function uO(e,t){return uO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Gr(n,32)]}:{functionName:`burn`,args:[t]};return $({address:Z(r),abi:Q,...i})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(uO||={});async function dO(e,t){return dO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return $({address:Z(t),abi:Q,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(dO||={});async function fO(e,t){return fO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?Rm(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=qr(32)}=e;return $({address:`0x20fc000000000000000000000000000000000000`,abi:ID,args:[t,n,r,Z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=yv({abi:ID,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(fO||={});async function pO(e,t){let{account:n=e.account}=t,r=n?Rm(n).address:void 0;if(!r)throw Error(`account is required.`);return Oy(e,{...t,...pO.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`allowance`,args:[t,n]})}e.call=t})(pO||={});async function mO(e,t){let{account:n=e.account,...r}=t,i=n?Rm(n).address:void 0;if(!i)throw Error(`account is required.`);return Oy(e,{...r,...mO.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`balanceOf`,args:[t]})}e.call=t})(mO||={});async function hO(e,t){let{token:n,...r}=t,i=Z(n),a=Q;return tD(n)===nD(`0x20c0000000000000000000000000000000000000`)?hx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):hx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function gO(e,t){return Oy(e,{...t,...gO.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`getRoleAdmin`,args:[iD(t)]})}e.call=t})(gO||={});async function _O(e,t){let{account:n=e.account}=t,r=n?Rm(n).address:void 0;if(!r)throw Error(`account is required.`);return Oy(e,{...t,..._O.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`hasRole`,args:[t,iD(n)]})}e.call=t})(_O||={});async function vO(e,t){return vO.inner(By,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Um(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=iD(r);return $({address:Z(t),abi:Q,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(vO||={});async function yO(e,t){return yO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Gr(r,32)]}:{functionName:`mint`,args:[t,n]};return $({address:Z(i),abi:Q,...a})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(yO||={});async function bO(e,t){return bO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(bO||={});async function xO(e,t){return xO.inner(By,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Um(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=iD(n);return $({address:Z(t),abi:Q,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(xO||={});async function SO(e,t){return SO.inner(By,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Um(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=iD(r);return $({address:Z(t),abi:Q,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(SO||={});async function CO(e,t){return CO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return $({address:Z(t),abi:Q,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(CO||={});async function wO(e,t){return wO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=iD(n),a=iD(r);return $({address:Z(t),abi:Q,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(wO||={});async function TO(e,t){return TO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Gr(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Gr(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return $({address:Z(i),abi:Q,...o})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(TO||={});async function EO(e,t){return EO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(EO||={});async function DO(e,t){return DO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return $({address:Z(t),abi:Q,functionName:`setNextQuoteToken`,args:[Z(n)]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(DO||={});async function OO(e,t){return OO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(OO||={});function kO(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return kx({key:kO.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(xD(o).feePayerSignature===null){if(r===`sign-and-broadcast`)return a.request({method:e,params:t},n);{let t=await a.request({method:`eth_signRawTransaction`,params:[o]},n);return i.request({method:e,params:[t]},n)}}}return await i.request({method:e,params:t},n)},type:kO.type})}}function AO(e={}){let{account:t}=e;return(e,{account:n}={})=>{let r=n??t;if(!r){if(!e.account)throw Error(\"No `account` provided. Pass `account` to parameters or context.\");return e.account}return Rm(r)}}function jO(e){let{chain:t,feePayerUrl:n,getClient:r,rpcUrl:i}=e;return r?!t?.serializers&&!n?r:async e=>{let i=await r(e);if(n&&i.transport.key!==`feePayer`){let e=i.transport.url;if(e){let t=tb({chain:i.chain,transport:kO(Mx(e),Mx(n))});Object.assign(i,{transport:t.transport,request:t.request})}}return!t?.serializers||i.chain?.serializers?.transaction?i:Object.assign({},i,{chain:{...t,...i.chain,formatters:i.chain?.formatters??t.formatters,prepareTransactionRequest:i.chain?.prepareTransactionRequest??t.prepareTransactionRequest,serializers:i.chain?.serializers?.transaction?i.chain.serializers:t.serializers}})}:({chainId:e})=>{if(!i)throw Error(\"No `rpcUrl` provided.\");let r=e||Number(Object.keys(i)[0]),a=i[r];if(!a)throw Error(`No \\`rpcUrl\\` configured for \\`chainId\\` (${r}).`);let o=n?kO(Mx(a),Mx(n)):Mx(a);return tb({chain:{...t,id:r},transport:o})}}let MO=k(Ii(hi(`mpp`),{as:`Hex`}),0,4);function NO(e){return Zr(k(Ii(hi(e),{as:`Hex`}),0,10))}function PO(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(Zr(MO),0),i[4]=1,i.set(NO(t),5),n&&i.set(NO(n),15),i.set(FO(r),25),D(i)}function FO(e){return Zr(k(Ii(hi(e),{as:`Hex`}),0,7))}function IO(e,t){return e.toLowerCase()===t.toLowerCase()}let LO={mainnet:4217,testnet:42431},RO={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};LO.mainnet,RO.usdc,LO.testnet,RO.pathUsd;let zO={[LO.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[LO.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},BO={[LO.mainnet]:`https://rpc.tempo.xyz`,[LO.testnet]:`https://rpc.moderato.tempo.xyz`},VO=[RO.pathUsd,RO.usdc];async function HO(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!IO(e,i)),c=await Promise.allSettled([Oy(e,mO.call({account:n,token:i})),...s.map(t=>Oy(e,mO.call({account:n,token:t})))]),l=c[0];if(!(l.status===`fulfilled`&&l.value>=r)){for(let t=0;t<s.length;t++){let n=c[t+1];if(n.status!==`fulfilled`)continue;let a=n.value;if(a<=0n)continue;let l=s[t];try{let t=await QD(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[cO.call({token:l,spender:KD,amount:e}),qD.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new WO({currency:i})}}function UO(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>IO(e,t)))]:t,slippage:e.slippage??1}:!1}var WO=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function GO(e){let t=BigInt(e.amount),n=e.methodDetails?.splits??[],r=n.reduce((e,t)=>e+BigInt(t.amount),0n);if(r>=t)throw Error(`Invalid charge request: split total must be less than total amount.`);let i=t-r;if(i<=0n)throw Error(`Invalid charge request: primary transfer amount must be positive.`);return[{amount:i.toString(),memo:e.methodDetails?.memo,recipient:e.recipient},...n.map(e=>({amount:e.amount,memo:e.memo,recipient:e.recipient}))]}let KO={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function qO(e){return{name:`MPP`,version:`2`,chainId:e}}function JO(e,t){return{challengeId:e,realm:t}}function YO(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let XO=[`push`,`pull`],ZO=G({amount:aT(),memo:q(sT()),recipient:aw(U(),ew(e=>e))}),QO=uE({name:`tempo`,intent:`charge`,schema:{credential:{payload:GC(`type`,[G({hash:sT(),type:K(`hash`)}),G({signature:cT(),type:K(`transaction`)}),G({signature:cT(),type:K(`proof`)})])},request:aw(G({amount:aT(),chainId:q(DC()),currency:U(),decimals:DC(),description:q(U()),externalId:q(U()),feePayer:q(aw(UC([kC(),fw()]),ew(e=>typeof e==`object`?!0:e))),memo:q(sT()),recipient:q(U()),splits:q(W(ZO).check(bC(1),yC(10))),supportedModes:q(W(ZC(XO)).check(bC(1)))}).check(pw(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=mx(e,t),i=n.reduce((e,n)=>e+mx(n.amount,t),0n);return n.every(e=>mx(e.amount,t)>0n)&&i<r},`Invalid splits`)),ew(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:mx(e,n).toString(),...t!==void 0||r!==void 0||i!==void 0||a!==void 0||o!==void 0?{methodDetails:{...t!==void 0&&{chainId:t},...r!==void 0&&{feePayer:r},...i!==void 0&&{memo:i},...a!==void 0&&{splits:a.map(e=>({...e,amount:mx(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),$O=uE({name:`tempo`,intent:`session`,schema:{credential:{payload:GC(`action`,[G({action:K(`open`),authorizedSigner:q(U()),channelId:sT(),cumulativeAmount:aT(),signature:cT(),transaction:cT(),type:K(`transaction`)}),G({action:K(`topUp`),additionalDeposit:aT(),channelId:sT(),transaction:cT(),type:K(`transaction`)}),G({action:K(`voucher`),channelId:sT(),cumulativeAmount:aT(),signature:cT()}),G({action:K(`close`),channelId:sT(),cumulativeAmount:aT(),signature:cT()})])},request:aw(G({amount:aT(),chainId:q(DC()),channelId:q(sT()),currency:U(),decimals:DC(),escrowContract:q(U()),feePayer:q(aw(UC([kC(),fw()]),ew(e=>typeof e==`object`?!0:e))),minVoucherDelta:q(aT()),recipient:q(U()),suggestedDeposit:q(aT()),unitType:U()}).check(pw(({amount:e,decimals:t})=>mx(e,t)>0n,`Session amount must be greater than 0`)),ew(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:mx(e,r).toString(),...s?{suggestedDeposit:mx(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:mx(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function ek(e={}){let{clientId:t}=e,n=jO({chain:jD,getClient:e.getClient,rpcUrl:BO}),r=AO({account:e.account});return dE(QO,{context:G({account:q(fw()),autoSwap:q(fw()),mode:q(ZC(XO))}),async createCredential({challenge:i,context:a}){let o=i.request.methodDetails?.chainId,s=await n({chainId:o}),c=r(s,a),{request:l}=i,{amount:u,methodDetails:d}=l;if(BigInt(u)===0n)return lE({challenge:i,payload:{signature:await Ox(s,{account:c,domain:qO(o),types:KO,primaryType:`Proof`,message:JO(i.id,i.realm)}),type:`proof`},source:YO({address:c.address,chainId:o})});let f=l.currency;if(e.expectedRecipients){let t=new Set(e.expectedRecipients.map(e=>e.toLowerCase())),n=d?.splits;if(n){for(let e of n)if(!t.has(e.recipient.toLowerCase()))throw Error(`Unexpected split recipient: ${e.recipient}`)}}let p=d?.supportedModes??[`pull`,`push`],m=(()=>{let t=a?.mode??e.mode;if(t){if(!p.includes(t))throw Error(`Challenge does not support ${t} mode.`);return t}let n=c.type===`json-rpc`?`push`:`pull`;return p.includes(n)?n:p[0]})(),h=d?.memo?d.memo:PO({challengeId:i.id,clientId:t,serverId:i.realm}),g=GO({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>TO.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=UO(a?.autoSwap??e.autoSwap,VO),v=[...(_?await HO(s,{account:c.address,amountOut:BigInt(u),tokenOut:f,tokenIn:_.tokenIn,slippage:_.slippage}):void 0)??[],...g],y=(()=>{let e=Math.floor(Date.now()/1e3)+25;if(!i.expires)return e;let t=Math.floor(new Date(i.expires).getTime()/1e3);return Math.min(e,t)})();if(m===`push`){let{receipts:e}=await Ex(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return lE({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await dv(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,lE({challenge:i,payload:{signature:await Dx(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function tk(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let nk={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function rk(e,t,n,r,i,a){let o=await Ox(e,{account:t,domain:tk(r,i),types:nk,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=bE(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return yc(e.inner.signature)}catch{}return o}function ik(e){return Ii(qa(Ya([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let ak=[{type:`function`,name:`CLOSE_GRACE_PERIOD`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`VOUCHER_TYPEHASH`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`channels`,inputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`close`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`computeChannelId`,inputs:[{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`domainSeparator`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`eip712Domain`,inputs:[],outputs:[{name:`fields`,type:`bytes1`,internalType:`bytes1`},{name:`name`,type:`string`,internalType:`string`},{name:`version`,type:`string`,internalType:`string`},{name:`chainId`,type:`uint256`,internalType:`uint256`},{name:`verifyingContract`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`extensions`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`view`},{type:`function`,name:`getChannel`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`tuple`,internalType:`struct TempoStreamChannel.Channel`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getChannelsBatch`,inputs:[{name:`channelIds`,type:`bytes32[]`,internalType:`bytes32[]`}],outputs:[{name:`channelStates`,type:`tuple[]`,internalType:`struct TempoStreamChannel.Channel[]`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getVoucherDigest`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`open`,inputs:[{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`requestClose`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settle`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`topUp`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`additionalDeposit`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ChannelClosed`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`settledToPayee`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`refundedToPayer`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`ChannelExpired`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`ChannelOpened`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`token`,type:`address`,indexed:!1,internalType:`address`},{name:`authorizedSigner`,type:`address`,indexed:!1,internalType:`address`},{name:`salt`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`deposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`CloseRequestCancelled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`CloseRequested`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`closeGraceEnd`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`cumulativeAmount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`deltaPaid`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newSettled`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TopUp`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`additionalDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`error`,name:`AmountExceedsDeposit`,inputs:[]},{type:`error`,name:`AmountNotIncreasing`,inputs:[]},{type:`error`,name:`ChannelAlreadyExists`,inputs:[]},{type:`error`,name:`ChannelFinalized`,inputs:[]},{type:`error`,name:`ChannelNotFound`,inputs:[]},{type:`error`,name:`CloseNotReady`,inputs:[]},{type:`error`,name:`DepositOverflow`,inputs:[]},{type:`error`,name:`InvalidPayee`,inputs:[]},{type:`error`,name:`InvalidSignature`,inputs:[]},{type:`error`,name:`NotPayee`,inputs:[]},{type:`error`,name:`NotPayer`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]}];async function ok(e,t,n){return Oy(e,{address:t,abi:ak,functionName:`getChannel`,args:[n]})}Pm({abi:ak,name:`open`}),Pm({abi:ak,name:`topUp`});function sk(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??zO[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function ck(e,t,n,r){return lE({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function lk(e,t,n,r,i,a,o){let s=await rk(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function uk(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=qr(32),f=ik({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Um({abi:Q,functionName:`approve`,args:[r,o]}),m=Um({abi:ak,functionName:`open`,args:[i,a,o,d,u]}),h=await dv(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await Dx(e,h),_=await rk(e,t,{channelId:f,cumulativeAmount:s},r,c,n.authorizedSigner);return{entry:{channelId:f,salt:d,cumulativeAmount:s,escrowContract:r,chainId:c,opened:!0},payload:{action:`open`,type:`transaction`,channelId:f,transaction:g,authorizedSigner:u,cumulativeAmount:s.toString(),signature:_}}}async function dk(e,t,n,r){try{let i=await ok(e,t,n);if(i.deposit>0n&&!i.finalized)return{channelId:n,salt:`0x`,cumulativeAmount:i.settled,escrowContract:t,chainId:r,opened:!0}}catch{}}let fk=G({account:q(fw()),action:q(ZC([`open`,`topUp`,`voucher`,`close`])),channelId:q(U()),cumulativeAmount:q(aT()),cumulativeAmountRaw:q(U()),transaction:q(U()),authorizedSigner:q(U()),additionalDeposit:q(aT()),additionalDepositRaw:q(U()),depositRaw:q(U())});function pk(e={}){let{decimals:t=6}=e,n=jO({chain:jD,getClient:e.getClient,rpcUrl:BO}),r=AO({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:mx(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return sk(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return mx(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),w=u(v,y,_),te=s.get(w);if(!te){let e=p?.channelId??m?.channelId;if(e){let n=await dk(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?mx(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(w,n),c.set(n.channelId,w),o.set(n.channelId,_),te=n,l(te)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(te?.opened)te.cumulativeAmount+=b,ne=await lk(g,f,te.channelId,te.cumulativeAmount,_,h,C),l(te);else{let e=await uk(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(w,e.entry),c.set(e.entry.channelId,w),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return ck(r,ne,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?mx(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?mx(a.additionalDeposit,t):void 0,x=d(e,u,v);o.set(v,x);let S;switch(p){case`open`:{if(!h)throw Error(`transaction required for open action`);if(y===void 0)throw Error(`cumulativeAmount required for open action`);let e=await rk(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`open`,type:`transaction`,channelId:v,transaction:h,authorizedSigner:_??r.address,cumulativeAmount:y.toString(),signature:e};break}case`topUp`:if(!h)throw Error(`transaction required for topUp action`);if(b===void 0)throw Error(`additionalDeposit required for topUp action`);S={action:`topUp`,type:`transaction`,channelId:v,transaction:h,additionalDeposit:b.toString()};break;case`voucher`:{if(y===void 0)throw Error(`cumulativeAmount required for voucher action`);S=await lk(f,r,v,y,x,u,_);let e=c.get(v);if(e){let t=s.get(e);t&&(t.cumulativeAmount=t.cumulativeAmount>y?t.cumulativeAmount:y,l(t))}break}case`close`:{if(y===void 0)throw Error(`cumulativeAmount required for close action`);let e=await rk(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`close`,channelId:v,cumulativeAmount:y.toString(),signature:e};let t=c.get(v);if(t){let e=s.get(t);e&&(e.opened=!1,e.cumulativeAmount=e.cumulativeAmount>y?e.cumulativeAmount:y,l(e))}break}}return ck(e,S,u,r)}return dE($O,{context:fk,async createCredential({challenge:t,context:i}){let o=r(await n({chainId:t.request.methodDetails?.chainId??0}),i);if(!i?.action&&(e.deposit!==void 0||a!==void 0))return f(t,o,i);if(i?.action)return p(t,o,i);throw Error(\"No `action` in context and no `deposit` or `maxDeposit` configured. Either provide context with action/channelId/cumulativeAmount, or configure `deposit`/`maxDeposit` for auto-management.\")}})}function mk(e){let t=Uc(e);return JSON.parse(t)}function hk(e){let t=`message`,n=[];for(let r of e.split(`\n`))r.startsWith(`event: `)?t=r.slice(7).trim():r.startsWith(`data: `)?n.push(r.slice(6)):r===`data:`&&n.push(``);if(n.length===0)return null;let r=n.join(`\n`);switch(t){case`message`:return{type:`message`,data:r};case`payment-need-voucher`:return{type:`payment-need-voucher`,data:JSON.parse(r)};case`payment-receipt`:return{type:`payment-receipt`,data:JSON.parse(r)};default:return{type:`message`,data:r}}}function gk(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function _k(){return JSON.stringify({mpp:`payment-close-request`})}function vk(e){try{let t=JSON.parse(e);return t.mpp===`authorization`&&typeof t.authorization==`string`?{mpp:`authorization`,authorization:t.authorization}:t.mpp===`message`&&typeof t.data==`string`?{mpp:`message`,data:t.data}:t.mpp===`payment-close-request`?{mpp:`payment-close-request`}:t.mpp===`payment-close-ready`&&yk(t.data)?{mpp:`payment-close-ready`,data:t.data}:t.mpp===`payment-error`&&typeof t.status==`number`&&typeof t.message==`string`?{mpp:`payment-error`,status:t.status,message:t.message}:t.mpp===`payment-need-voucher`&&bk(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&yk(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function yk(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function bk(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let xk={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function Sk(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:mx(e.maxDeposit,e.decimals??6),i=null,a=null,o=null,s=0n,c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=0n,g=0n,_=pk({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=WT({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);re(t),re(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function C(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function w(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function ne(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function re(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ie(e){let t=e.headers.get(`Payment-Receipt`),n=t?mk(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ae(e,t){return o=e,ie(await v(e,t))}function oe(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=xk.CLOSED,r=null}if(e===`open`&&(i=xk.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available — call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ae,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ae(e,{...s,headers:{...KT(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=hk(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);re(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let ne=yT(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!ne)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=ne;let ie=await _.createCredential({challenge:ne,context:{}});d=null,c=ne,h=0n,g=BigInt(ne.request.amount);let ae=oE(ie);l=ae.payload.channelId;let se=new n(v,f);u=se;let ce=oe(se),le=e=>{w(Error(e)),te(Error(e)),(se.readyState===xk.CONNECTING||se.readyState===xk.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===ne.id&&e.channelId===l,de=new Promise((e,t)=>{let n=()=>{se.removeEventListener(`error`,r),ce.emit(`open`,{type:`open`}),e()},r=()=>{se.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};se.addEventListener(`open`,n,{once:!0}),se.addEventListener(`error`,r,{once:!0})});return se.addEventListener(`close`,e=>{u===se&&(u=null),c===ne&&(c=null),l===ae.payload.channelId&&(l=null),p=null,w(Error(`WebSocket closed before the payment flow completed.`)),te(Error(`WebSocket closed before the payment flow completed.`)),ce.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),se.addEventListener(`error`,()=>{ce.emit(`error`,{type:`error`})}),se.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=vk(t);if(!n){ce.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,ce.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!ue(n.data)){le(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){le(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),C(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:w(Error(n.message)),te(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){le(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){le(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ne,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(gk(r));break}case`payment-receipt`:if(!ue(n.data)){le(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){le(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{w(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(gk(ie)),await x(),ce.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===xk.OPEN){let t=d??await(async()=>(u.send(_k()),S()))(),r=BigInt(t.spent);if(r>(i.cumulativeAmount>s?i.cumulativeAmount:s))throw Error(`close-ready spent exceeds local voucher state`);let a=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:r.toString()}}),o=r.toString();p=o;try{let t=x(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(gk(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(ne(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return re(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?mk(m):void 0}}}function Ck(e={}){return[ek(e),pk(e)]}(function(e){e.charge=ek,e.session=Sk})(Ck||={});function wk(e){return e}function Tk(){return wk({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return yT(e)},getChallenge(e){return vT(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function Ek(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=Tk()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=TT(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=WT(l);return n&&GT(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=kT(r,o,Dk(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a;c.expires&&nT(c.expires,c.id);let u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function Dk(e,t){return t?typeof t==`string`?ET(t):t:e}function Ok(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress,{accessKeys:i}=n.getState();return i.find(e=>e.address?.toLowerCase()===r.toLowerCase())?.keyAuthorization}async function kk(e={}){let{account:t}=e,n=await Uu();return{accessKey:HD(n,t?{access:t}:void 0),keyPair:n}}function Ak(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.filter(e=>e.address?.toLowerCase()!==r?.toLowerCase())}))}function jk(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.map(e=>e.address.toLowerCase()===r.toLowerCase()?{...e,keyAuthorization:void 0}:e)}))}function Mk(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o={address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,scopes:n.scopes},s=i?{...o,privateKey:i}:r?{...o,keyPair:r}:{...o};a.setState(e=>({accessKeys:[s,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function Nk(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new au({message:`Account \"${n}\" not found.`}):new su({message:`No active account.`});if(t){let t=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(t){if(t.expiry&&t.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(e=>e!==t)});else if(Ik(t,e))return Pk(t)}}return Fk(l,{signable:r})}function Pk(e){if(`keyPair`in e&&e.keyPair)return HD(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return BD(e.privateKey,{access:e.access});case`p256`:return zD(e.privateKey,{access:e.access})}throw new au({message:`External access key cannot be hydrated for signing.`})}function Fk(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new au({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return BD(e.privateKey);case`p256`:return zD(e.privateKey);case`webCrypto`:return HD(e.keyPair);case`webAuthn`:return VD(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return RD(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new au({message:`Unknown key type.`})}}function Ik(e,t){return!t.calls||!e.scopes?!0:t.calls.every(t=>{if(!t.to)return!1;let n=t.to.toLowerCase(),r=t.data?.slice(0,10).toLowerCase();return e.scopes.some(e=>e.address.toLowerCase()===n?e.selector?r===(e.selector.startsWith(`0x`)&&e.selector.length===10?e.selector:ro(e.selector)).toLowerCase():!0:!1)})}function Lk(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function Rk(e={}){let{dialog:t=x()?re():ne(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`,theme:o}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),Lk({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=xu();function c(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new iu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new iu({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let l=vu({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:Yw});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await kk();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){Mk({address:e,keyAuthorization:HE(t),keyPair:n,store:i})}async function f(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=Ok(n,{store:i});try{let e=await t(n,r??void 0);return jk(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),Ak(n,{store:i});return}}let p=t({host:n,store:i,theme:o}),m=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);p?.syncRequests(t),t.length===0&&p?.close()});return{cleanup(){m(),p?.destroy()},actions:{async createAccount(e,t){let n=await u(e.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:mS(Vw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await u(e?.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:mS(Vw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await l.request(t)},async signTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=await dv(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await l.request({...t,params:[mS(ww,e)]}):n},async signTypedData(e,t){return await l.request(t)},async sendTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await dv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await l.request({...t,params:[mS(ww,e)]}):n},async sendTransactionSync(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await dv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await l.request({...t,params:[mS(ww,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[mS(Vw.authorizeAccessKey,r?r.request:t)]});return r&&d(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await l.request(t)},async deposit(e,t){return await l.request(t)},async send(e,t){return await l.request({...t,params:[mS(Gw.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let zk=new Map;function Bk(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return Hk(r);if(r?.url)return Hk(r.url)}})(),s=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,c=e??a.getState().chainId,l=`${c}:${i?`p`:``}:${r===!1?`no-fp`:o??``}:${s}`,u=zk.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Mx(),r=i?Vk(i,t):t;u=tb({chain:e,transport:o?Uk(r,o,s):r,pollingInterval:1e3}),zk.set(l,u)}return u}function Vk(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function Hk(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function Uk(e,t,n){return r=>{let i=e(r),a=Mx(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=xD(t);if(`feePayerSignature`in n&&n.feePayerSignature===null){let n=await a.request({method:`eth_signRawTransaction`,params:[t]});return await i.request({method:e,params:[n]})}}}return await i.request({method:e,params:t})}}}}function Wk(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Wk.cache.get(n))return Wk.cache.get(n);let r=e().finally(()=>Wk.cache.delete(n));return Wk.cache.set(n,r),r}Wk.cache=new Map;function Gk(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function Kk(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=Gk(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let qk;function Jk(){return qk||=Kk(`keyval-store`,`keyval`),qk}function Yk(e,t=Jk()){return t(`readonly`,t=>Gk(t.get(e)))}function Xk(e,t,n=Jk()){return n(`readwrite`,n=>(n.put(t,e),Gk(n.transaction)))}function Zk(e,t=Jk()){return t(`readwrite`,t=>(t.delete(e),Gk(t.transaction)))}function Qk(e,t={}){let n=`${t.key??`tempo`}.`;return{getItem:t=>e.getItem(`${n}${t}`),setItem:(t,r)=>e.setItem(`${n}${t}`,r),removeItem:t=>e.removeItem(`${n}${t}`)}}function $k(e={}){let t=typeof indexedDB<`u`?Kk(`tempo`,`store`):void 0;return Qk({async getItem(e){let n=await Yk(e,t);return n===null?null:n},async setItem(e,n){await Xk(e,n,t)},async removeItem(e){await Zk(e,t)}},e)}function eA(e={}){let t=new Map;return Qk({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let tA=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)};function nA(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}let rA=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return rA(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return rA(t)(e)}}}},iA=(e,t)=>(n,r,i)=>{let a={storage:nA(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return rA(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},aA=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},oA=(e=>e?aA(e):aA);function sA(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?$k({key:`tempo`}):eA({key:`tempo`})}=e;return oA(tA(iA(()=>({accessKeys:[],accounts:[],activeAccount:0,chainId:t,requestQueue:[]}),{merge(e,t){let n=e;return{...n,...t,accounts:n.accounts?.map(e=>t.accounts.find(t=>t.address.toLowerCase()===e.address.toLowerCase())??e)??t.accounts,accessKeys:n.accessKeys??t.accessKeys,chainId:n.chainId??t.chainId}},name:`store`,partialize:e=>({accounts:n&&e.accounts.length>n?e.accounts.slice(0,n):e.accounts,activeAccount:e.activeAccount,...r?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:i,version:0})))}async function cA(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function lA(e,t){let n=fS(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new ou({message:`Unsupported method \"${t?.method}\".`}):new ru(-32602,`Invalid params: ${uA(n.error.issues)}`)}return{...t,_decoded:n.data}}function uA(e){return e.flatMap(e=>e.code===`invalid_union`&&e.errors.length>0?e.errors.flatMap(t=>t.map(t=>`${[...e.path,...t.path].join(`.`)}: ${t.code===`invalid_union`&&t.errors.length>0?uA([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let dA=new Set;function fA(e={}){let{adapter:t=Rk(),chains:n=[jD,PD,MD],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?$k():eA()}=e,s=(()=>{if(e.feePayer)return typeof e.feePayer==`string`?{precedence:`fee-payer-first`,url:e.feePayer}:{precedence:e.feePayer.precedence??`fee-payer-first`,url:e.feePayer.url}})(),c=sA({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>Nk({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return Bk(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:s?.precedence}})(),store:c})}let f=t({getAccount:l,getClient:d,storage:o,store:c}),{actions:p}=f,m=_u();c.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>m.emit(`accountsChanged`,c.getState().accounts.map(e=>e.address))),c.subscribe(e=>e.chainId,e=>m.emit(`chainChanged`,O(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:O(c.getState().chainId)}):m.emit(`disconnect`,new su)});function h(){if(c.getState().accounts.length===0)throw new su({message:`No accounts connected.`})}function g(e){if(!f.persistAccounts)return e;let t=[...e];for(let e of c.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function _(e){if(e===!1)return!1;let t=typeof e==`string`?e:s?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let v=Object.assign(vu({...m,async request({method:t,params:r}){return await cA(c),Wk(async()=>{let i;try{i=lA(Zw,{method:t,params:r})}catch(e){if(!(e instanceof ou))throw e;return await Bk(void 0,{chains:n,store:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=c.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return O(c.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await p.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return c.setState({accounts:g(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=_(t.feePayer),a=e=>{let t=d({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return l({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=Ok(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...KE(n)}});return jk(e,{store:c}),r}catch{return Ak(e,{store:c}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.signTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_sendTransactionSync`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransactionSync({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_signTypedData_v4`:{h();let[e,t]=i._decoded.params;return await p.signTypedData({address:e,data:t},i)}case`personal_sign`:{h();let[e,t]=i._decoded.params;return await p.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{h();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=_(t?.feePayer??(s?!0:void 0)),l={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=E(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[mS(ww,l)]}),Gr(O(c.getState().chainId),32),mA);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[mS(ww,l)]}),d=u.transactionHash,f=O(c.getState().chainId),m=E(d,Gr(f,32),mA);return{atomic:!0,capabilities:{sync:a},chainId:f,id:m,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=c.getState(),a=e?.account??t[r]?.address;if(!a)throw new su({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new eu({message:\"`tokens` is required.\"});let s=Bk(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([mO(s,{account:a,token:e}),hO(s,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:O(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(mA.slice(2)))throw Error(\"`id` not supported\");Vr(e);let t=k(e,0,32),r=O(Number(k(e,32,64))),a=await Bk(Number(r),{chains:n,store:c}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=c.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new au({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(O(e.id))):n,o={};for(let e of a)o[O(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??qr(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new ou({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await p.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(h(),!p.revokeAccessKey)throw new ou({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await p.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!p.deposit)throw new ou({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new ou({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new du({message:`Chain ${e} not configured.`});await p.switchChain?.({chainId:e}),c.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Rr({method:t,params:r})})}},{schema:Yw}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return Bk(t,{chains:n,feePayer:r,provider:u,store:c})},store:c});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;dA.has(e)||(dA.add(e),Qw({info:{icon:t.icon??pA,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&Ek({methods:[Ck({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let pA=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,mA=Ii(Wr(`TEMPO_5792`)),hA={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},gA={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},_A={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var vA=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let yA={accent:new vA(`accent`),background:new vA(`background`),border:new vA(`border`),foreground:new vA(`foreground`),muted:new vA(`muted`),negative:new vA(`negative`),positive:new vA(`positive`),surface:new vA(`surface`),fontFamily:new vA(`font-family`),fontSizeBase:new vA(`font-size-base`),radius:new vA(`radius`),spacingUnit:new vA(`spacing-unit`)};String.raw`<style>\n *,\n ::after,\n ::before,\n ::backdrop,\n ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n border-color: ${yA.border};\n }\n html,\n :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n vertical-align: middle;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea,\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type='button'], [type='reset'], [type='submit']),\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n }\n</style>`;async function bA(e){let t=new URL(location.href);t.searchParams.set(gA.serviceWorker,``);let n=await navigator.serviceWorker.register(t.pathname+t.search),r=await new Promise(e=>{let t=n.installing??n.waiting??n.active;if(t?.state===`activated`)return e(t);let r=t??n;r.addEventListener(`statechange`,function t(){let i=n.active;i?.state===`activated`&&(r.removeEventListener(`statechange`,t),e(i))})});await new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>t(),r.postMessage({credential:e},[n.port2])}),location.reload()}function xA(e){let t=document.getElementById(hA.data),n=Lr(t.textContent),r=t.getAttribute(_A.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(_A.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(_A.challengeId),o=a?(i.removeAttribute(_A.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(hA.error)?.remove();return}let t=document.getElementById(hA.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=hA.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:bA,vars:yA}}let SA=xA(`tempo`),CA=String.raw,wA=document.createElement(`style`);wA.textContent=CA`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${SA.vars.spacingUnit} * 8);\n }\n button {\n background: ${SA.vars.accent};\n border-radius: ${SA.vars.radius};\n color: ${SA.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${SA.vars.spacingUnit} * 4) calc(${SA.vars.spacingUnit} * 8);\n width: 100%;\n }\n button:hover:not(:disabled) {\n opacity: 0.85;\n }\n button:disabled {\n cursor: default;\n opacity: 0.5;\n }\n button svg {\n display: inline;\n fill: currentColor;\n height: 0.85em;\n transform: translateY(0.05em);\n vertical-align: baseline;\n width: auto;\n }\n`,SA.root.append(wA);let TA=fA({testnet:SA.challenge.request.methodDetails?.chainId===PD.id||SA.challenge.request.methodDetails?.chainId===ND.id}),EA=document.createElement(`button`);EA.innerHTML=`${SA.text.pay===`Pay`?`Continue with`:SA.text.pay} <svg aria-label=\"Tempo\" viewBox=\"0 0 107 25\" role=\"img\"><path d=\"M8.10464 23.7163H1.82475L7.64513 5.79356H0.201172L1.82475 0.540352H22.5637L20.9401 5.79356H13.8944L8.10464 23.7163Z\"></path><path d=\"M31.474 23.7163H16.5861L24.0607 0.540352H38.8873L37.4782 4.95923H28.8701L27.3078 9.93433H35.6402L34.231 14.2914H25.8681L24.3057 19.2974H32.8525L31.474 23.7163Z\"></path><path d=\"M38.2124 23.7163H33.2192L40.7244 0.540352H49.0567L48.781 13.0245L56.8989 0.540352H66.0277L58.5531 23.7163H52.3039L57.3584 7.86395L46.9736 23.7163H43.267L43.4201 7.80214L38.2124 23.7163Z\"></path><path d=\"M73.057 4.83563L70.6369 12.3137H71.3108C72.8425 12.3137 74.1189 11.9532 75.14 11.2322C76.1612 10.4906 76.8249 9.43991 77.1312 8.08025C77.3967 6.90601 77.2538 6.07167 76.7023 5.57725C76.1509 5.08284 75.2319 4.83563 73.9453 4.83563H73.057ZM66.9915 23.7163H60.7116L68.1862 0.540352H75.814C77.5703 0.540352 79.0816 0.828764 80.3478 1.40559C81.6344 1.96181 82.5738 2.76524 83.166 3.81588C83.7787 4.84592 83.9829 6.05107 83.7787 7.43133C83.5132 9.2442 82.8189 10.8408 81.6956 12.221C80.5724 13.6013 79.1122 14.6725 77.315 15.4347C75.5383 16.1764 73.5471 16.5472 71.3415 16.5472H69.289L66.9915 23.7163Z\"></path><path d=\"M98.747 22.233C96.664 23.4691 94.4481 24.0871 92.0996 24.0871H92.0383C89.9552 24.0871 88.1989 23.6236 86.7693 22.6965C85.3602 21.7489 84.3493 20.4717 83.7366 18.8648C83.1443 17.2579 83.0014 15.4966 83.3077 13.5807C83.6957 11.1704 84.5841 8.94549 85.9728 6.90601C87.3616 4.86653 89.0975 3.23906 91.1805 2.02361C93.2636 0.808164 95.4897 0.200439 97.8587 0.200439H97.9199C100.085 0.200439 101.872 0.663958 103.281 1.591C104.71 2.51803 105.701 3.78498 106.252 5.39185C106.824 6.97811 106.947 8.76008 106.62 10.7378C106.232 13.0657 105.343 15.2596 103.955 17.3197C102.566 19.3592 100.83 20.997 98.747 22.233ZM90.0777 18.2468C90.6292 19.2974 91.589 19.8227 92.9573 19.8227H93.0186C94.1418 19.8227 95.1833 19.4004 96.1432 18.5558C97.1235 17.6905 97.9506 16.5369 98.6245 15.0948C99.3189 13.6528 99.8294 12.0459 100.156 10.2742C100.463 8.54377 100.34 7.15322 99.7886 6.10257C99.2372 5.03133 98.2875 4.49571 96.9397 4.49571H96.8784C95.8369 4.49571 94.826 4.92833 93.8457 5.79356C92.8858 6.6588 92.0485 7.82274 91.3337 9.2854C90.6189 10.7481 90.0982 12.3343 89.7714 14.0442C89.4446 15.7747 89.5468 17.1755 90.0777 18.2468Z\"></path></svg>`,EA.onclick=async()=>{try{SA.error(),EA.disabled=!0;let e=await(async()=>{let e=await TA.request({method:`eth_accounts`});return e.length>0?e.at(0):(await TA.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await Ck({account:e,getClient:e=>{let t=e.chainId??SA.challenge.request.methodDetails?.chainId;return tb({chain:[...TA?.chains??[],PD,ND].find(e=>e.id===t),transport:Ax(TA)})}})[0].createCredential({challenge:SA.challenge,context:{}});await SA.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;SA.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{EA.disabled=!1}},SA.root.appendChild(EA)})();</script>";
2
+ export const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t,n){return n&&v(t,n)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){return y(e)===y(t)}function y(e){let t=e.split(`:`)[0].toLowerCase(),n=t.split(`.`);return n.length<=2?t:n.slice(-2).join(`.`)}function b(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let x={height:440,width:360};function S(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function ee(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function te(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let C,w,T,ne=[];function re(){return typeof window>`u`?ae():S({name:`iframe`},e=>{let{host:t}=e;if(C&&C.host===t){let t=w;return w=e.store,t&&t!==w&&!ne.includes(t)&&ne.push(t),T?.destroy(),T=ie()(e),C.instance.syncTheme(e.theme),C.instance}C?.instance.destroy(),w=e.store,T=ie()(e);let n=!1,r=de(),i=new URL(t);i.searchParams.set(`chainId`,String(w.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),b(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{se(oe(w,ne,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),le(e)}),e.on(`sync`,({valid:e})=>{e===!1&&w?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{fe(),S(),n=!1,l=!0;let e=w?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&T?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,v=()=>ce(w),y=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});y.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,S=()=>{x&&(x=!1,a.removeEventListener(`cancel`,v),a.removeEventListener(`click`,v),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ee=()=>{x||(x=!0,a.addEventListener(`cancel`,v),a.addEventListener(`click`,v),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},re=!1,ae=()=>{re||(re=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},fe=()=>{if(re){re=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},pe={close(){T.close(),n=!1,fe(),S()},destroy(){C?.instance===pe&&(C=void 0),T?.close(),n=!1,S(),fe(),T?.destroy(),f.destroy(),a.remove(),y.disconnect(),w=void 0,T=void 0,ne=[]},open(){n||(n=!0,ae(),ee())},async syncRequests(e){if(l){T.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(te()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){T.syncRequests(e);return}let r=d(),a=window.location.hostname.replace(/^www\\./,``),o=!!(t&&_(t,a,i.hostname));if(!(r||o))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),T.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:ue(w),chainId:w.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return C={host:t,instance:pe},pe})}function ie(e={}){if(typeof window>`u`)return ae();let{size:t=x}=e;return S({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&ce(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>ce(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=de(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),b(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>se(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:ue(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ae(){return S({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function oe(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function se(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function ce(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function le(e){if(!w)return;let{accounts:t}=w.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function ue(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function de(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var fe,pe=o((()=>{fe=`1.2.3`})),me,he=o((()=>{pe(),me=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${fe}`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function ge(e,t){return e.exec(t)?.groups}var _e,ve,ye,be=o((()=>{_e=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ve=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,ye=/^\\(.+?\\).*?$/}));function xe(e){let t=e.type;if(Se.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=xe(i),r<n-1&&(t+=`, `)}let r=ge(Se,e.type);return t+=`)${r?.array||``}`,xe({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Se,Ce=o((()=>{be(),Se=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function we(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=xe(i),r!==n-1&&(t+=`, `)}return t}var Te=o((()=>{Ce()}));function Ee(e){return e.type===`function`?`function ${e.name}(${we(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${we(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${we(e.inputs)})`:e.type===`error`?`error ${e.name}(${we(e.inputs)})`:e.type===`constructor`?`constructor(${we(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var De=o((()=>{Te()}));function Oe(e){return Ve.test(e)}function ke(e){return ge(Ve,e)}function Ae(e){return He.test(e)}function je(e){return ge(He,e)}function Me(e){return Ue.test(e)}function Ne(e){return ge(Ue,e)}function Pe(e){return We.test(e)}function Fe(e){return ge(We,e)}function Ie(e){return Ge.test(e)}function Le(e){return ge(Ge,e)}function Re(e){return Ke.test(e)}function ze(e){return ge(Ke,e)}function Be(e){return qe.test(e)}var Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe=o((()=>{be(),Ve=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,He=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Ue=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,We=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,Ge=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Ke=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,qe=/^receive\\(\\) external payable$/,Je=new Set([`indexed`]),Ye=new Set([`calldata`,`memory`,`storage`])})),Ze,Qe,$e=o((()=>{he(),Ze=class extends me{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Qe=class extends me{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),et,tt,nt,rt,it,at=o((()=>{he(),et=class extends me{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},tt=class extends me{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},nt=class extends me{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},rt=class extends me{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},it=class extends me{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),ot,st,ct,lt=o((()=>{he(),ot=class extends me{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},st=class extends me{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},ct=class extends me{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),ut,dt=o((()=>{he(),ut=class extends me{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),ft,pt=o((()=>{he(),ft=class extends me{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function mt(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var ht,gt=o((()=>{ht=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]])}));function _t(e,t={}){if(Me(e))return vt(e,t);if(Ae(e))return yt(e,t);if(Oe(e))return bt(e,t);if(Ie(e))return xt(e,t);if(Re(e))return St(e);if(Be(e))return{type:`receive`,stateMutability:`payable`};throw new st({signature:e})}function vt(e,t={}){let n=Ne(e);if(!n)throw new ot({signature:e,type:`function`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{modifiers:Ye,structs:t,type:`function`}));let o=[];if(n.returns){let e=wt(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(Ct(e[n],{modifiers:Ye,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function yt(e,t={}){let n=je(e);if(!n)throw new ot({signature:e,type:`event`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{modifiers:Je,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function bt(e,t={}){let n=ke(e);if(!n)throw new ot({signature:e,type:`error`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function xt(e,t={}){let n=Le(e);if(!n)throw new ot({signature:e,type:`constructor`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function St(e){let t=ze(e);if(!t)throw new ot({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function Ct(e,t){let n=mt(e,t?.type,t?.structs);if(ht.has(n))return ht.get(n);let r=ye.test(e),i=ge(r?kt:Ot,e);if(!i)throw new et({param:e});if(i.name&&Et(i.name))throw new tt({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=wt(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Ct(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(At.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Tt(c))throw new Qe({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new nt({param:e,type:t?.type,modifier:i.modifier});if(Ye.has(i.modifier)&&!Dt(c,!!i.array))throw new rt({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return ht.set(n,u),u}function wt(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?wt(o,[...t,n.trim()]):wt(o,t,`${n}${i}`,r);case`(`:return wt(o,t,`${n}${i}`,r+1);case`)`:return wt(o,t,`${n}${i}`,r-1);default:return wt(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new ft({current:n,depth:r});return t.push(n.trim()),t}function Tt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||_e.test(e)||ve.test(e)}function Et(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||_e.test(e)||ve.test(e)||jt.test(e)}function Dt(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var Ot,kt,At,jt,Mt=o((()=>{be(),$e(),at(),lt(),pt(),gt(),Xe(),Ot=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,kt=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,At=/^u?int$/,jt=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function Nt(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Pe(n))continue;let i=Fe(n);if(!i)throw new ot({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=Ct(t,{type:`struct`});o.push(n)}if(!o.length)throw new ct({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Pt(a,t)}return r}function Pt(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(ye.test(i.type))r.push(i);else{let e=ge(Ft,i.type);if(!e?.type)throw new it({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new ut({type:o});r.push({...i,type:`tuple${a??``}`,components:Pt(t[o],t,new Set([...n,o]))})}else if(Tt(o))r.push(i);else throw new Ze({type:o})}}return r}var Ft,It=o((()=>{be(),$e(),at(),lt(),dt(),Xe(),Mt(),Ft=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function Lt(e){let t=Nt(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];Pe(r)||n.push(_t(r,t))}return n}var Rt=o((()=>{Xe(),It(),Mt()})),zt=o((()=>{he(),De(),Ce(),Te(),Rt(),$e(),Xe(),It(),Mt(),at(),lt(),pt(),dt()}));function E(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function Bt(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new yn(e.type);return`${e.name}(${Vt(e.inputs,{includeName:t})})`}function Vt(e,{includeName:t=!1}={}){return e?e.map(e=>Ht(e,{includeName:t})).join(t?`, `:`,`):``}function Ht(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Vt(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Ut=o((()=>{bn()}));function D(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Wt=o((()=>{}));function O(e){return D(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Gt=o((()=>{Wt()})),Kt,qt=o((()=>{Kt=`2.47.6`}));function Jt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Jt(e.cause,t):t?null:e}var Yt,k,A=o((()=>{qt(),Yt={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Kt}`},k=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=Yt.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Yt.version?[`Version: ${Yt.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Kt}walk(e){return Jt(this,e)}}})),Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn=o((()=>{Ut(),Gt(),A(),Xt=class extends k{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},Zt=class extends k{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},Qt=class extends k{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${Vt(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`AbiDecodingDataSizeTooSmallError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=t,this.size=n}},$t=class extends k{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},en=class extends k{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},tn=class extends k{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${O(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},nn=class extends k{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},rn=class extends k{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},an=class extends k{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},on=class extends k{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},sn=class extends k{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},cn=class extends k{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},ln=class extends k{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},un=class extends k{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},dn=class extends k{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},fn=class extends k{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Bt(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${Bt(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},pn=class extends k{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},mn=class extends k{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${Vt(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`DecodeLogDataMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=t,this.params=n,this.size=r}},hn=class extends k{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${Bt(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},gn=class extends k{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},_n=class extends k{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},vn=class extends k{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},yn=class extends k{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),xn,Sn,Cn,wn=o((()=>{A(),xn=class extends k{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},Sn=class extends k{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},Cn=class extends k{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function Tn(e,{dir:t,size:n=32}={}){return typeof e==`string`?En(e,{dir:t,size:n}):Dn(e,{dir:t,size:n})}function En(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new Sn({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function Dn(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new Sn({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var On=o((()=>{wn()})),kn,An,jn,Mn,Nn,Pn=o((()=>{A(),kn=class extends k{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},An=class extends k{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},jn=class extends k{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},Mn=class extends k{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},Nn=class extends k{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function Fn(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var In=o((()=>{}));function Ln(e,{size:t}){if(O(e)>t)throw new Nn({givenSize:O(e),maxSize:t})}function j(e,t={}){let{signed:n}=t;t.size&&Ln(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function Rn(e,t={}){let n=e;if(t.size&&(Ln(n,{size:t.size}),n=Fn(n)),Fn(n)===`0x00`)return!1;if(Fn(n)===`0x01`)return!0;throw new jn(n)}function zn(e,t={}){let n=j(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new kn({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var Bn=o((()=>{Pn(),Gt(),In()}));function Vn(e,t={}){return typeof e==`number`||typeof e==`bigint`?M(e,t):typeof e==`string`?Wn(e,t):typeof e==`boolean`?Hn(e,t):Un(e,t)}function Hn(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ln(n,{size:t.size}),Tn(n,{size:t.size})):n}function Un(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Gn[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ln(r,{size:t.size}),Tn(r,{dir:`right`,size:t.size})):r}function M(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new kn({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?Tn(s,{size:r}):s}function Wn(e,t={}){return Un(Kn.encode(e),t)}var Gn,Kn,N=o((()=>{Pn(),On(),Bn(),Gn=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Kn=new TextEncoder}));function qn(e,t={}){return typeof e==`number`||typeof e==`bigint`?Zn(e,t):typeof e==`boolean`?Jn(e,t):D(e)?Xn(e,t):Qn(e,t)}function Jn(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(Ln(n,{size:t.size}),Tn(n,{size:t.size})):n}function Yn(e){if(e>=er.zero&&e<=er.nine)return e-er.zero;if(e>=er.A&&e<=er.F)return e-(er.A-10);if(e>=er.a&&e<=er.f)return e-(er.a-10)}function Xn(e,t={}){let n=e;t.size&&(Ln(n,{size:t.size}),n=Tn(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=Yn(r.charCodeAt(t++)),i=Yn(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new k(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Zn(e,t){return Xn(M(e,t))}function Qn(e,t={}){let n=$n.encode(e);return typeof t.size==`number`?(Ln(n,{size:t.size}),Tn(n,{dir:`right`,size:t.size})):n}var $n,er,tr=o((()=>{A(),Wt(),On(),Bn(),N(),$n=new TextEncoder,er={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function nr(e,t=!1){return t?{h:Number(e&ar),l:Number(e>>or&ar)}:{h:Number(e>>or&ar)|0,l:Number(e&ar)|0}}function rr(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=nr(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function ir(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr=o((()=>{ar=BigInt(2**32-1),or=BigInt(32),sr=(e,t,n)=>e>>>n,cr=(e,t,n)=>e<<32-n|t>>>n,lr=(e,t,n)=>e>>>n|t<<32-n,ur=(e,t,n)=>e<<32-n|t>>>n,dr=(e,t,n)=>e<<64-n|t>>>n-32,fr=(e,t,n)=>e>>>n-32|t<<64-n,pr=(e,t,n)=>e<<n|t>>>32-n,mr=(e,t,n)=>t<<n|e>>>32-n,hr=(e,t,n)=>t<<n-32|e>>>64-n,gr=(e,t,n)=>e<<n-32|t>>>64-n,_r=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),vr=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,yr=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),br=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,xr=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Sr=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0})),wr,Tr=o((()=>{wr=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function Er(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Dr(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Or(e,...t){if(!Er(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function kr(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);Dr(e.outputLen),Dr(e.blockLen)}function Ar(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function jr(e,t){Or(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function Mr(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Nr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Pr(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Fr(e,t){return e<<32-t|e>>>t}function Ir(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Lr(e){for(let t=0;t<e.length;t++)e[t]=Ir(e[t]);return e}function Rr(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function zr(e){return typeof e==`string`&&(e=Rr(e)),Or(e),e}function Br(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Or(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function Vr(e){let t=t=>e().update(zr(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Hr(e){let t=(t,n)=>e(n).update(zr(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ur(e=32){if(wr&&typeof wr.getRandomValues==`function`)return wr.getRandomValues(new Uint8Array(e));if(wr&&typeof wr.randomBytes==`function`)return Uint8Array.from(wr.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var Wr,Gr,Kr,qr=o((()=>{Tr(),Wr=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Gr=Wr?e=>e:Lr,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Kr=class{}}));function Jr(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=si(a,o,1)^n[r],c=ci(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=ni[n],a=si(t,i,r),o=ci(t,i,r),s=ti[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=ai[r],e[1]^=oi[r]}Nr(n)}var Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi=o((()=>{Cr(),qr(),Yr=BigInt(0),Xr=BigInt(1),Zr=BigInt(2),Qr=BigInt(7),$r=BigInt(256),ei=BigInt(113),ti=[],ni=[],ri=[];for(let e=0,t=Xr,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ti.push(2*(5*r+n)),ni.push((e+1)*(e+2)/2%64);let i=Yr;for(let e=0;e<7;e++)t=(t<<Xr^(t>>Qr)*ei)%$r,t&Zr&&(i^=Xr<<(Xr<<BigInt(e))-Xr);ri.push(i)}ii=rr(ri,!0),ai=ii[0],oi=ii[1],si=(e,t,n)=>n>32?hr(e,t,n):pr(e,t,n),ci=(e,t,n)=>n>32?gr(e,t,n):mr(e,t,n),li=class e extends Kr{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,Dr(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Mr(this.state)}clone(){return this._cloneInto()}keccak(){Gr(this.state32),Jr(this.state32,this.rounds),Gr(this.state32),this.posOut=0,this.pos=0}update(e){Ar(this),e=zr(e),Or(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){Ar(this,!1),Or(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return Dr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(jr(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,Nr(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},ui=(e,t,n)=>Vr(()=>new li(t,e,n)),ui(6,144,224/8),ui(6,136,256/8),ui(6,104,384/8),ui(6,72,512/8),ui(1,144,224/8),di=ui(1,136,256/8),ui(1,104,384/8),ui(1,72,512/8),fi=(e,t,n)=>Hr((r={})=>new li(t,e,r.dkLen===void 0?n:r.dkLen,!0)),fi(31,168,128/8),fi(31,136,256/8)}));function mi(e,t){let n=t||`hex`,r=di(D(e,{strict:!1})?qn(e):e);return n===`bytes`?r:Vn(r)}var hi=o((()=>{pi(),Wt(),tr(),N()}));function gi(e){return _i(e)}var _i,vi=o((()=>{tr(),hi(),_i=e=>mi(qn(e))}));function yi(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new k(`Unable to normalize signature.`);return i}var bi=o((()=>{A()})),xi,Si=o((()=>{zt(),bi(),xi=e=>yi(typeof e==`string`?e:Ee(e))}));function Ci(e){return gi(xi(e))}var wi=o((()=>{vi(),Si()})),Ti,Ei=o((()=>{wi(),Ti=Ci})),Di,Oi=o((()=>{A(),Di=class extends k{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),ki,Ai=o((()=>{ki=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function ji(e,t){if(Ni.has(`${e}.${t}`))return Ni.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=mi(Qn(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return Ni.set(`${e}.${t}`,a),a}function Mi(e,t){if(!Fi(e,{strict:!1}))throw new Di({address:e});return ji(e,t)}var Ni,Pi=o((()=>{Oi(),tr(),hi(),Ai(),Ri(),Ni=new ki(8192)}));function Fi(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Li.has(r))return Li.get(r);let i=Ii.test(e)?e.toLowerCase()===e?!0:n?ji(e)===e:!0:!1;return Li.set(r,i),i}var Ii,Li,Ri=o((()=>{Ai(),Pi(),Ii=/^0x[a-fA-F0-9]{40}$/,Li=new ki(8192)}));function zi(e){return typeof e[0]==`string`?Vi(e):Bi(e)}function Bi(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function Vi(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var Hi=o((()=>{}));function Ui(e,t,n,{strict:r}={}){return D(e,{strict:!1})?qi(e,t,n,{strict:r}):Ki(e,t,n,{strict:r})}function Wi(e,t){if(typeof t==`number`&&t>0&&t>O(e)-1)throw new xn({offset:t,position:`start`,size:O(e)})}function Gi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&O(e)!==n-t)throw new xn({offset:n,position:`end`,size:O(e)})}function Ki(e,t,n,{strict:r}={}){Wi(e,t);let i=e.slice(t,n);return r&&Gi(i,t,n),i}function qi(e,t,n,{strict:r}={}){Wi(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&Gi(i,t,n),i}var Ji=o((()=>{wn(),Wt(),Gt()})),Yi,Xi,Zi=o((()=>{Yi=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Xi=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/}));function Qi(e,t){if(e.length!==t.length)throw new nn({expectedLength:e.length,givenLength:t.length});let n=ta($i({params:e,values:t}));return n.length===0?`0x`:n}function $i({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(ea({param:e[r],value:t[r]}));return n}function ea({param:e,value:t}){let n=la(e.type);if(n){let[r,i]=n;return ra(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return ca(t,{param:e});if(e.type===`address`)return na(t);if(e.type===`bool`)return aa(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Xi.exec(e.type)??[];return oa(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return ia(t,{param:e});if(e.type===`string`)return sa(t);throw new gn(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function ta(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=O(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(M(t+i,{size:32})),r.push(s),i+=O(s)):n.push(s)}return zi([...n,...r])}function na(e){if(!Fi(e))throw new Di({address:e});return{dynamic:!1,encoded:En(e.toLowerCase())}}function ra(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new vn(e);if(!r&&e.length!==t)throw new en({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=ea({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=ta(a);if(r){let t=M(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?zi([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:zi(a.map(({encoded:e})=>e))}}function ia(e,{param:t}){let[,n]=t.type.split(`bytes`),r=O(e);if(!n){let t=e;return r%32!=0&&(t=En(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:zi([En(M(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new tn({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:En(e,{dir:`right`})}}function aa(e){if(typeof e!=`boolean`)throw new k(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:En(Hn(e))}}function oa(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new kn({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:M(e,{size:32,signed:t})}}function sa(e){let t=Wn(e),n=Math.ceil(O(t)/32),r=[];for(let e=0;e<n;e++)r.push(En(Ui(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:zi([En(M(O(t),{size:32})),...r])}}function ca(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=ea({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?ta(r):zi(r.map(({encoded:e})=>e))}}function la(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var ua=o((()=>{bn(),Oi(),A(),Pn(),Ri(),Hi(),On(),Gt(),Ji(),N(),Zi()})),da,fa=o((()=>{Ji(),wi(),da=e=>Ui(Ci(e),0,4)}));function pa(e){let{abi:t,args:n=[],name:r}=e,i=D(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?da(e)===r:e.type===`event`?Ti(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?ma(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=ha(e.inputs,o.inputs,n);if(t)throw new fn({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function ma(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return Fi(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,r)=>n===`object`&&ma(Object.values(e)[r],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>ma(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ha(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ha(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&Fi(n[r],{strict:!1}))return o}}var ga=o((()=>{bn(),Wt(),Ri(),Ei(),fa()}));function _a(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var va=o((()=>{}));function ya(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=pa({abi:t,args:n,name:r});if(!e)throw new ln(r,{docsPath:ba});i=e}if(i.type!==`function`)throw new ln(void 0,{docsPath:ba});return{abi:[i],functionName:da(Bt(i))}}var ba,xa=o((()=>{bn(),fa(),Ut(),ga(),ba=`/docs/contract/encodeFunctionData`}));function Sa(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:ya(e),i=n[0];return Vi([r,(`inputs`in i&&i.inputs?Qi(i.inputs,t??[]):void 0)??`0x`])}var Ca=o((()=>{Hi(),ua(),xa()})),wa,Ta,Ea,Da=o((()=>{wa={1:\"An `assert` condition failed.\",17:`Arithmetic operation resulted in underflow or overflow.`,18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:`Attempted to convert to an invalid type.`,34:`Attempted to access a storage byte array that is incorrectly encoded.`,49:\"Performed `.pop()` on an empty array\",50:`Array index is out of bounds.`,65:`Allocated too much memory or created an array which is too large.`,81:`Attempted to call a zero-initialized variable of internal function type.`},Ta={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Ea={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Oa,ka,Aa,ja=o((()=>{A(),Oa=class extends k{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},ka=class extends k{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Aa=class extends k{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function Ma(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Na);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Na,Pa=o((()=>{ja(),Na={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Aa({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new ka({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Oa({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Oa({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function Fa(e,t={}){return t.size!==void 0&&Ln(e,{size:t.size}),j(Un(e,t),t)}function Ia(e,t={}){let n=e;if(t.size!==void 0&&(Ln(n,{size:t.size}),n=Fn(n)),n.length>1||n[0]>1)throw new An(n);return!!n[0]}function La(e,t={}){return t.size!==void 0&&Ln(e,{size:t.size}),zn(Un(e,t),t)}function Ra(e,t={}){let n=e;return t.size!==void 0&&(Ln(n,{size:t.size}),n=Fn(n,{dir:`right`})),new TextDecoder().decode(n)}var za=o((()=>{Pn(),In(),Bn(),N()}));function Ba(e,t){let n=typeof t==`string`?Xn(t):t,r=Ma(n);if(O(n)===0&&e.length>0)throw new $t;if(O(t)&&O(t)<32)throw new Qt({data:typeof t==`string`?t:Un(t),params:e,size:O(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=Va(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function Va(e,t,{staticPosition:n}){let r=la(t.type);if(r){let[i,a]=r;return Ua(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return qa(e,t,{staticPosition:n});if(t.type===`address`)return Ha(e);if(t.type===`bool`)return Wa(e);if(t.type.startsWith(`bytes`))return Ga(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Ka(e,t);if(t.type===`string`)return Ja(e,{staticPosition:n});throw new _n(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function Ha(e){return[ji(Un(Ki(e.readBytes(32),-20))),32]}function Ua(e,t,{length:n,staticPosition:r}){if(!n){let n=r+La(e.readBytes(Za)),i=n+Xa;e.setPosition(n);let a=La(e.readBytes(Xa)),o=Ya(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=Va(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(Ya(t)){let i=r+La(e.readBytes(Za)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=Va(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=Va(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function Wa(e){return[Ia(e.readBytes(32),{size:32}),32]}function Ga(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=La(e.readBytes(32));e.setPosition(n+t);let r=La(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Un(i),32]}return[Un(e.readBytes(Number.parseInt(i,10),32)),32]}function Ka(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?Fa(i,{signed:n}):La(i,{signed:n}),32]}function qa(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(Ya(t)){let o=n+La(e.readBytes(Za));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=Va(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=Va(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function Ja(e,{staticPosition:t}){let n=t+La(e.readBytes(32));e.setPosition(n);let r=La(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Ra(Fn(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Ya(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ya);let n=la(e.type);return!!(n&&Ya({...e,type:n[1]}))}var Xa,Za,Qa=o((()=>{bn(),Pi(),Pa(),Gt(),Ji(),In(),za(),tr(),N(),ua(),Xa=32,Za=32}));function $a(e){let{abi:t,data:n,cause:r}=e,i=Ui(n,0,4);if(i===`0x`)throw new $t({cause:r});let a=[...t||[],Ta,Ea].find(e=>e.type===`error`&&i===da(Bt(e)));if(!a)throw new on(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?Ba(a.inputs,Ui(n,4)):void 0,errorName:a.name}}var eo=o((()=>{Da(),bn(),Ji(),fa(),Qa(),Ut()})),to,no=o((()=>{to=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function ro({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if(`name`in e&&`inputs`in e&&e.inputs)return`${n?e.name:``}(${e.inputs.map((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?to(t[n]):t[n]}`).join(`, `)})`}var io=o((()=>{no()})),ao,oo,so=o((()=>{ao={gwei:9,wei:18},oo={ether:-9,wei:9}}));function co(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var lo=o((()=>{}));function uo(e,t=`wei`){return co(e,ao[t])}var fo=o((()=>{so(),lo()}));function po(e,t=`wei`){return co(e,oo[t])}var mo=o((()=>{so(),lo()}));function ho(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function go(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=ho(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=ho(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var _o,vo,yo=o((()=>{A(),_o=class extends k{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},vo=class extends k{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function bo(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var xo,So,Co,wo,To,Eo,Do=o((()=>{fo(),mo(),A(),xo=class extends k{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},So=class extends k{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,bo(e),`}`,``,`To infer the type, either provide:`,\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},Co=class extends k{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},wo=class extends k{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},To=class extends k{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Eo=class extends k{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=bo({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${uo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${po(o)} gwei`,maxFeePerGas:s!==void 0&&`${po(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${po(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),Oo,ko,Ao=o((()=>{Oo=e=>e,ko=e=>e})),jo,Mo,No,Po,Fo,Io,Lo=o((()=>{va(),Da(),eo(),Ut(),io(),ga(),fo(),mo(),bn(),A(),yo(),Do(),Ao(),jo=class extends k{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=bo({from:(t?_a(t):void 0)?.address,to:u,value:d!==void 0&&`${uo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${po(o)} gwei`,maxFeePerGas:s!==void 0&&`${po(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${po(c)} gwei`,nonce:l});f&&(p+=`\\n${go(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},Mo=class extends k{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=pa({abi:t,args:n,name:a}),c=s?ro({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?Bt(s,{includeName:!0}):void 0,u=bo({address:r&&Oo(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),Object.defineProperty(this,`abi`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`args`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`contractAddress`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`formattedArgs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`functionName`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`sender`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},No=class extends k{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=$a({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=wa[e]}else{let e=n?Bt(n,{includeName:!0}):void 0,t=n&&a?ro({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof on&&(l=a.signature,s=[`Unable to decode signature \"${l}\" as it was not found on the provided ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`reason`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.raw=t,this.reason=c,this.signature=l}},Po=class extends k{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},Fo=class extends k{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},Io=class extends k{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),Ro,zo,Bo,Vo=o((()=>{no(),A(),Ao(),Ro=class extends k{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${ko(a)}`,e&&`Request body: ${to(e)}`].filter(Boolean),name:`HttpRequestError`}),Object.defineProperty(this,`body`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`headers`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`status`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=i,this.url=a}},zo=class extends k{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${ko(n)}`,`Request body: ${to(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},Bo=class extends k{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${ko(t)}`,`Request body: ${to(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),Ho,Uo,Wo,Go,Ko,qo,Jo,Yo,Xo,Zo,Qo,$o,es,ts,ns,rs,is,as,os,ss,cs,ls,us,ds,fs,ps,ms,hs,gs,_s,vs=o((()=>{A(),Vo(),Ho=-1,Uo=class extends k{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof zo?e.code:t??Ho}},Wo=class extends Uo{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},Go=class e extends Uo{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(Go,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Ko=class e extends Uo{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(Ko,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),qo=class e extends Uo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Jo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(Jo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Yo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(Yo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Xo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(Xo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Zo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(Zo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Qo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(Qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),$o=class e extends Uo{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty($o,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),es=class e extends Uo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(es,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),ts=class e extends Uo{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(ts,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),ns=class e extends Uo{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(ns,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),rs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(rs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),is=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(is,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),as=class e extends Wo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(as,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),os=class e extends Wo{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(os,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),ss=class e extends Wo{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(ss,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),cs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(cs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),ls=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(ls,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),us=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(us,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),ds=class e extends Wo{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(ds,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),fs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(fs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),ps=class e extends Wo{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(ps,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),ms=class e extends Wo{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(ms,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),hs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(hs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),gs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(gs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),_s=class extends Uo{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));bn(),A(),Lo(),Vo(),vs();function ys(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof Io?e:e instanceof k?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Mo(e instanceof $t?new Po({functionName:a,cause:e}):[3,Yo.code].includes(c)&&(l||u||d||f)||c===Xo.code&&u===`execution reverted`&&l?new No({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof zo?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}Pi(),hi();function bs(e){return ji(`0x${mi(`0x${e.substring(4)}`).substring(26)}`)}function xs(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Ss(e,t,n){return e&t^~e&n}function Cs(e,t,n){return e&t^e&n^t&n}var ws,Ts,Es,Ds,Os=o((()=>{qr(),ws=class extends Kr{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=Pr(this.buffer)}update(e){Ar(this),e=zr(e),Or(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=Pr(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ar(this),jr(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,Nr(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;xs(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=Pr(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ts=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Es=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Ds=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])})),ks,As,js,Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs=o((()=>{Os(),Cr(),qr(),ks=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),As=new Uint32Array(64),js=class extends ws{constructor(e=32){super(64,e,8,!1),this.A=Ts[0]|0,this.B=Ts[1]|0,this.C=Ts[2]|0,this.D=Ts[3]|0,this.E=Ts[4]|0,this.F=Ts[5]|0,this.G=Ts[6]|0,this.H=Ts[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)As[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=As[e-15],n=As[e-2],r=Fr(t,7)^Fr(t,18)^t>>>3;As[e]=(Fr(n,17)^Fr(n,19)^n>>>10)+As[e-7]+r+As[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=Fr(o,6)^Fr(o,11)^Fr(o,25),u=l+t+Ss(o,s,c)+ks[e]+As[e]|0,d=(Fr(n,2)^Fr(n,13)^Fr(n,22))+Cs(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){Nr(As)}destroy(){this.set(0,0,0,0,0,0,0,0),Nr(this.buffer)}},Ms=rr(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Ns=Ms[0],Ps=Ms[1],Fs=new Uint32Array(80),Is=new Uint32Array(80),Ls=class extends ws{constructor(e=64){super(128,e,16,!1),this.Ah=Ds[0]|0,this.Al=Ds[1]|0,this.Bh=Ds[2]|0,this.Bl=Ds[3]|0,this.Ch=Ds[4]|0,this.Cl=Ds[5]|0,this.Dh=Ds[6]|0,this.Dl=Ds[7]|0,this.Eh=Ds[8]|0,this.El=Ds[9]|0,this.Fh=Ds[10]|0,this.Fl=Ds[11]|0,this.Gh=Ds[12]|0,this.Gl=Ds[13]|0,this.Hh=Ds[14]|0,this.Hl=Ds[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Fs[n]=e.getUint32(t),Is[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Fs[e-15]|0,n=Is[e-15]|0,r=lr(t,n,1)^lr(t,n,8)^sr(t,n,7),i=ur(t,n,1)^ur(t,n,8)^cr(t,n,7),a=Fs[e-2]|0,o=Is[e-2]|0,s=lr(a,o,19)^dr(a,o,61)^sr(a,o,6),c=ur(a,o,19)^fr(a,o,61)^cr(a,o,6),l=yr(i,c,Is[e-7],Is[e-16]);Fs[e]=br(l,r,s,Fs[e-7],Fs[e-16])|0,Is[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=lr(u,d,14)^lr(u,d,18)^dr(u,d,41),v=ur(u,d,14)^ur(u,d,18)^fr(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=xr(_,v,b,Ps[e],Is[e]),S=Sr(x,g,t,y,Ns[e],Fs[e]),ee=x|0,te=lr(n,r,28)^dr(n,r,34)^dr(n,r,39),C=ur(n,r,28)^fr(n,r,34)^fr(n,r,39),w=n&i^n&o^i&o,T=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=ir(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let ne=_r(ee,C,T);n=vr(ne,S,te,w),r=ne|0}({h:n,l:r}=ir(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=ir(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=ir(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=ir(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ir(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=ir(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=ir(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=ir(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){Nr(Fs,Is)}destroy(){Nr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Rs=class extends Ls{constructor(){super(48),this.Ah=Es[0]|0,this.Al=Es[1]|0,this.Bh=Es[2]|0,this.Bl=Es[3]|0,this.Ch=Es[4]|0,this.Cl=Es[5]|0,this.Dh=Es[6]|0,this.Dl=Es[7]|0,this.Eh=Es[8]|0,this.El=Es[9]|0,this.Fh=Es[10]|0,this.Fl=Es[11]|0,this.Gh=Es[12]|0,this.Gl=Es[13]|0,this.Hh=Es[14]|0,this.Hl=Es[15]|0}},zs=Vr(()=>new js),Bs=Vr(()=>new Ls),Vs=Vr(()=>new Rs)})),Us,Ws,Gs=o((()=>{qr(),Us=class extends Kr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,kr(e);let n=zr(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),Nr(i)}update(e){return Ar(this),this.iHash.update(e),this}digestInto(e){Ar(this),Or(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ws=(e,t,n)=>new Us(e,t).update(n).digest(),Ws.create=(e,t)=>new Us(e,t)}));function Ks(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function qs(e){if(!Ks(e))throw Error(`Uint8Array expected`)}function Js(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Ys(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Xs(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?mc:BigInt(`0x`+e)}function Zs(e){if(qs(e),gc)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=_c[e[n]];return t}function Qs(e){if(e>=vc._0&&e<=vc._9)return e-vc._0;if(e>=vc.A&&e<=vc.F)return e-(vc.A-10);if(e>=vc.a&&e<=vc.f)return e-(vc.a-10)}function $s(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(gc)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Qs(e.charCodeAt(i)),a=Qs(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function ec(e){return Xs(Zs(e))}function tc(e){return qs(e),Xs(Zs(Uint8Array.from(e).reverse()))}function nc(e,t){return $s(e.toString(16).padStart(t*2,`0`))}function rc(e,t){return nc(e,t).reverse()}function ic(e,t,n){let r;if(typeof t==`string`)try{r=$s(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Ks(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function ac(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];qs(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function oc(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function sc(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function cc(e,t,n){return yc(e)&&yc(t)&&yc(n)&&t<=e&&e<n}function lc(e,t,n,r){if(!cc(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function uc(e){let t;for(t=0;e>mc;e>>=hc,t+=1);return t}function dc(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=xc(e),i=xc(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=xc(0))=>{i=s(Sc([0]),e),r=s(),e.length!==0&&(i=s(Sc([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return ac(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function fc(e,t,n={}){let r=(t,n,r)=>{let i=Cc[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function pc(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc=o((()=>{mc=BigInt(0),hc=BigInt(1),gc=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,_c=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),vc={_0:48,_9:57,A:65,F:70,a:97,f:102},yc=e=>typeof e==`bigint`&&mc<=e,bc=e=>(hc<<BigInt(e))-hc,xc=e=>new Uint8Array(e),Sc=e=>Uint8Array.from(e),Cc={bigint:e=>typeof e==`bigint`,function:e=>typeof e==`function`,boolean:e=>typeof e==`boolean`,string:e=>typeof e==`string`,stringOrUint8Array:e=>typeof e==`string`||Ks(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e==`function`&&Number.isSafeInteger(e.outputLen)}}));function Tc(e,t){let n=e%t;return n>=Vc?n:t+n}function Ec(e,t,n){let r=e;for(;t-- >Vc;)r*=r,r%=n;return r}function Dc(e,t){if(e===Vc)throw Error(`invert: expected non-zero number`);if(t<=Vc)throw Error(`invert: expected positive modulus, got `+t);let n=Tc(e,t),r=t,i=Vc,a=Hc,o=Hc,s=Vc;for(;n!==Vc;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==Hc)throw Error(`invert: does not exist`);return Tc(i,t)}function Oc(e,t){let n=(e.ORDER+Hc)/Gc,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function kc(e,t){let n=(e.ORDER-Kc)/qc,r=e.mul(t,Uc),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Uc),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function Ac(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Hc,n=0;for(;t%Uc===Vc;)t/=Uc,n++;let r=Uc,i=Lc(e);for(;Fc(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return Oc;let a=i.pow(r,t),o=(t+Hc)/Uc;return function(e,r){if(e.is0(r))return r;if(Fc(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=Hc<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function jc(e){return e%Gc===Wc?Oc:e%qc===Kc?kc:Ac(e)}function Mc(e){return fc(e,Jc.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Nc(e,t,n){if(n<Vc)throw Error(`invalid exponent, negatives unsupported`);if(n===Vc)return e.ONE;if(n===Hc)return t;let r=e.ONE,i=t;for(;n>Vc;)n&Hc&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Hc;return r}function Pc(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function Fc(e,t){let n=(e.ORDER-Hc)/Uc,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function Ic(e,t){t!==void 0&&Dr(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Lc(e,t,n=!1,r={}){if(e<=Vc)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Ic(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:bc(i),ZERO:Vc,ONE:Hc,create:t=>Tc(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Vc<=t&&t<e},is0:e=>e===Vc,isOdd:e=>(e&Hc)===Hc,neg:t=>Tc(-t,e),eql:(e,t)=>e===t,sqr:t=>Tc(t*t,e),add:(t,n)=>Tc(t+n,e),sub:(t,n)=>Tc(t-n,e),mul:(t,n)=>Tc(t*n,e),pow:(e,t)=>Nc(s,e,t),div:(t,n)=>Tc(t*Dc(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>Dc(t,e),sqrt:r.sqrt||(t=>(o||=jc(e),o(s,t))),toBytes:e=>n?rc(e,a):nc(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?tc(e):ec(e)},invertBatch:e=>Pc(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Rc(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function zc(e){let t=Rc(e);return t+Math.ceil(t/2)}function Bc(e,t,n=!1){let r=e.length,i=Rc(t),a=zc(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Tc(n?tc(e):ec(e),t-Hc)+Hc;return n?rc(o,i):nc(o,i)}var Vc,Hc,Uc,Wc,Gc,Kc,qc,Jc,Yc=o((()=>{qr(),wc(),Vc=BigInt(0),Hc=BigInt(1),Uc=BigInt(2),Wc=BigInt(3),Gc=BigInt(4),Kc=BigInt(5),qc=BigInt(8),Jc=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Xc(e,t){let n=t.negate();return e?n:t}function Zc(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Qc(e,t){Zc(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:bc(e),maxNumber:i,shiftBy:BigInt(e)}}function $c(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=sl);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function el(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function tl(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function nl(e){return ll.get(e)||1}function rl(e,t){return{constTimeNegate:Xc,hasPrecomputes(e){return nl(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>ol;)n&sl&&(r=r.add(i)),i=i.double(),n>>=sl;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Qc(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Qc(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=$c(i,e,s);i=t,c?o=o.add(Xc(u,r[d])):a=a.add(Xc(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Qc(n,t);for(let e=0;e<o.windows&&i!==ol;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=$c(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=cl.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&cl.set(t,n(r))),r},wNAFCached(e,t,n){let r=nl(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=nl(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Zc(n,t),ll.set(e,n),cl.delete(e)}}}function il(e,t,n,r){el(n,e),tl(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=uc(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=bc(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function al(e){return Mc(e.Fp),fc(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Ic(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var ol,sl,cl,ll,ul=o((()=>{Yc(),wc(),ol=BigInt(0),sl=BigInt(1),cl=new WeakMap,ll=new WeakMap}));function dl(e){e.lowS!==void 0&&Js(`lowS`,e.lowS),e.prehash!==void 0&&Js(`prehash`,e.prehash)}function fl(e){let t=al(e);fc(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function pl(e,t){return Zs(nc(e,t))}function ml(e){let t=fl(e),{Fp:n}=t,r=Lc(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return ac(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,Cl),wl),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return cc(e,P,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Ks(e)&&(e=Zs(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:ec(ic(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Tc(o,a)),lc(`private key`,o,P,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=pc((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=pc(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Pc(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(ic(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return il(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,Cl),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,Cl),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;lc(`scalar`,e,xl,i);let a=h.ZERO;if(e===xl)return a;if(this.is0()||e===P)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>xl||l>xl;)s&P&&(u=u.add(f)),l&P&&(d=d.add(f)),f=f.double(),s>>=P,l>>=P;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;lc(`scalar`,e,P,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===xl||t===P||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===P)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===P?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Js(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Js(`isCompressed`,e),Zs(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=rl(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function hl(e){let t=al(e);return fc(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function gl(e){let t=hl(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Tc(e,r)}function l(e){return Dc(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=ml({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=ac;return Js(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=ec(i);if(!cc(e,P,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&P)===P;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>P}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>ec(e.slice(t,n));class _{constructor(e,t,n){lc(`r`,e,P,r),lc(`s`,t,P,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=ic(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=bl.toSig(ic(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(ic(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+pl(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return $s(this.toDERHex())}toDERHex(){return bl.hexFromSig(this)}toCompactRawBytes(){return $s(this.toCompactHex())}toCompactHex(){let e=i;return pl(this.r,e)+pl(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=zc(t.n);return Bc(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=ic(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=ec(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},te=bc(a);function C(e){return lc(`num < 2^`+a,e,xl,te),nc(e,i)}function w(e,r,i=T){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=ic(`msgHash`,e),dl(i),f&&(e=ic(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[C(y),C(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(ic(`extraEntropy`,e))}let x=ac(...b),te=v;function w(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===xl)return;let a=c(n*c(te+i*y));if(a===xl)return;let o=(r.x===i?0:2)|Number(r.y&P),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:w}}let T={lowS:t.lowS,prehash:!1},ne={lowS:t.lowS,prehash:!1};function re(e,n,r=T){let{seed:i,k2sig:a}=w(e,n,r),o=t;return dc(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ie(e,n,r,i=ne){let a=e;n=ic(`msgHash`,n),r=ic(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(dl(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Ks(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof bl.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),te=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return te?c(te.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:re,verify:ie,ProjectivePoint:u,Signature:_,utils:v}}function _l(e,t){let n=e.ORDER,r=xl;for(let e=n-P;e%Sl===xl;e/=Sl)r+=P;let i=r,a=Sl<<i-P-P,o=a*Sl,s=(n-P)/o,c=(s-P)/Sl,l=o-P,u=a,d=e.pow(t,s),f=e.pow(t,(s+P)/Sl),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>P;t--){let n=t-Sl;n=Sl<<n-P;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%wl===Cl){let n=(e.ORDER-Cl)/wl,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function vl(e,t){if(Mc(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=_l(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=Pc(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var yl,bl,xl,P,Sl,Cl,wl,Tl=o((()=>{ul(),Yc(),wc(),yl=class extends Error{constructor(e=``){super(e)}},bl={Err:yl,_tlv:{encode:(e,t)=>{let{Err:n}=bl;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Ys(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Ys(i.length/2|128):``;return Ys(e)+a+i+t},decode(e,t){let{Err:n}=bl,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=bl;if(e<xl)throw new t(`integer: negative integers are not allowed`);let n=Ys(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=bl;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return ec(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=bl,i=ic(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=bl,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},xl=BigInt(0),P=BigInt(1),Sl=BigInt(2),Cl=BigInt(3),wl=BigInt(4)}));function El(e){return{hash:e,hmac:(t,...n)=>Ws(e,t,Br(...n)),randomBytes:Ur}}function Dl(e,t){let n=t=>gl({...e,...El(t)});return{...n(t),create:n}}var Ol=o((()=>{Gs(),qr(),Tl()}));function kl(e,t){if(jl(e),jl(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function Al(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function jl(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Ml(e,t,n,r){qs(e),qs(t),jl(n),t.length>255&&(t=r(ac(sc(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=ac(t,kl(t.length,1)),c=kl(0,a),l=kl(n,2),u=Array(o),d=r(ac(c,e,l,kl(0,1),s));u[0]=r(ac(d,kl(1,1),s));for(let e=1;e<=o;e++)u[e]=r(ac(Al(d,u[e-1]),kl(e+1,1),s));return ac(...u).slice(0,n)}function Nl(e,t,n,r,i){if(qs(e),qs(t),jl(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(sc(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(kl(n,2)).update(t).update(kl(t.length,1)).digest()}function Pl(e,t,n){fc(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;qs(e),jl(t);let l=typeof c==`string`?sc(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Ml(e,l,f,o);else if(s===`xof`)p=Nl(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=Tc(Ll(p.subarray(i,i+d)),r)}m[e]=t}return m}function Fl(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=Pc(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function Il(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=Pl(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(Pl(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var Ll,Rl=o((()=>{Yc(),wc(),Ll=ec})),zl=c({encodeToCurve:()=>hu,hashToCurve:()=>mu,schnorr:()=>uu,secp256k1:()=>tu,secp256k1_hasher:()=>pu});function Bl(e){let t=Jl,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=Ec(Ec(Ec(u,n,t)*u%t,n,t)*u%t,Ql,t)*l%t,f=Ec(d,i,t)*d%t,p=Ec(f,a,t)*f%t,m=Ec(p,s,t)*p%t,h=Ec(Ec(Ec(Ec(Ec(Ec(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Ql,t);if(!eu.eql(eu.sqr(h),e))throw Error(`Cannot find square root`);return h}function Vl(e,...t){let n=nu[e];if(n===void 0){let t=zs(Uint8Array.from(e,e=>e.charCodeAt(0)));n=ac(t,t),nu[e]=n}return zs(ac(n,...t))}function Hl(e){let t=tu.utils.normPrivateKeyToScalar(e),n=su.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:ou(-t),bytes:ru(n)}}function Ul(e){lc(`x`,e,Zl,Jl);let t=Bl(au(au(e*e)*e+BigInt(7)));t%Ql!==Xl&&(t=au(-t));let n=new su(e,t,Zl);return n.assertValidity(),n}function Wl(...e){return ou(lu(Vl(`BIP0340/challenge`,...e)))}function Gl(e){return Hl(e).bytes}function Kl(e,t,n=Ur(32)){let r=ic(`message`,e),{bytes:i,scalar:a}=Hl(t),o=ou(lu(Vl(`BIP0340/nonce`,iu(a^lu(Vl(`BIP0340/aux`,ic(`auxRand`,n,32)))),i,r)));if(o===Xl)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Hl(o),l=Wl(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(iu(ou(c+l*a)),32),!ql(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function ql(e,t,n){let r=ic(`signature`,e,64),i=ic(`message`,t),a=ic(`publicKey`,n,32);try{let e=Ul(lu(a)),t=lu(r.subarray(0,32));if(!cc(t,Zl,Jl))return!1;let n=lu(r.subarray(32,64));if(!cc(n,Zl,Yl))return!1;let o=cu(e,n,ou(-Wl(iu(t),ru(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Jl,Yl,Xl,Zl,Ql,$l,eu,tu,nu,ru,iu,au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu=o((()=>{Hs(),qr(),Ol(),Rl(),Yc(),wc(),Tl(),Jl=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Yl=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Xl=BigInt(0),Zl=BigInt(1),Ql=BigInt(2),$l=(e,t)=>(e+t/Ql)/t,eu=Lc(Jl,void 0,void 0,{sqrt:Bl}),tu=Dl({a:Xl,b:BigInt(7),Fp:eu,n:Yl,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Yl,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Zl*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=$l(a*e,t),c=$l(-r*e,t),l=Tc(e-s*n-c*i,t),u=Tc(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},zs),nu={},ru=e=>e.toRawBytes(!0).slice(1),iu=e=>nc(e,32),au=e=>Tc(e,Jl),ou=e=>Tc(e,Yl),su=tu.ProjectivePoint,cu=(e,t,n)=>su.BASE.multiplyAndAddUnsafe(e,t,n),lu=ec,uu={getPublicKey:Gl,sign:Kl,verify:ql,utils:{randomPrivateKey:tu.utils.randomPrivateKey,lift_x:Ul,pointToBytes:ru,numberToBytesBE:nc,bytesToNumberBE:ec,taggedHash:Vl,mod:Tc}},du=Fl(eu,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),fu=vl(eu,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:eu.create(BigInt(`-11`))}),pu=Il(tu.ProjectivePoint,e=>{let{x:t,y:n}=fu(eu.create(e[0]));return du(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:eu.ORDER,m:1,k:128,expand:`xmd`,hash:zs}),mu=pu.hashToCurve,hu=pu.encodeToCurve}));Wt(),Gt(),Bn(),N();async function _u({hash:e,signature:t}){let n=D(e)?e:Vn(e),{secp256k1:r}=await Promise.resolve().then(()=>(gu(),zl));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=vu(Number(a??i));return new r.Signature(j(e),j(n)).addRecoveryBit(o)}let e=D(t)?t:Vn(t);if(O(e)!==65)throw Error(`invalid signature length`);let n=vu(zn(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function vu(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function yu({hash:e,signature:t}){return bs(await _u({hash:e,signature:t}))}A(),Pa(),tr(),N();function bu(e,t=`hex`){let n=xu(e),r=Ma(new Uint8Array(n.length));return n.encode(r),t===`hex`?Un(r.bytes):r.bytes}function xu(e){return Array.isArray(e)?Su(e.map(e=>xu(e))):Cu(e)}function Su(e){let t=e.reduce((e,t)=>e+t.length,0),n=wu(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Cu(e){let t=typeof e==`string`?Xn(e):e,n=wu(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function wu(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new k(`Length is too large.`)}Hi(),tr(),N(),hi();function Tu(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=mi(Vi([`0x05`,bu([t?M(t):`0x`,i,n?M(n):`0x`])]));return r===`bytes`?Xn(a):a}async function Eu(e){let{authorization:t,signature:n}=e;return yu({hash:Tu(t),signature:n??t})}fo(),mo(),A(),Do();var Du=class extends k{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=bo({from:t?.address,to:u,value:d!==void 0&&`${uo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${po(o)} gwei`,maxFeePerGas:s!==void 0&&`${po(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${po(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},Ou,ku,Au,ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu,Bu=o((()=>{mo(),A(),Ou=class extends k{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(Ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Ou,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),ku=class extends k{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${po(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(ku,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),Au=class extends k{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${po(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(Au,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/}),ju=class extends k{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(ju,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),Mu=class extends k{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(Mu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),Nu=class extends k{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(Nu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),Pu=class extends k{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(Pu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),Fu=class extends k{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(Fu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),Iu=class extends k{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(Iu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),Lu=class extends k{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(Lu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),Ru=class extends k{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${po(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${po(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(Ru,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),zu=class extends k{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function Vu(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof k?e.walk(e=>e?.code===Ou.code):e;return r instanceof k?new Ou({cause:e,message:r.details}):Ou.nodeMessage.test(n)?new Ou({cause:e,message:e.details}):ku.nodeMessage.test(n)?new ku({cause:e,maxFeePerGas:t?.maxFeePerGas}):Au.nodeMessage.test(n)?new Au({cause:e,maxFeePerGas:t?.maxFeePerGas}):ju.nodeMessage.test(n)?new ju({cause:e,nonce:t?.nonce}):Mu.nodeMessage.test(n)?new Mu({cause:e,nonce:t?.nonce}):Nu.nodeMessage.test(n)?new Nu({cause:e,nonce:t?.nonce}):Pu.nodeMessage.test(n)?new Pu({cause:e}):Fu.nodeMessage.test(n)?new Fu({cause:e,gas:t?.gas}):Iu.nodeMessage.test(n)?new Iu({cause:e,gas:t?.gas}):Lu.nodeMessage.test(n)?new Lu({cause:e}):Ru.nodeMessage.test(n)?new Ru({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new zu({cause:e})}var Hu=o((()=>{A(),Bu()}));Bu(),Hu();function Uu(e,{docsPath:t,...n}){return new Du((()=>{let t=Vu(e,n);return t instanceof zu?e:t})(),{docsPath:t,...n})}function Wu(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var Gu=o((()=>{}));function Ku(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var qu=o((()=>{}));function Ju(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=Yu(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Un(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=M(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=M(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=M(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=M(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=M(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=M(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=Xu[e.type]),e.value!==void 0&&(n.value=M(e.value)),n}function Yu(e){return e.map(e=>({address:e.address,r:e.r?M(BigInt(e.r)):e.r,s:e.s?M(BigInt(e.s)):e.s,chainId:M(e.chainId),nonce:M(e.nonce),...e.yParity===void 0?{}:{yParity:M(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:M(e.v)}:{}}))}var Xu,Zu,Qu=o((()=>{N(),qu(),Xu={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Zu=Ku(`transactionRequest`,Ju)}));function $u(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new Cn({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new Cn({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function ed(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=M(t)),n!==void 0&&(o.nonce=M(n)),r!==void 0&&(o.state=$u(r)),i!==void 0){if(o.state)throw new vo;o.stateDiff=$u(i)}return o}function td(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!Fi(n,{strict:!1}))throw new Di({address:n});if(t[n])throw new _o({address:n});t[n]=ed(r)}return t}var nd=o((()=>{Oi(),wn(),yo(),Ri(),N()})),rd,id=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),rd=2n**256n-1n}));function ad(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?_a(t):void 0;if(a&&!Fi(a.address))throw new Di({address:a.address});if(i&&!Fi(i))throw new Di({address:i});if(n&&n>rd)throw new ku({maxFeePerGas:n});if(r&&n&&r>n)throw new Ru({maxFeePerGas:n,maxPriorityFeePerGas:r})}var od=o((()=>{va(),id(),Oi(),Bu(),Ri()}));mo(),A();var sd=class extends k{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},cd=class extends k{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},ld=class extends k{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${po(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};A();var ud=class extends k{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};Bn(),qu();let dd={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function fd(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?zn(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?zn(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?dd[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=md(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let pd=Ku(`transaction`,fd);function md(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function hd(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:fd(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}N();async function gd(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:M(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new ud({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||hd)(s,`getBlock`)}async function _d(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}Bn();async function vd(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await E(e,gd,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?j(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):E(e,gd,`getBlock`)({}),E(e,_d,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new cd;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function yd(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new sd;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await E(e,gd,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new cd;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await vd(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await E(e,_d,`getGasPrice`)({}))}}Bn(),N();async function bd(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return zn(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?M(r):n]},{dedupe:!!r}))}tr(),N();function xd(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Xn(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Un(e))}tr(),N();function Sd(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Xn(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Xn(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Un(e))}Hs();let Cd=zs;Wt(),tr(),N();function wd(e,t){let n=t||`hex`,r=Cd(D(e,{strict:!1})?qn(e):e);return n===`bytes`?r:Vn(r)}N();function Td(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=wd(t,`bytes`);return i.set([n],0),r===`bytes`?i:Un(i)}function Ed(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Td({commitment:e,to:r,version:n}));return i}let Dd=4096,Od=32*Dd;Od*6-1-1*Dd*6,A();var kd=class extends k{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Ad=class extends k{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},jd=class extends k{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Md=class extends k{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};Pa(),Gt(),tr(),N();function Nd(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Xn(e.data):e.data,r=O(n);if(!r)throw new Ad;if(r>761855)throw new kd({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=Ma(new Uint8Array(Od)),t=0;for(;t<Dd;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Un(e.bytes))}function Pd(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Nd({data:t,to:r}),a=e.commitments??xd({blobs:i,kzg:n,to:r}),o=e.proofs??Sd({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}Do();function Fd(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new So({transaction:e})}Bu(),Do(),Hu();function Id(e,{docsPath:t,...n}){return new Eo((()=>{let t=Vu(e,n);return t instanceof zu?e:t})(),{docsPath:t,...n})}Bn();async function Ld(e){return zn(await e.request({method:`eth_chainId`},{dedupe:!0}))}va(),Gu(),Qu(),od();async function Rd(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=_a(n),r=a?a.id:await E(e,Ld,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();ad(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Ju)({...Wu(y,{format:x}),account:n?_a(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||fd)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await E(e,gd,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new sd;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw Id(n,{...t,chain:e.chain})}}va(),Ai(),od();let zd=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Bd=new Map,Vd=new ki(128);async function Hd(e,t){let n=t;n.account??=e.account,n.parameters??=zd;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await E(e,Ld,`getChainId`)({}),c):n.chainId)}let u=r&&_a(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||Vd.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await E(e,Rd,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return Vd.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&Vd.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await E(e,gd,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await E(e,bd,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=xd({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Ed({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Pd({blobs:p,commitments:e,proofs:Sd({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=Fd(n)}catch{let t=Bd.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Bd.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await yd(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new ld({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new cd;if(n.gasPrice===void 0){let{gasPrice:t}=await yd(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await E(e,Ud,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),ad(n),delete n.parameters,n}va(),A(),N(),Gu(),Qu(),nd(),od();async function Ud(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?_a(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Eu({authorization:t.authorizationList[0]}).catch(()=>{throw new k(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await Hd(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?M(u):void 0)||d,ee=td(b);ad(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Ju)({...Wu(x,{format:te}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[C,S??e.experimental_blockTag??`latest`,ee]:S?[C,S]:[C]}))}catch(n){throw Uu(n,{...t,account:i,chain:e.chain})}}function Wd(e,t){if(!Fi(e,{strict:!1}))throw new Di({address:e});if(!Fi(t,{strict:!1}))throw new Di({address:t});return e.toLowerCase()===t.toLowerCase()}var Gd=o((()=>{Oi(),Ri()}));function Kd(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}bn(),ja(),Gt(),Ei(),Qa(),Ut();let qd=`/docs/contract/decodeEventLog`;function Jd(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new sn({docsPath:qd});let c=t.find(e=>e.type===`event`&&o===Ti(Bt(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new cn(o,{docsPath:qd});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new hn({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=Yd({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=Ba(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof Qt||e instanceof ka?new mn({abiItem:c,data:n,params:g,size:O(n)}):e}else if(a)throw new mn({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Yd({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(Ba([e],t)||[])[0]}Gd(),tr(),hi(),Ei();function Xd(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:Ti(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Kd(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=Jd({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Jd({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!Zd({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function Zd(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?Wd(t,n):e.type===`string`||e.type===`bytes`?mi(qn(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function Qd(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=pa({abi:t,args:n,name:r});if(!e)throw new ln(r,{docsPath:$d});a=e}if(a.type!==`function`)throw new ln(void 0,{docsPath:$d});if(!a.outputs)throw new un(a.name,{docsPath:$d});let o=Ba(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var $d,ef=o((()=>{bn(),Qa(),ga(),$d=`/docs/contract/decodeFunctionResult`})),tf,nf=o((()=>{tf=`0.1.1`}));function rf(){return tf}var af=o((()=>{nf()}));function of(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?of(e.cause,t):t?null:e}var F,sf=o((()=>{af(),F=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return of(this,e)}},Object.defineProperty(F,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${rf()}`}}),F.setStaticOptions(F.defaultStaticOptions)}));function cf(e,t){if(If(e)>t)throw new Yf({givenSize:If(e),maxSize:t})}function lf(e,t){if(typeof t==`number`&&t>0&&t>If(e)-1)throw new Xf({offset:t,position:`start`,size:If(e)})}function uf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&If(e)!==n-t)throw new Xf({offset:n,position:`end`,size:If(e)})}function df(e){if(e>=mf.zero&&e<=mf.nine)return e-mf.zero;if(e>=mf.A&&e<=mf.F)return e-(mf.A-10);if(e>=mf.a&&e<=mf.f)return e-(mf.a-10)}function ff(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Zf({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function pf(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var mf,hf=o((()=>{Qf(),mf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function gf(e,t){if(op(e)>t)throw new yp({givenSize:op(e),maxSize:t})}function _f(e,t){if(typeof t==`number`&&t>0&&t>op(e)-1)throw new bp({offset:t,position:`start`,size:op(e)})}function vf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&op(e)!==n-t)throw new bp({offset:n,position:`end`,size:op(e)})}function yf(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new xp({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function bf(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var xf=o((()=>{B()}));function Sf(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>Sf(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${Sf(r)}`),t},[]).join(`,`)}}`}function Cf(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Tf)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function wf(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Tf:n,n)}var Tf,Ef=o((()=>{Tf=`#__bigint`}));function Df(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new Jf(e)}function Of(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function kf(e){return e instanceof Uint8Array?e:typeof e==`string`?jf(e):Af(e)}function Af(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function jf(e,t={}){let{size:n}=t,r=e;n&&(gf(e,n),r=ip(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=df(i.charCodeAt(t++)),r=df(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new F(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function Mf(e,t={}){let{size:n}=t,r=Kf.encode(e);return typeof n==`number`?(cf(r,n),Pf(r,n)):r}function Nf(e,t){return oc(e,t)}function Pf(e,t){return ff(e,{dir:`right`,size:t})}function Ff(e){return crypto.getRandomValues(new Uint8Array(e))}function If(e){return e.length}function Lf(e,t,n,r={}){let{strict:i}=r;lf(e,t);let a=e.slice(t,n);return i&&uf(a,t,n),a}function Rf(e,t={}){let{size:n}=t;return n!==void 0&&cf(e,n),cp(L(e,t),t)}function zf(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(cf(r,n),r=Hf(r)),r.length>1||r[0]>1)throw new qf(r);return!!r[0]}function Bf(e,t={}){let{size:n}=t;return n!==void 0&&cf(e,n),up(L(e,t),t)}function Vf(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(cf(r,n),r=Uf(r)),Gf.decode(r)}function Hf(e){return pf(e,{dir:`left`})}function Uf(e){return pf(e,{dir:`right`})}function Wf(e){try{return Df(e),!0}catch{return!1}}var Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf=o((()=>{wc(),sf(),B(),hf(),xf(),Ef(),Gf=new TextDecoder,Kf=new TextEncoder,qf=class extends F{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},Jf=class extends F{constructor(e){super(`Value \\`${typeof e==`object`?wf(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},Yf=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Xf=class extends F{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Zf=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));function $f(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new gp(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new _p(e)}function I(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function ep(e){return e instanceof Uint8Array?L(e):Array.isArray(e)?L(new Uint8Array(e)):e}function tp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(gf(n,t.size),rp(n,t.size)):n}function L(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=mp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(gf(r,t.size),ip(r,t.size)):r}function R(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new hp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?rp(s,r):s}function np(e,t={}){return L(pp.encode(e),t)}function rp(e,t){return yf(e,{dir:`left`,size:t})}function ip(e,t){return yf(e,{dir:`right`,size:t})}function ap(e){return L(Ff(e))}function z(e,t,n,r={}){let{strict:i}=r;_f(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&vf(a,t,n),a}function op(e){return Math.ceil((e.length-2)/2)}function sp(e){return bf(e,{dir:`left`})}function cp(e,t={}){let{signed:n}=t;t.size&&gf(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function lp(e,t={}){return jf(e,t)}function up(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:cp(e,t))}function dp(e,t={}){let{size:n}=t,r=jf(e);return n&&(cf(r,n),r=Uf(r)),new TextDecoder().decode(r)}function fp(e,t={}){let{strict:n=!1}=t;try{return $f(e,{strict:n}),!0}catch{return!1}}var pp,mp,hp,gp,_p,vp,yp,bp,xp,B=o((()=>{Qf(),sf(),hf(),xf(),Ef(),pp=new TextEncoder,mp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hp=class extends F{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},gp=class extends F{constructor(e){super(`Value \\`${typeof e==`object`?wf(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},_p=class extends F{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},vp=class extends F{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},yp=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},bp=class extends F{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},xp=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function Sp(e){return{address:e.address,amount:R(e.amount),index:R(e.index),validatorIndex:R(e.validatorIndex)}}var Cp=o((()=>{B()}));function wp(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:R(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:R(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:R(e.gasLimit)},...typeof e.number==`bigint`&&{number:R(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:R(e.prevRandao)},...typeof e.time==`bigint`&&{time:R(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Sp)}}}var Tp=o((()=>{B(),Cp()})),Ep,Dp,Op,kp,Ap,jp=o((()=>{Ep=[{inputs:[{components:[{name:`target`,type:`address`},{name:`allowFailure`,type:`bool`},{name:`callData`,type:`bytes`}],name:`calls`,type:`tuple[]`}],name:`aggregate3`,outputs:[{components:[{name:`success`,type:`bool`},{name:`returnData`,type:`bytes`}],name:`returnData`,type:`tuple[]`}],stateMutability:`view`,type:`function`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],Dp=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],Op=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...Op],[...Op],kp=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Ap=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),Mp=o((()=>{})),Np,Pp,Fp,Ip,Lp=o((()=>{Np=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Pp=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Fp=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Ip=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Rp,zp,Bp,Vp,Hp,Up=o((()=>{A(),Rp=class extends k{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},zp=class extends k{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},Bp=class extends k{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},Vp=class extends k{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Hp=class extends k{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Wp(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new Xt({docsPath:Gp});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Zt({docsPath:Gp});return Vi([r,Qi(i.inputs,n)])}var Gp,Kp=o((()=>{bn(),Hi(),ua(),Gp=`/docs/contract/encodeDeployData`}));function qp({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Rp({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Rp({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Jp=o((()=>{Up()}));function Yp(e,{docsPath:t,...n}){return new jo((()=>{let t=Vu(e,n);return t instanceof zu?e:t})(),{docsPath:t,...n})}var Xp=o((()=>{Lo(),Bu(),Hu()}));function Zp(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Qp=o((()=>{}));function $p({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>em.delete(t),s=()=>c().map(({args:e})=>e),c=()=>em.get(t)||[],l=e=>em.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Zp();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var em,tm=o((()=>{Qp(),em=new Map})),nm,rm,im,am=o((()=>{no(),A(),Ao(),nm=class extends k{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${ko(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},rm=class extends k{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${ko(t)}`,`Response: ${to(e)}`],name:`OffchainLookupResponseMalformedError`})}},im=class extends k{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function om(e){let{abi:t,data:n}=e,r=Ui(n,0,4),i=t.find(e=>e.type===`function`&&r===da(Bt(e)));if(!i)throw new dn(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?Ba(i.inputs,Ui(n,4)):void 0}}var sm=o((()=>{bn(),Ji(),fa(),Qa(),Ut()}));function cm(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=pa({abi:t,args:r,name:n});if(!e)throw new an(n,{docsPath:lm});i=e}if(i.type!==`error`)throw new an(void 0,{docsPath:lm});let a=da(Bt(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new rn(i.name,{docsPath:lm});o=Qi(i.inputs,r)}return Vi([a,o])}var lm,um=o((()=>{bn(),Hi(),fa(),ua(),Ut(),ga(),lm=`/docs/contract/encodeErrorResult`}));function dm(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=pa({abi:t,name:n});if(!e)throw new ln(n,{docsPath:fm});i=e}if(i.type!==`function`)throw new ln(void 0,{docsPath:fm});if(!i.outputs)throw new un(i.name,{docsPath:fm});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new vn(r)})();return Qi(i.outputs,a)}var fm,pm=o((()=>{bn(),ua(),ga(),fm=`/docs/contract/encodeFunctionResult`}));async function mm(e){let{data:t,ccipRequest:n}=e,{args:[r]}=om({abi:Dp,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await mm({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=hm(e)}})),dm({abi:Dp,functionName:`query`,result:[i,a]})}function hm(e){return e.name===`HttpRequestError`&&e.status?cm({abi:Dp,errorName:`HttpError`,args:[e.status,e.shortMessage]}):cm({abi:[Ta],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var gm=o((()=>{jp(),Da(),sm(),um(),pm()})),_m=c({ccipRequest:()=>ym,offchainLookup:()=>vm,offchainLookupAbiItem:()=>xm,offchainLookupSignature:()=>bm});async function vm(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=$a({data:r,abi:[xm]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:ym;try{if(!Wd(i,o))throw new im({sender:o,to:i});let{data:r}=await Cm(e,{blockNumber:t,blockTag:n,data:zi([l,Qi([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await mm({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new nm({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function ym({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new Ro({body:s,details:i?.error?to(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!D(i)){r=new rm({result:i,url:a});continue}return i}catch(e){r=new Ro({body:s,details:e.message,url:a})}}throw r}var bm,xm,Sm=o((()=>{km(),am(),Vo(),eo(),ua(),Gd(),Hi(),Wt(),gm(),no(),bm=`0x556f1830`,xm={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function Cm(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,te=n?_a(n):void 0;if(u&&(f||p))throw new k(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new k(\"Cannot provide both `code` & `to` as parameters.\");let C=u&&d,w=f&&p&&b&&d,T=C||w,ne=C?Em({code:u,data:d}):w?Dm({data:d,factory:f,factoryData:p,to:b}):d;try{ad(t);let n=(typeof a==`bigint`?M(a):void 0)||o,u=l?wp(l):void 0,d=td(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Ju)({...Wu(ee,{format:f}),accessList:s,account:te,authorizationList:r,blobs:c,data:ne,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:T?void 0:b,value:x},`call`);if(i&&wm({request:p})&&!d&&!u)try{return await Tm(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Vp)&&!(e instanceof Rp))throw e}let C=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),w=await e.request({method:`eth_call`,params:C});return w===`0x`?{data:void 0}:{data:w}}catch(n){let r=Om(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Sm(),_m));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw T&&r?.slice(0,10)===`0x101bb98d`?new Fo({factory:f}):Yp(n,{...t,account:te,chain:e.chain})}}function wm({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function Tm(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return qp({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Vp})(),u=(typeof a==`bigint`?M(a):void 0)||o,{schedule:d}=$p({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=Sa({abi:Ep,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Em({code:Ip,data:r})}:{to:l,data:r}},u]});return Qd({abi:Ep,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new Io({data:f});return f===`0x`?{data:void 0}:{data:f}}function Em(e){let{code:t,data:n}=e;return Wp({abi:Lt([`constructor(bytes, bytes)`]),bytecode:Np,args:[t,n]})}function Dm(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Wp({abi:Lt([`constructor(address, bytes, address, bytes)`]),bytecode:Pp,args:[i,t,n,r]})}function Om(e){if(!(e instanceof k))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var km=o((()=>{zt(),Tp(),va(),jp(),Mp(),Lp(),A(),Up(),Lo(),ef(),Kp(),Ca(),Jp(),N(),Xp(),Gu(),Qu(),tm(),nd(),od()}));ef(),Ca(),km();async function Am(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Sa({abi:n,args:i,functionName:a});try{let{data:t}=await E(e,Cm,`call`)({...o,data:s,to:r});return Qd({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw ys(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let jm=new Map,Mm=new Map,Nm=0;function Pm(e,t,n){let r=++Nm,i=()=>jm.get(e)||[],a=()=>{let t=i();jm.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Mm.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(jm.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&Mm.set(e,l),o}async function Fm(e){return new Promise(t=>setTimeout(t,e))}function Im(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Fm(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Fm(r),s())};s()})(),a}A();var Lm=class extends k{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},Rm=class extends k{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Up();function zm({chain:e,currentChainId:t}){if(!e)throw new Bp;if(t!==e.id)throw new zp({chain:e,currentChainId:t})}async function Bm(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}va(),A(),Hi(),Gu(),Qu(),Ai(),od();let Vm=new ki(128);async function Hm(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new Lm({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?_a(n):null;try{ad(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Eu({authorization:o[0]}).catch(()=>{throw new k(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await E(e,Ld,`getChainId`)({}),r&&zm({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Ju)({...Wu(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?zi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Vm.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(Vm.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Vm.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await E(e,Hd,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?zi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...zd,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await E(e,Bm,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Rm({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Rm({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Rm?e:Id(e,{...t,account:y,chain:t.chain||void 0})}}va(),Ca();async function Um(e,t){return Um.internal(e,Hm,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new Lm({docsPath:`/docs/contract/writeContract`});let u=a?_a(a):null,d=Sa({abi:i,args:s,functionName:c});try{return await E(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw ys(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Um||={}),A();var Wm=class extends k{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function Gm(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await Fm(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}Bn(),qu();let Km={\"0x0\":`reverted`,\"0x1\":`success`};function qm(e,t){let n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(e=>Kd(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?zn(e.transactionIndex):null,status:e.status?Km[e.status]:null,type:e.type?dd[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Jm=Ku(`transactionReceipt`,qm);va(),A(),vs(),Ca(),Hi(),Bn(),N();let Ym=M(0,{size:32});async function Xm(e,t){let{account:n=e.account,chain:r=e.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:s,version:c=`2.0.0`}=t,l=n?_a(n):null,u=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(u=typeof e.dataSuffix==`string`?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});let d=t.calls.map(e=>{let t=e,n=t.abi?Sa({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?zi([n,t.dataSuffix]):n,to:t.to,value:t.value?M(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:M(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new ls(new k(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new hs(new k(e,{details:e}))}let t=[];for(let n of d){let i=Hm(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?j(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:zi([...n.map(e=>e.status===`fulfilled`?e.value:Ym),M(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Id(n,{...t,account:l,chain:t.chain})}}Ji(),In(),Bn();async function Zm(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=Fn(qi(t,-64,-32)),r=qi(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>Ym.slice(2)===t?void 0:e.request({method:`eth_getTransactionReceipt`,params:[`0x${t}`]},{dedupe:!0}))),a=i.some(e=>e===null)?100:i.every(e=>e?.status===`0x1`)?200:i.every(e=>e?.status===`0x0`)?500:600;return{atomic:!1,chainId:zn(n),receipts:i.filter(Boolean),status:a,version:`2.0.0`}}return e.request({method:`wallet_getCallsStatus`,params:[t]})}let{atomic:r=!1,chainId:i,receipts:a,version:o=`2.0.0`,...s}=await n(t.id),[c,l]=(()=>{let e=s.status;return e>=100&&e<200?[`pending`,e]:e>=200&&e<300?[`success`,e]:e>=300&&e<700?[`failure`,e]:e===`CONFIRMED`?[`success`,200]:e===`PENDING`?[`pending`,100]:[void 0,e]})();return{...s,atomic:r,chainId:i?zn(i):void 0,receipts:a?.map(e=>({...e,blockNumber:j(e.blockNumber),gasUsed:j(e.gasUsed),status:Km[e.status]}))??[],statusCode:l,status:c,version:o}}A(),Qp(),no();async function Qm(e,t){let{id:n,pollingInterval:r=e.pollingInterval,status:i=({statusCode:e})=>e===200||e>=300,retryCount:a=4,retryDelay:o=({count:e})=>~~(1<<e)*200,timeout:s=6e4,throwOnFailure:c=!1}=t,l=to([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=Zp(),p,m=Pm(l,{resolve:d,reject:f},t=>{let s=Im(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await Gm(async()=>{let t=await E(e,Zm,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Wm(t);return t},{retryCount:a,delay:o});if(!i(s))return;r(()=>t.resolve(s))}catch(e){r(()=>t.reject(e))}},{interval:r,emitOnBegin:!0});return s});return p=s?setTimeout(()=>{m(),clearTimeout(p),f(new $m({id:n}))},s):void 0,await u}var $m=class extends k{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let eh=256,th;function nh(e=11){if(!th||eh+e>256*2){th=``,eh=0;for(let e=0;e<256;e++)th+=(256+Math.random()*256|0).toString(16).substring(1)}return th.substring(eh,eh+++e)}va();function rh(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?_a(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:nh(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}N();async function ih(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:M(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}id(),Oi(),A(),Up(),Bu(),Ri(),Gt(),Ji(),Bn();function ah(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!Fi(n))throw new Di({address:n});if(t<0)throw new Hp({chainId:t})}sh(e)}function oh(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Ad;for(let e of t){let t=O(e),n=zn(Ui(e,0,1));if(t!==32)throw new jd({hash:e,size:t});if(n!==1)throw new Md({hash:e,version:n})}}sh(e)}function sh(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Hp({chainId:t});if(i&&!Fi(i))throw new Di({address:i});if(r&&r>rd)throw new ku({maxFeePerGas:r});if(n&&r&&n>r)throw new Ru({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ch(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Hp({chainId:t});if(a&&!Fi(a))throw new Di({address:a});if(n||i)throw new k(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>rd)throw new ku({maxFeePerGas:r})}function lh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!Fi(a))throw new Di({address:a});if(t!==void 0&&t<=0)throw new Hp({chainId:t});if(n||i)throw new k(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>rd)throw new ku({maxFeePerGas:r})}Oi(),Do(),Ri();function uh(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new To({storageKey:i[e]});if(!Fi(r,{strict:!1}))throw new Di({address:r});t.push([r,i])}return t}Do(),Hi(),In(),N();function dh(e,t){let n=Fd(e);return n===`eip1559`?mh(e,t):n===`eip2930`?hh(e,t):n===`eip4844`?ph(e,t):n===`eip7702`?fh(e,t):gh(e,t)}function fh(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;ah(e);let f=uh(u),p=vh(n);return Vi([`0x04`,bu([M(r),a?M(a):`0x`,l?M(l):`0x`,c?M(c):`0x`,i?M(i):`0x`,o??`0x`,s?M(s):`0x`,d??`0x`,f,p,..._h(e,t)])])}function ph(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;oh(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Un(e)),n=e.kzg,r=xd({blobs:t,kzg:n});f===void 0&&(f=Ed({commitments:r})),p===void 0&&(p=Pd({blobs:t,commitments:r,proofs:Sd({blobs:t,commitments:r,kzg:n})}))}let m=uh(u),h=[M(n),i?M(i):`0x`,l?M(l):`0x`,c?M(c):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,d??`0x`,m,s?M(s):`0x`,f??[],..._h(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return Vi([`0x03`,bu(p?[h,g,_,v]:h)])}function mh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;sh(e);let d=uh(l);return Vi([`0x02`,bu([M(n),i?M(i):`0x`,c?M(c):`0x`,s?M(s):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,u??`0x`,d,..._h(e,t)])])}function hh(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;ch(e);let u=uh(c);return Vi([`0x01`,bu([M(n),a?M(a):`0x`,l?M(l):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`,u,..._h(e,t)])])}function gh(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;lh(e);let l=[a?M(a):`0x`,c?M(c):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new xo({v:t.v});return e})(),r=Fn(t.r),i=Fn(t.s);l=[...l,M(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,M(n),`0x`,`0x`]);return bu(l)}function _h(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=Fn(n.r),o=Fn(n.s);return[typeof i==`number`?i?M(1):`0x`:r===0n?`0x`:r===1n?M(1):r===27n?`0x`:M(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}N();function vh(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?Vn(e):`0x`,a,r?Vn(r):`0x`,..._h({},i)])}return t}Pi(),Gd();async function yh({address:e,authorization:t,signature:n}){return Wd(Mi(e),await Eu({authorization:t,signature:n}))}Ai();let bh=new ki(8192);function xh(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(bh.get(n))return bh.get(n);let r=e().finally(()=>bh.delete(n));return bh.set(n,r),r}A(),Vo(),vs(),N(),no();function Sh(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new es(Error(`method not supported`),{method:l});return xh(()=>Gm(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case Go.code:throw new Go(t);case Ko.code:throw new Ko(t);case qo.code:throw new qo(t,{method:n.method});case Jo.code:throw new Jo(t);case Yo.code:throw new Yo(t);case Xo.code:throw new Xo(t);case Zo.code:throw new Zo(t);case Qo.code:throw new Qo(t);case $o.code:throw new $o(t);case es.code:throw new es(t,{method:n.method});case ts.code:throw new ts(t);case ns.code:throw new ns(t);case rs.code:throw new rs(t);case is.code:throw new is(t);case as.code:throw new as(t);case os.code:throw new os(t);case ss.code:throw new ss(t);case cs.code:throw new cs(t);case ls.code:throw new ls(t);case us.code:throw new us(t);case ds.code:throw new ds(t);case fs.code:throw new fs(t);case ps.code:throw new ps(t);case ms.code:throw new ms(t);case hs.code:throw new hs(t);case 5e3:throw new rs(t);case gs.code:throw new gs(t);default:throw e instanceof k?e:new _s(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof Ro){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>Ch(e)}),{enabled:i,id:i?Wn(`${c}.${to(n)}`):void 0})}}function Ch(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===ts.code||e.code===Yo.code:e instanceof Ro&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function wh(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function Th(){return{}}A(),Pn(),Pa(),tr(),N();function Eh(e,t=`hex`){return Dh(Ma((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Mn(e);return Xn(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Dh(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Un(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Oh(e,n,128),i=e.readBytes(r);return t===`hex`?Un(i):i}return kh(e,Oh(e,n,192),t)}function Oh(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new k(`Invalid RLP prefix`)}function kh(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Dh(e,n));return i}Wt(),Gt();function Ah(e){return D(e)&&O(e)===32}function jh(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function Mh(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Nh=Mh();Vo(),no();function Ph(e,t={}){let{url:n,headers:r}=Fh(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await jh(async({signal:e})=>{let t={...l,body:to(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Nh.take(),...e})):{jsonrpc:`2.0`,id:i.id??Nh.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new Bo({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new Ro({body:i,details:to(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof Ro||e instanceof Bo?e:new Ro({body:i,cause:e,url:n})}}}}function Fh(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}Hi(),Gt(),N();function Ih(e){let t=typeof e==`string`?Wn(e):typeof e.raw==`string`?e.raw:Un(e.raw);return zi([Wn(`\u0019Ethereum Signed Message:\n${O(t)}`),t])}hi();function Lh(e,t){return mi(Ih(e),t)}no(),A();var Rh=class extends k{constructor({domain:e}){super(`Invalid domain \"${to(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},zh=class extends k{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Bh=class extends k{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};bn(),Oi(),Ri(),Gt(),N(),Zi(),no();function Vh(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{let n={...t};for(let t of e){let{name:e,type:r}=t;r===`address`&&(n[e]=n[e].toLowerCase())}return n};return to({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Hh(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(Xi);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;M(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!Fi(o))throw new Di({address:o});let c=r.match(Yi);if(c){let[e,t]=c;if(t&&O(o)!==Number.parseInt(t,10))throw new pn({expectedSize:Number.parseInt(t,10),givenSize:O(o)})}let l=i[r];l&&(Wh(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Rh({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new zh({primaryType:r,types:i})}function Uh({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function Wh(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Bh({type:e})}ua(),Hi(),N(),hi();function Gh(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Uh({domain:t}),...e.types};Hh({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Kh({domain:t,types:i})),r!==`EIP712Domain`&&a.push(qh({data:n,primaryType:r,types:i})),mi(zi(a))}function Kh({domain:e,types:t}){return qh({data:e,primaryType:`EIP712Domain`,types:t})}function qh({data:e,primaryType:t,types:n}){return mi(Jh({data:e,primaryType:t,types:n}))}function Jh({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Yh({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Qh({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return Qi(r,i)}function Yh({primaryType:e,types:t}){return mi(Vn(Xh({primaryType:e,types:t})))}function Xh({primaryType:e,types:t}){let n=``,r=Zh({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Zh({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Zh({primaryType:e.type,types:t},n);return n}function Qh({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},mi(Jh({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},mi(r)];if(n===`string`)return[{type:`bytes32`},mi(Vn(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Qh({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},mi(Qi(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}var $h=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function eg(e,t){return e.exec(t)?.groups}let tg=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ng=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,rg=/^\\(.+?\\).*?$/,ig=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function ag(e){let t=e.type;if(ig.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=ag(i),r<n-1&&(t+=`, `)}let r=eg(ig,e.type);return t+=`)${r?.array||``}`,ag({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function og(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ag(i),r!==n-1&&(t+=`, `)}return t}function sg(e){return e.type===`function`?`function ${e.name}(${og(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${og(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${og(e.inputs)})`:e.type===`error`?`error ${e.name}(${og(e.inputs)})`:e.type===`constructor`?`constructor(${og(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let cg=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function lg(e){return cg.test(e)}function ug(e){return eg(cg,e)}let dg=new Set([`memory`,`indexed`,`storage`,`calldata`]),fg=new Set([`calldata`,`memory`,`storage`]);var pg=class extends $h{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},mg=class extends $h{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},hg=class extends $h{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},gg=class extends $h{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},_g=class extends $h{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},vg=class extends $h{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},yg=class extends $h{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},bg=class extends $h{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},xg=class extends $h{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Sg=class extends $h{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Cg=class extends $h{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},wg=class extends $h{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Tg(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Eg=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),Dg=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Og=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,kg=/^u?int$/;function Ag(e,t){let n=Tg(e,t?.type,t?.structs);if(Eg.has(n))return Eg.get(n);let r=rg.test(e),i=eg(r?Og:Dg,e);if(!i)throw new gg({param:e});if(i.name&&Pg(i.name))throw new _g({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=jg(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Ag(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(kg.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Mg(c))throw new mg({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new vg({param:e,type:t?.type,modifier:i.modifier});if(fg.has(i.modifier)&&!Fg(c,!!i.array))throw new yg({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Eg.set(n,u),u}function jg(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?jg(o,[...t,n.trim()]):jg(o,t,`${n}${i}`,r);case`(`:return jg(o,t,`${n}${i}`,r+1);case`)`:return jg(o,t,`${n}${i}`,r-1);default:return jg(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new wg({current:n,depth:r});return t.push(n.trim()),t}function Mg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||tg.test(e)||ng.test(e)}let Ng=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Pg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||tg.test(e)||ng.test(e)||Ng.test(e)}function Fg(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Ig(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!lg(n))continue;let i=ug(n);if(!i)throw new xg({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=Ag(t,{type:`struct`});o.push(n)}if(!o.length)throw new Sg({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Rg(a,t)}return r}let Lg=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Rg(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(rg.test(i.type))r.push(i);else{let e=eg(Lg,i.type);if(!e?.type)throw new bg({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Cg({type:o});r.push({...i,type:`tuple${a??``}`,components:Rg(t[o],t,new Set([...n,o]))})}else if(Mg(o))r.push(i);else throw new pg({type:o})}}return r}function zg(e){let t=[];if(typeof e==`string`){let n=jg(e),r=n.length;for(let e=0;e<r;e++)t.push(Ag(n[e],{modifiers:dg}))}else{let n=Ig(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(lg(r))continue;let a=jg(r),o=a.length;for(let e=0;e<o;e++)t.push(Ag(a[e],{modifiers:dg,structs:n}))}}if(t.length===0)throw new hg({params:e});return t}let Bg={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;Gs(),pi(),Qf(),B();function Vg(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=di(kf(e));return n===`Bytes`?r:L(r)}function Hg(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=Ws(Cd,kf(e),kf(t));return r===`Bytes`?i:L(i)}function Ug(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Cd(kf(e));return n===`Bytes`?r:L(r)}function Wg(e){return fp(e)&&op(e)===32}Qf(),sf(),B(),Ef();function Gg(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new Qg({prefix:r,cause:new e_});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Qg({prefix:r,cause:new $g});return}throw new Zg({publicKey:e})}function Kg(e){let t=(()=>{if(fp(e))return Jg(e);if(Wf(e))return qg(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return Gg(t),t}function qg(e){return Jg(L(e))}function Jg(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new t_({publicKey:e});return e.length===130?{prefix:4,x:BigInt(z(e,0,32)),y:BigInt(z(e,32,64))}:e.length===132?{prefix:Number(z(e,0,1)),x:BigInt(z(e,1,33)),y:BigInt(z(e,33,65))}:{prefix:Number(z(e,0,1)),x:BigInt(z(e,1,33))}}function Yg(e,t={}){return jf(Xg(e,t))}function Xg(e,t={}){Gg(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return I(a?R(n,{size:1}):`0x`,R(r,{size:32}),typeof i==`bigint`?R(i,{size:32}):`0x`)}var Zg=class extends F{constructor({publicKey:e}){super(`Value \\`${wf(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},Qg=class extends F{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},$g=class extends F{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},e_=class extends F{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},t_=class extends F{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${op(ep(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Qf(),sf();let n_=/^0x[a-fA-F0-9]{40}$/;function r_(e,t={}){let{strict:n=!0}=t;if(!n_.test(e))throw new l_({address:e,cause:new u_});if(n){if(e.toLowerCase()===e)return;if(i_(e)!==e)throw new l_({address:e,cause:new d_})}}function i_(e){if(Bg.has(e))return Bg.get(e);r_(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Vg(Mf(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Bg.set(e,i),i}function a_(e,t={}){let{checksum:n=!1}=t;return r_(e),n?i_(e):e}function o_(e,t={}){return a_(`0x${Vg(`0x${Xg(e).slice(4)}`).substring(26)}`,t)}function s_(e,t){return r_(e,{strict:!1}),r_(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function c_(e,t={}){let{strict:n=!0}=t??{};try{return r_(e,{strict:n}),!0}catch{return!1}}var l_=class extends F{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},u_=class extends F{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},d_=class extends F{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};let f_=/^(.*)\\[([0-9]*)\\]$/,p_=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,m_=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let h_=2n**256n-1n;Qf(),sf(),B();function g_(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=P_(t.type);if(a){let[n,o]=a;return v_(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return S_(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return __(e,{checksum:r});if(t.type===`bool`)return y_(e);if(t.type.startsWith(`bytes`))return b_(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return x_(e,t);if(t.type===`string`)return C_(e,{staticPosition:i});throw new Z_(t.type)}function __(e,t={}){let{checksum:n=!1}=t;return[(e=>n?i_(e):e)(L(Lf(e.readBytes(32),-20))),32]}function v_(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Bf(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Bf(e.readBytes(32)),s=F_(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=g_(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(F_(t)){let n=a+Bf(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=g_(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=g_(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function y_(e){return[zf(e.readBytes(32),{size:32}),32]}function b_(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Bf(e.readBytes(32));e.setPosition(n+t);let r=Bf(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[L(i),32]}return[L(e.readBytes(Number.parseInt(i,10),32)),32]}function x_(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?Rf(i,{signed:n}):Bf(i,{signed:n}),32]}function S_(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(F_(t)){let n=i+Bf(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=g_(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=g_(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function C_(e,{staticPosition:t}){let n=t+Bf(e.readBytes(32));e.setPosition(n);let r=Bf(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Vf(Hf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function w_({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(T_({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function T_({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=P_(r.type);if(i){let[t,a]=i;return O_(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return N_(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return D_(n,{checksum:e});if(r.type===`bool`)return A_(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=m_.exec(r.type)??[];return j_(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return k_(n,{type:r.type});if(r.type===`string`)return M_(n);throw new Z_(r.type)}function E_(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=op(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(R(t+i,{size:32})),r.push(s),i+=op(s)):n.push(s)}return I(...n,...r)}function D_(e,t){let{checksum:n=!1}=t;return r_(e,{strict:n}),{dynamic:!1,encoded:rp(e.toLowerCase())}}function O_(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new X_(e);if(!a&&e.length!==r)throw new q_({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=T_({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=E_(s);if(a){let t=R(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?I(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:I(...s.map(({encoded:e})=>e))}}function k_(e,{type:t}){let[,n]=t.split(`bytes`),r=op(e);if(!n){let t=e;return r%32!=0&&(t=ip(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:I(rp(R(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new J_({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ip(e)}}function A_(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:rp(tp(e))}}function j_(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new hp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:R(e,{size:32,signed:t})}}function M_(e){let t=np(e),n=Math.ceil(op(t)/32),r=[];for(let e=0;e<n;e++)r.push(ip(z(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:I(ip(R(op(t),{size:32})),...r)}}function N_(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=T_({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?E_(a):I(...a.map(({encoded:e})=>e))}}function P_(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function F_(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(F_);let n=P_(e.type);return!!(n&&F_({...e,type:n[1]}))}sf();let I_={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new B_({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new z_({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new R_({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new R_({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function L_(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(I_);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var R_=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},z_=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},B_=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Qf(),sf(),B();function V_(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?jf(t):t,o=L_(a);if(If(a)===0&&e.length>0)throw new K_;if(If(a)&&If(a)<32)throw new G_({data:typeof t==`string`?t:L(t),parameters:e,size:If(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=g_(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function H_(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Y_({expectedLength:e.length,givenLength:t.length});let i=E_(w_({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function U_(e,t){if(e.length!==t.length)throw new Y_({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(U_.encode(i,a))}return I(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return r_(e),rp(e.toLowerCase(),r?32:0)}if(e===`string`)return np(n);if(e===`bytes`)return n;if(e===`bool`)return rp(tp(n),r?32:1);let i=e.match(m_);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return R(n,{size:r?32:o,signed:t===`int`})}let a=e.match(p_);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new J_({expectedSize:Number.parseInt(t,10),value:n});return ip(n,r?32:0)}let o=e.match(f_);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:I(...i)}throw new Z_(e)}e.encode=t})(U_||={});function W_(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?zg(e):e}var G_=class extends F{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${og(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},K_=class extends F{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},q_=class extends F{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},J_=class extends F{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${op(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Y_=class extends F{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},X_=class extends F{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},Z_=class extends F{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};Qf(),sf(),B();function Q_(e){return $_(e,`Hex`)}function $_(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return ev(L_((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new vp(e);return jf(e)}return e})(),{recursiveReadLimit:1/0}),n)}function ev(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?L(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=tv(e,n,128),i=e.readBytes(r);return t===`Hex`?L(i):i}return nv(e,tv(e,n,192),t)}function tv(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new F(`Invalid RLP prefix`)}function nv(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(ev(e,n));return i}function rv(e,t){let{as:n}=t,r=av(e),i=L_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?L(i.bytes):i.bytes}function iv(e,t={}){let{as:n=`Hex`}=t;return rv(e,{as:n})}function av(e){return Array.isArray(e)?ov(e.map(e=>av(e))):sv(e)}function ov(e){let t=e.reduce((e,t)=>e+t.length,0),n=cv(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function sv(e){let t=typeof e==`string`?jf(e):e,n=cv(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function cv(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new F(`Length is too large.`)}sf(),B(),Ef();function lv(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Cv({signature:e});if(e.r<0n||e.r>h_)throw new wv({value:e.r});if(e.s<0n||e.s>h_)throw new Tv({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Ev({value:e.yParity})}function uv(e){return dv(L(e))}function dv(e){if(e.length!==130&&e.length!==132)throw new Sv({signature:e});let t=BigInt(z(e,0,32)),n=BigInt(z(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return bv(t)}catch{throw new Ev({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function fv(e){if(e.r!==void 0&&e.s!==void 0)return pv(e)}function pv(e){let t=typeof e==`string`?dv(e):e instanceof Uint8Array?uv(e):typeof e.r==`string`?hv(e):e.v?mv(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return lv(t),t}function mv(e){return{r:e.r,s:e.s,yParity:bv(e.v)}}function hv(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=bv(t)),typeof n!=`number`)throw new Ev({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function gv(e){let[t,n,r]=e;return pv({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function _v(e){lv(e);let t=e.r,n=e.s;return I(R(t,{size:32}),R(n,{size:32}),typeof e.yParity==`number`?R(xv(e.yParity),{size:1}):`0x`)}function vv(e){let{r:t,s:n,yParity:r}=e;return{r:R(t,{size:32}),s:R(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function yv(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:sp(R(t)),n===0n?`0x`:sp(R(n))]}function bv(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Dv({value:e})}function xv(e){if(e===0)return 27;if(e===1)return 28;throw new Ev({value:e})}var Sv=class extends F{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${op(ep(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Cv=class extends F{constructor({signature:e}){super(`Signature \\`${wf(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},wv=class extends F{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Tv=class extends F{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Ev=class extends F{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},Dv=class extends F{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};B();function Ov(e,t={}){return typeof e.chainId==`string`?kv(e):{...e,...t.signature}}function kv(e){let{address:t,chainId:n,nonce:r}=e,i=fv(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Av(e){return e.map(kv)}function jv(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:R(n),nonce:R(r),...vv(i)}}function Mv(e){return e.map(jv)}gu(),Qf(),B();function Nv(e){let{privateKey:t}=e;return Kg(tu.ProjectivePoint.fromPrivateKey(ep(t).slice(2)))}function Pv(e){return o_(Fv(e))}function Fv(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Kg(new tu.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(ep(t).substring(2)))}function Iv(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=tu.sign(kf(r),kf(i),{extraEntropy:typeof t==`boolean`?t:ep(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Lv(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?s_(t,Pv({payload:r,signature:a})):tu.verify(a,kf(r),Yg(i),...n?[{prehash:!0,lowS:!0}]:[])}sf(),B();let Rv=W_(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function zv(e){if(typeof e==`string`){if(z(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Hv(e)}else lv(e.authorization)}function Bv(e){zv(e);let t=up(z(e,-64,-32)),n=z(e,-t-64,-64),r=z(e,0,-t-64),[i,a,o]=V_(Rv,n);return{authorization:Ov({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function Vv(e){try{return zv(e),!0}catch{return!1}}var Hv=class extends F{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};Do(),Ji(),Bn();function Uv(e){let t=qi(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&zn(t)>=192)return`legacy`;throw new Co({serializedType:t})}Oi(),Do(),Ri(),Wt(),On(),In(),Bn();function Wv(e){let t=Uv(e);return t===`eip1559`?qv(e):t===`eip2930`?Jv(e):t===`eip4844`?Kv(e):t===`eip7702`?Gv(e):Yv(e)}function Gv(e){let t=Xv(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new wo({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:zn(n),type:`eip7702`};return D(s)&&s!==`0x`&&(h.to=s),D(o)&&o!==`0x`&&(h.gas=j(o)),D(l)&&l!==`0x`&&(h.data=l),D(r)&&(h.nonce=r===`0x`?0:zn(r)),D(c)&&c!==`0x`&&(h.value=j(c)),D(a)&&a!==`0x`&&(h.maxFeePerGas=j(a)),D(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=j(i)),u.length!==0&&u!==`0x`&&(h.accessList=Zv(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=Qv(d)),ah(h),{...t.length===13?$v(t):void 0,...h}}function Kv(e){let t=Xv(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new wo({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:zn(a),to:u,type:`eip4844`};return D(l)&&l!==`0x`&&(S.gas=j(l)),D(f)&&f!==`0x`&&(S.data=f),D(o)&&(S.nonce=o===`0x`?0:zn(o)),D(d)&&d!==`0x`&&(S.value=j(d)),D(m)&&m!==`0x`&&(S.maxFeePerBlobGas=j(m)),D(c)&&c!==`0x`&&(S.maxFeePerGas=j(c)),D(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=j(s)),p.length!==0&&p!==`0x`&&(S.accessList=Zv(p)),y&&b&&x&&(S.sidecars=Pd({blobs:y,commitments:b,proofs:x})),oh(S),{...r.length===14?$v(r):void 0,...S}}function qv(e){let t=Xv(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new wo({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:zn(n),type:`eip1559`};return D(s)&&s!==`0x`&&(m.to=s),D(o)&&o!==`0x`&&(m.gas=j(o)),D(l)&&l!==`0x`&&(m.data=l),D(r)&&(m.nonce=r===`0x`?0:zn(r)),D(c)&&c!==`0x`&&(m.value=j(c)),D(a)&&a!==`0x`&&(m.maxFeePerGas=j(a)),D(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=j(i)),u.length!==0&&u!==`0x`&&(m.accessList=Zv(u)),sh(m),{...t.length===12?$v(t):void 0,...m}}function Jv(e){let t=Xv(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new wo({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:zn(n),type:`eip2930`};return D(o)&&o!==`0x`&&(p.to=o),D(a)&&a!==`0x`&&(p.gas=j(a)),D(c)&&c!==`0x`&&(p.data=c),D(r)&&(p.nonce=r===`0x`?0:zn(r)),D(s)&&s!==`0x`&&(p.value=j(s)),D(i)&&i!==`0x`&&(p.gasPrice=j(i)),l.length!==0&&l!==`0x`&&(p.accessList=Zv(l)),ch(p),{...t.length===11?$v(t):void 0,...p}}function Yv(e){let t=Eh(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new wo({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(D(a)&&a!==`0x`&&(d.to=a),D(i)&&i!==`0x`&&(d.gas=j(i)),D(s)&&s!==`0x`&&(d.data=s),D(n)&&(d.nonce=n===`0x`?0:zn(n)),D(o)&&o!==`0x`&&(d.value=j(o)),D(r)&&r!==`0x`&&(d.gasPrice=j(r)),lh(d),t.length===6)return d;let f=D(c)&&c!==`0x`?j(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new xo({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Xv(e){return Eh(`0x${e.slice(4)}`,`hex`)}function Zv(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Fi(r,{strict:!1}))throw new Di({address:r});t.push({address:r,storageKeys:i.map(e=>Ah(e)?e:Fn(e))})}return t}function Qv(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:zn(r),nonce:a===`0x`?0:zn(a),...$v([o,s,c])})}return t}function $v(e){let t=e.slice(-3),n=t[0]===`0x`||j(t[0])===0n?27n:28n;return{r:En(t[1],{size:32}),s:En(t[2],{size:32}),v:n,yParity:n===27n?0:1}}A();var ey=class extends k{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function ty(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new ey({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,`0`);return BigInt(`${i?`-`:``}${n}${r}`)}jp(),Lp(),bn(),A(),Lo(),ef(),Ca(),Jp();async function ny(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return qp({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=Sa({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=ys(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>E(e,Am,`readContract`)({...f===null?{code:Ip}:{address:f},abi:Ep,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new $t;if(!a)throw new Io({data:r});let e=Qd({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=ys(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new k(`multicall results mismatch`);return _}sf();function ry(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new F(`Unable to normalize signature.`);return i}function iy(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return c_(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>iy(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>iy(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ay(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ay(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&c_(n[r],{strict:!1}))return o}}sf(),B();function oy(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=fp(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?sy(e)===z(t,0,4):e.type===`event`?ly(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new dy({name:t});if(o.length===1)return{...o[0],...i?{hash:ly(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:ly(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?iy(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ay(e.inputs,s.inputs,r);if(t)throw new uy({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new dy({name:t});return{...c,...i?{hash:ly(c)}:{}}}function sy(...e){return z(ly((()=>{if(Array.isArray(e[0])){let[t,n]=e;return oy(t,n)}return e[0]})()),0,4)}function cy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return oy(t,n)}return e[0]})();return ry(typeof t==`string`?t:sg(t))}function ly(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return oy(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Vg(np(cy(t)))}var uy=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ry(sg(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${ry(sg(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},dy=class extends F{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};function fy(e){return sy(e)}sf(),B();function py(e){if(z(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new gy(e)}function my(e){let{data:t,signature:n,to:r}=e;return I(H_(W_(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function hy(e){try{return py(e),!0}catch{return!1}}var gy=class extends F{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};gu(),Bn(),tr();function _y({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new tu.Signature(j(e),j(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Xn(o)}jp(),Lp(),Lo(),Kp(),Ca(),Pi(),Gd(),Hi(),Wt(),Bn(),N(),km();async function vy(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return D(e)?e:typeof e==`object`&&`r`in e&&`s`in e?_y(e):Un(e)})();try{if(s===`eoa`)try{if(Wd(Mi(n),await yu({hash:i,signature:c})))return!0}catch{}return Vv(c)?await yy(e,{...t,multicallAddress:o,signature:c}):await by(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Wd(Mi(n),await yu({hash:i,signature:c})))return!0}catch{}if(e instanceof Sy)return!1;throw e}}async function yy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Bv(t.signature);if(await ih(e,{address:n,blockNumber:r,blockTag:i})===Vi([`0xef0100`,s.address]))return await xy(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:M(s.r,{size:32}),s:M(s.s,{size:32}),yParity:s.yParity};if(!await yh({address:n,authorization:d}))throw new Sy;let f=await E(e,Am,`readContract`)({...o?{address:o}:{code:Ip},authorizationList:[d],abi:Ep,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Sa({abi:kp,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Sy}async function by(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||hy(o)?o:my({data:i,signature:o,to:r}))(),u=s?{to:s,data:Sa({abi:Ap,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Wp({abi:Ap,args:[n,a,l],bytecode:Fp}),...c},{data:d}=await E(e,Cm,`call`)(u).catch(e=>{throw e instanceof jo?new Sy:e});if(Rn(d??`0x0`))return!0;throw new Sy}async function xy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await E(e,Am,`readContract`)({address:n,abi:kp,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Mo?new Sy:e})).startsWith(`0x1626ba7e`))return!0;throw new Sy}var Sy=class extends Error{};async function Cy(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await E(e,Xm,`sendCalls`)(t);return await E(e,Qm,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}va(),N(),Qu(),od();async function wy(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Lm({docsPath:`/docs/actions/wallet/signTransaction`});let a=_a(n);ad({account:a,...t});let o=await E(e,Ld,`getChainId`)({});r!==null&&zm({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Ju;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:M(o),from:a.address}]},{retryCount:0})}va();async function Ty(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Lm({docsPath:`/docs/actions/wallet/signTypedData`});let o=_a(n),s={EIP712Domain:Uh({domain:r}),...t.types};if(Hh({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Vh({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function Ey({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=nh();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:Sh(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Dy(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>Ey({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}A();var Oy=class extends k{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};Vo(),tm();function ky(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new Oy;let b=Ph(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return Ey({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=$p({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new zo({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Hs(),Ol(),Rl(),Yc(),Tl();let Ay=Lc(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),jy=Ay.create(BigInt(`-3`)),My=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Ny=Dl({a:jy,b:My,Fp:Ay,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},zs),Py=Ny,Fy=vl(Ay,{A:jy,B:My,Z:Ay.create(BigInt(`-10`))}),Iy=Il(Py.ProjectivePoint,e=>Fy(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:Ay.ORDER,m:1,k:128,expand:`xmd`,hash:zs}),Ly=Lc(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Ry=Ly.create(BigInt(`-3`)),zy=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),By=Dl({a:Ry,b:zy,Fp:Ly,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Vs),Vy=vl(Ly,{A:Ry,B:zy,Z:Ly.create(BigInt(`-12`))});Il(By.ProjectivePoint,e=>Vy(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Ly.ORDER,m:1,k:192,expand:`xmd`,hash:Vs});let Hy=Lc(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Uy=Hy.create(BigInt(`-3`)),Wy=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Gy=Dl({a:Uy,b:Wy,Fp:Hy,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Bs),Ky=vl(Hy,{A:Uy,B:Wy,Z:Hy.create(BigInt(`-4`))});Il(Gy.ProjectivePoint,e=>Ky(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Hy.ORDER,m:1,k:256,expand:`xmd`,hash:Bs});let qy=Ny,Jy=Ny;Iy.hashToCurve,Iy.encodeToCurve,Qf(),B();function Yy(e){let{privateKey:t}=e;return Kg(Jy.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):L(t).slice(2)))}function Xy(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Jy.sign(r instanceof Uint8Array?r:jf(r),i instanceof Uint8Array?i:jf(i),{extraEntropy:typeof t==`boolean`?t:ep(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Zy(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Jy.verify(i,n instanceof Uint8Array?n:jf(n),Xg(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}Qf();let Qy=new TextEncoder,$y=new TextDecoder,eb=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),tb={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function nb(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=eb[r>>18],i[t+1]=eb[r>>12&63],i[t+2]=eb[r>>6&63],i[t+3]=eb[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=$y.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function rb(e,t={}){return nb(jf(e),t)}function ib(e,t={}){return nb(Mf(e),t)}function ab(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Qy.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(tb[r[e]]<<18)+(tb[r[e+1]]<<12)+(tb[r[e+2]]<<6)+tb[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function ob(e){return Vf(ab(e))}Qf(),sf(),B();function sb(e,t={}){let{as:n=`Hex`}=t,r=xb(e),i=L_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?L(i.bytes):i.bytes}var cb=class extends F{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},lb=class extends F{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},ub=class extends F{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},db=class extends F{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},fb=class extends F{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},pb=class extends F{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},mb=class extends F{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},hb=class extends F{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},gb=class extends F{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},_b=class extends F{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},vb=class extends F{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},yb=class extends F{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},bb=class extends F{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function xb(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return xb.number(e);if(typeof e==`bigint`)throw new mb;if(typeof e==`string`)return xb.string(e);if(Array.isArray(e))return xb.array(e);if(e instanceof Uint8Array)return xb.byteString(e);if(e instanceof ArrayBuffer)return xb.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return xb.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return xb.map(e);if(typeof e==`object`)return xb.object(e);throw new hb({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new gb({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new gb({number:e.toString(10)})}e.number=t;function n(e){let t=Mf(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new _b({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new vb({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new bb({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new yb({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new yb({size:i})}e.map=o})(xb||={});function Sb(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Sb.readUnsignedInteger(e,r);case 1:return Sb.readNegativeInteger(e,r);case 2:return Sb.readByteString(e,r);case 3:return Sb.readTextString(e,r);case 4:return Sb.readArray(e,r);case 5:return Sb.readMap(e,r);case 6:throw new db({tag:r});case 7:return Sb.readSimpleOrFloat(e,r);default:throw new cb({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new ub:new lb({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new fb({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new fb({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Vf(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new pb({value:t});return}throw new lb({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(Sb||={}),sf();function Cb(e){let t=Yg(e),n=t.slice(1,33),r=t.slice(33,65);return sb(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}function wb(e){let t=qy.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}B();function Tb(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=I(Ug(np(r)),R(n,{size:1}),R(i,{size:4}));if(!t)return a;let o=L(new Uint8Array(16)),s=L(t.id);return I(a,o,R(t.id.length,{size:2}),s,Cb(t.publicKey))}function Eb(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:rb(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Qf(),sf(),B();function Db(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:ab(e),type:`public-key`})):[{id:ab(t),type:`public-key`}]}:{},challenge:jf(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Ob(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Tb({flag:i,rpId:o,signCount:s}),u=Eb({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ug(np(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:I(l,d)}}async function kb(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Db(n);try{let e=await t(r);if(!e)throw new Ab;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=wb(o);return{id:s,metadata:{authenticatorData:L(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Ab({cause:e})}}var Ab=class extends F{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function jb(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=jf(s);if(u.length<37||a!==void 0&&!Nf(u.slice(0,32),Ug(np(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||L(ab(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Zy({hash:!0,payload:Of(u,Ug(Mf(c),{as:`Bytes`})),publicKey:i,signature:o})}let Mb=Ob;async function Nb(e){return kb(e)}function Pb(e){return jb(e)}sf(),B(),Ef();let Fb=`0x01`,Ib=`0x02`,Lb=`0x03`,Rb=`0x04`,zb=`0x7777777777777777777777777777777777777777777777777777777777777777`;function Bb(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:Bb({...e,signature:t.inner}):o_(Vb(e))}function Vb(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Fv({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return Vb({payload:t,signature:n.inner})}}function Hb(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?z(e,0,-op(zb)):e;if(op(t)===65){let e=dv(t);return lv(e),{signature:e,type:`secp256k1`}}let n=z(t,0,1),r=z(t,1),i=op(r);if(n===Fb){if(i!==129)throw new Xb({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:cp(z(r,64,96)),y:cp(z(r,96,128))},prehash:up(z(r,128,129))!==0,signature:{r:cp(z(r,0,32)),s:cp(z(r,32,64))},type:`p256`}}if(n===Ib){if(i<128)throw new Xb({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=z(r,0,e),a,o;for(let t=37;t<e;t++){let e=dp(z(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=z(n,0,t),o=e;break}catch{}}if(!a||!o)throw new Xb({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:cp(z(r,e+64,e+96)),y:cp(z(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:cp(z(r,e,e+32)),s:cp(z(r,e+32,e+64))},type:`webAuthn`}}if(n===Lb||n===Rb)return{userAddress:z(r,0,20),inner:Hb(z(r,20)),type:`keychain`,version:n===Rb?`v2`:`v1`};throw new Xb({reason:`Unknown signature type identifier: ${n}. Expected ${Fb} (P256), ${Ib} (WebAuthn), ${Lb} (Keychain V1), or ${Rb} (Keychain V2)`,serialized:t})}function Ub(e,t){if(typeof e==`string`)return Hb(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=Gb(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:o_(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:o_(Fv({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function Wb(e){if(e.type===`secp256k1`)return{signature:hv(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:cp(e.pubKeyX),y:cp(e.pubKeyY)},signature:{r:cp(e.r),s:cp(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=op(t),r,i;for(let e=37;e<n;e++){let n=dp(z(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=z(t,0,e),i=n;break}catch{}}if(!r||!i)throw new Xb({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:cp(e.pubKeyX),y:cp(e.pubKeyY)},signature:{r:cp(e.r),s:cp(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:Wb(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new Yb({envelope:e})}function Gb(e){if(typeof e!=`object`||!e)throw new Yb({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new Yb({envelope:e})}function Kb(e,t={}){let n=Gb(e);if(n===`secp256k1`)return I(_v(e.signature),t.magic?zb:`0x`);if(n===`p256`){let n=e;return I(Fb,R(n.signature.r,{size:32}),R(n.signature.s,{size:32}),R(n.publicKey.x,{size:32}),R(n.publicKey.y,{size:32}),R(+!!n.prehash,{size:1}),t.magic?zb:`0x`)}if(n===`webAuthn`){let n=e;return I(Ib,I(n.metadata.authenticatorData,np(n.metadata.clientDataJSON)),R(n.signature.r,{size:32}),R(n.signature.s,{size:32}),R(n.publicKey.x,{size:32}),R(n.publicKey.y,{size:32}),t.magic?zb:`0x`)}if(n===`keychain`){let n=e;return I(n.version===`v1`?Lb:Rb,n.userAddress,Kb(n.inner),t.magic?zb:`0x`)}throw new Yb({envelope:e})}function qb(e){let t=Gb(e);if(t===`secp256k1`)return{...vv(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:R(t.publicKey.x,{size:32}),pubKeyY:R(t.publicKey.y,{size:32}),r:R(t.signature.r,{size:32}),s:R(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=I(t.metadata.authenticatorData,np(t.metadata.clientDataJSON));return{pubKeyX:R(t.publicKey.x,{size:32}),pubKeyY:R(t.publicKey.y,{size:32}),r:R(t.signature.r,{size:32}),s:R(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:qb(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new Yb({envelope:e})}function Jb(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return o_(t.publicKey)})();if(!r)return!1;let i=Ub(e);if(i.type===`secp256k1`)return r?Lv({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return s_(o_(i.publicKey),r)?Zy({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return s_(o_(i.publicKey),r)?Pb({challenge:ep(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new Zb(`Unable to verify signature envelope of type \"${i.type}\".`)}var Yb=class extends F{constructor({envelope:e}){super(`Unable to coerce value (\\`${wf(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},Xb=class extends F{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},Zb=class extends F{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};sf(),B();function Qb(e){return e.startsWith(`tempo`)?$b(e).address:e}function $b(e){if(!e.startsWith(`tempox`))throw new ex({address:e});let t=e.slice(6);return $f(t,{strict:!0}),{address:i_(t)}}var ex=class extends F{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};B();function tx(e,t={}){if(typeof e.chainId==`string`)return nx(e);let n={...e,address:Qb(e.address)};return t.signature?{...n,signature:t.signature}:n}function nx(e){let{address:t,chainId:n,nonce:r}=e,i=Wb(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function rx(e){return e.map(e=>nx(e))}function ix(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=Hb(i)),tx(a)}function ax(e){let t=[];for(let n of e)t.push(ix(n));return t}function ox(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:R(n),nonce:R(r),signature:qb(i)}}function sx(e){return e.map(e=>ox(e))}function cx(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?Kb(e.signature):void 0;return[n?R(n):`0x`,t,r?R(r):`0x`,...i?[i]:[]]}function lx(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(cx(n));return t}B();function ux(e,t={}){if(`keyId`in e)return dx(e);let n=e,r={...n,address:Qb(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:Qb(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:Qb(e.address),selector:wx(e.selector),...e.recipients?{recipients:e.recipients.map(e=>Qb(e))}:{}}))}:{}};return t.signature?{...r,signature:Ub(t.signature)}:r}function dx(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=Wb(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:Cx(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:cp(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&Sx(e.period)>0?{period:Sx(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function fx(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:Sx(o)||void 0,type:l,chainId:r===`0x`?0n:cp(r),...o===void 0?{}:{expiry:Sx(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:xx(n),...r===void 0?{}:{period:Sx(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=Hb(n)),ux(u)}function px(e){return hx(e)}function mx(e){return fx(Q_(e))}function hx(e){let[t]=vx(e);return Vg(iv(t))}function gx(e){return iv(vx(e))}function _x(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:wx(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:R(r),expiry:typeof i==`number`?R(i):null,keyId:Qb(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:R(t),...n?{period:bx(n)}:{}})),signature:qb(s),...c?{allowedCalls:c}:{}}}function vx(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?Kb(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,yx(e.limit)];return e.period&&e.period>0&&t.push(bx(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([wx(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[yx(n),s,t,i!=null&&i!==0||c||l?bx(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function yx(e){return e===0n?`0x`:R(e)}function bx(e){return e===0?`0x`:R(e)}function xx(e){return e===`0x`?0n:BigInt(e)}function Sx(e){return e===`0x`?0:up(e)}function Cx(e){return typeof e==`string`?e:Array.isArray(e)?L(new Uint8Array(e)):e}function wx(e){if(e)return e.startsWith(`0x`)?e:sy(e)}B();let Tx=`0x20c0`;function Ex(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):Dx(e)}function Dx(e){let t=Qb(e);if(!t.toLowerCase().startsWith(Tx))throw Error(`invalid tip20 address.`);return cp(z(t,6))}function Ox(e){if(typeof e==`string`){let t=Qb(e);return r_(t),t}return I(Tx,R(e,{size:18}))}B();let kx={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function Ax(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Vg(np(kx[e]??e))}let jx={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Mx={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Nx(e,t={}){if(!e)return null;let n=fv(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=Av(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Mx[e.type]??e.type),n&&(r.v=xv(n.yParity)),r}let Px={...jx,tempo:`0x76`},Fx={...Mx,\"0x76\":`tempo`};function Ix(e,t={}){if(!e)return null;let n=Nx(e);return n.type=Fx[e.type],e.aaAuthorizationList&&(n.authorizationList=rx(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=Wb(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=dx(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=hv(e.feePayerSignature),n.feePayerSignature.v=xv(n.feePayerSignature.yParity)),n}B();function Lx(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Mv(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=R(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=R(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=R(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=R(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=R(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=R(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=jx[e.type]||e.type),e.value!==void 0&&(t.value=R(e.value)),t}B();function Rx(e){let t=Lx({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=sx(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?Qb(e.to):e.to,value:e.value?R(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?Qb(e.to):void 0,value:e.value?R(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=Ox(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=_x(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=R(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=R(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return ap(6);if(typeof e.nonceKey==`bigint`)return R(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=Px.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}sf(),B();function zx(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&r_(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Wg(e)?e:sp(e))})}return t}function Bx(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(op(r[e])!==32)throw new Vx({storageKey:r[e]});n&&r_(n,{strict:!1}),t.push([n,r])}return t}var Vx=class extends F{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${op(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};sf();let Hx={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Ux(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function Wx(e,t=`wei`){return Ux(e,Hx.gwei-Hx[t])}sf();var Gx=class extends F{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Wx(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},Kx=class extends F{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},qx=class extends F{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},Jx=class extends F{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Wx(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Wx(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};sf(),B();let Yx=`tempo`;function Xx(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new rS;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new iS({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&r_(e.to,{strict:!1});if(n<=0)throw new Kx({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Gx({feeCap:r});if(i&&r&&i>r)throw new Jx({maxFeePerGas:r,maxPriorityFeePerGas:i})}function Zx(e){let t=Q_(z(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new qx({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:Yx});let y={chainId:Number(n),type:Yx};fp(a)&&a!==`0x`&&(y.gas=BigInt(a)),fp(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),fp(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),fp(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),fp(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),fp(u)&&u!==`0x`&&(y.validBefore=Number(u)),fp(d)&&d!==`0x`&&(y.validAfter=Number(d)),fp(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=zx(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=ax(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||c_(p)?(y.feePayerSignature=null,c_(p)&&(y.from=p)):y.feePayerSignature=gv(p)),_&&(y.keyAuthorization=fx(_));let b=v?Hb(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=Bb({payload:eS(Qx(y)),signature:b,root:!0})}catch{}return Xx(y),y}function Qx(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?Zx(e):e;return i.from&&=Qb(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:Qb(e.to)}:{}})),Xx(i),{...i,...r?{signature:Ub(r)}:{},...n?{feePayerSignature:pv(n)}:{},type:`tempo`}}function $x(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;Xx(e);let h=Bx(n),g=t.signature||e.signature,_=lx(r),v=i.map(e=>[e.to?Qb(e.to):`0x`,e.value?R(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=Ub(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return o_(t.publicKey);if(t.type===`secp256k1`)return Pv({payload:eS(Qx(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?yv(n):`0x`})(),x=[R(a),f?R(f):`0x`,d?R(d):`0x`,s?R(s):`0x`,v,h,u?R(u):`0x`,l?R(l):`0x`,typeof p==`number`?R(p):`0x`,typeof m==`number`?R(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?Ox(o):`0x`,b,_,...c?[vx(c)]:[],...g?[Kb(Ub(g))]:[]];return I(t.format===`feePayer`?`0x78`:`0x76`,iv(x))}function eS(e,t={}){let n=tS(e,{presign:!0});return t.from?Vg(I(`0x04`,n,Qb(t.from))):n}function tS(e,t={}){return Vg($x({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function nS(e,t){let n=Qb(t.sender);return Vg($x({...e,signature:void 0},{sender:n,format:`feePayer`}))}var rS=class extends F{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},iS=class extends F{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};let V=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],aS=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]}],oS=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];Qf();async function sS(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=Kg(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function cS(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,kf(t)),i=Af(new Uint8Array(r)),a=Rf(Lf(i,0,32)),o=Rf(Lf(i,32,64));return o>qy.CURVE.n/2n&&(o=qy.CURVE.n-o),{r:a,s:o}}B();function lS(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:Fd(e)}function uS(e){try{return lS(e)===`tempo`}catch{return!1}}function dS(e){let t=z(e,0,1);return t===`0x76`||t===`0x78`?pS(e):Wv(e)}async function fS(e,t){if(!uS(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return dh(e,{r:R(n,{size:32}),s:R(r,{size:32}),yParity:i})}return dh(e,t)}if(lS(e)===`tempo`)return mS(e,t);throw Error(`Unsupported transaction type`)}function pS(e){let{feePayerSignature:t,nonce:n,...r}=Zx(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:R(t.r,{size:32}),s:R(t.s,{size:32}),yParity:t.yParity}}}async function mS(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return Ub({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=Qx(c,{signature:n}),r=nS(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Pv({payload:eS(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return $x(t,{feePayerSignature:pv(await e.feePayer.sign({hash:r}))})}return i===!0?n?$x(c,{format:`feePayer`,sender:e.from,signature:n}):$x(c,{feePayerSignature:null}):$x({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}B(),va(),hi();function hS(e){let{access:t}=e;return t?CS(e):SS(e)}function gS(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Yy({privateKey:e});return hS({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Mb({...t,challenge:n,rpId:r,origin:i});return Kb({metadata:a,signature:Xy({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function _S(e,t={}){let{access:n,internal_version:r}=t,i=Yy({privateKey:e});return hS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return Kb({signature:Xy({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function vS(e,t={}){let{access:n,internal_version:r}=t;return hS({access:n,internal_version:r,keyType:`secp256k1`,publicKey:Nv({privateKey:e}),async sign(t){let{hash:n}=t;return _v(Iv({payload:n,privateKey:e}))}})}function yS(e,t={}){let{id:n}=e,r=Jg(e.publicKey);return hS({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Nb({...t,challenge:e,credentialId:n});return Kb({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function bS(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return hS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return Kb({signature:await cS({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function xS(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??o_(e.publicKey),o=Xg(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?mi(I(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?Kb(Ub({userAddress:n,inner:Ub(o),type:`keychain`,version:i})):t===`secp256k1`?o:I(o,zb)}return{address:i_(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=Ub(await s({hash:Tu({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:R(a,{size:32}),s:R(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Lh(t)})},async signTransaction(e,t){let{serializer:n=fS}=t??{};return await n(e,Ub(await s({hash:mi(await n(e))})))},async signTypedData(e){return await s({hash:Gh(e)})},publicKey:o,source:r,type:`local`}}function SS(e){let t=xS(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return ux({address:o,chainId:r,expiry:i,limits:a,signature:Ub(await t.sign({hash:px({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function CS(e){let{access:t}=e,{address:n}=_a(t);return{...xS({...e,parentAddress:n}),accessKeyAddress:o_(e.publicKey),source:`accessKey`}}let wS=`0xdec0000000000000000000000000000000000000`;function H(e){return{...e,data:Sa(e),to:e.address}}B(),va();async function TS(e,t){return TS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return H({address:wS,abi:aS,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(TS||={});async function ES(e,t){return ES.inner(Um,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return H({address:wS,abi:aS,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(ES||={});async function DS(e,t){return DS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return H({address:wS,abi:aS,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(DS||={});async function OS(e,t){return OS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return H({address:wS,abi:aS,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(OS||={});async function kS(e,t){let{account:n=e.account,token:r,...i}=t,a=n?_a(n).address:void 0;if(!a)throw Error(`account is required.`);return Am(e,{...i,...kS.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:wS,abi:aS,args:[t,n],functionName:`balanceOf`})}e.call=t})(kS||={});async function AS(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Am(e,{...a,...AS.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(AS||={});async function jS(e,t){let{orderId:n,...r}=t;return Am(e,{...r,...jS.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return H({address:wS,abi:aS,args:[t],functionName:`getOrder`})}e.call=t})(jS||={});async function MS(e,t){let{base:n,quote:r,...i}=t;return Am(e,{...i,...MS.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return H({address:wS,abi:aS,args:[zS(t,n)],functionName:`books`})}e.call=t})(MS||={});async function NS(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Am(e,{...a,...NS.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(NS||={});async function PS(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Am(e,{...a,...PS.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(PS||={});async function FS(e,t){return FS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return H({address:wS,abi:aS,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(FS||={});async function IS(e,t){return IS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return H({address:wS,abi:aS,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=Xd({abi:aS,logs:e,eventName:`OrderPlaced`,strict:!0}).find(e=>e.args.isFlipOrder);if(!t)throw Error(\"`OrderPlaced` event (flip order) not found.\");return t}e.extractEvent=r})(IS||={});async function LS(e,t){return LS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return H({address:wS,abi:aS,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(LS||={});async function RS(e,t){return RS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return H({address:wS,abi:aS,functionName:`withdraw`,args:[t,n]})}e.call=n})(RS||={});function zS(e,t){return Vg(I(e,t))}B(),va(),Ca();async function BS(e,t){let{token:n,...r}=t;return BS.inner(Um,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return H({address:Ox(r),abi:V,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(BS||={});async function VS(e,t){return VS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return H({address:Ox(r),abi:V,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(VS||={});async function HS(e,t){return HS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,rp(n,32)]}:{functionName:`burn`,args:[t]};return H({address:Ox(r),abi:V,...i})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(HS||={});async function US(e,t){return US.inner(Um,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return H({address:Ox(t),abi:V,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(US||={});async function WS(e,t){return WS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?_a(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=ap(32)}=e;return H({address:`0x20fc000000000000000000000000000000000000`,abi:oS,args:[t,n,r,Ox(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=Xd({abi:oS,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(WS||={});async function GS(e,t){let{account:n=e.account}=t,r=n?_a(n).address:void 0;if(!r)throw Error(`account is required.`);return Am(e,{...t,...GS.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return H({address:Ox(r),abi:V,functionName:`allowance`,args:[t,n]})}e.call=t})(GS||={});async function KS(e,t){let{account:n=e.account,...r}=t,i=n?_a(n).address:void 0;if(!i)throw Error(`account is required.`);return Am(e,{...r,...KS.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:Ox(n),abi:V,functionName:`balanceOf`,args:[t]})}e.call=t})(KS||={});async function qS(e,t){let{token:n,...r}=t,i=Ox(n),a=V;return Ex(n)===Dx(`0x20c0000000000000000000000000000000000000`)?ny(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):ny(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function JS(e,t){return Am(e,{...t,...JS.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return H({address:Ox(n),abi:V,functionName:`getRoleAdmin`,args:[Ax(t)]})}e.call=t})(JS||={});async function YS(e,t){let{account:n=e.account}=t,r=n?_a(n).address:void 0;if(!r)throw Error(`account is required.`);return Am(e,{...t,...YS.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return H({address:Ox(r),abi:V,functionName:`hasRole`,args:[t,Ax(n)]})}e.call=t})(YS||={});async function XS(e,t){return XS.inner(Hm,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Sa(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=Ax(r);return H({address:Ox(t),abi:V,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=Xd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(XS||={});async function ZS(e,t){return ZS.inner(Um,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,rp(r,32)]}:{functionName:`mint`,args:[t,n]};return H({address:Ox(i),abi:V,...a})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(ZS||={});async function QS(e,t){return QS.inner(Um,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return H({address:Ox(t),abi:V,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(QS||={});async function $S(e,t){return $S.inner(Hm,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Sa(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=Ax(n);return H({address:Ox(t),abi:V,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=Xd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})($S||={});async function eC(e,t){return eC.inner(Hm,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Sa(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=Ax(r);return H({address:Ox(t),abi:V,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=Xd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(eC||={});async function tC(e,t){return tC.inner(Um,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return H({address:Ox(t),abi:V,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(tC||={});async function nC(e,t){return nC.inner(Um,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=Ax(n),a=Ax(r);return H({address:Ox(t),abi:V,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(nC||={});async function rC(e,t){return rC.inner(Um,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,rp(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,rp(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return H({address:Ox(i),abi:V,...o})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(rC||={});async function iC(e,t){return iC.inner(Um,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return H({address:Ox(t),abi:V,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(iC||={});async function aC(e,t){return aC.inner(Um,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return H({address:Ox(t),abi:V,functionName:`setNextQuoteToken`,args:[Ox(n)]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(aC||={});async function oC(e,t){return oC.inner(Um,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return H({address:Ox(t),abi:V,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(oC||={}),B(),va(),Qu();function sC(e){if(!uS(e))return fd(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=Ix(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:R(t.r,{size:32}),s:R(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:Px[i.type],type:i.type}}function cC(e){return qm(e)}function lC(e,t){let n=e,r=n.account?_a(n.account):void 0;if(!uS(n))return Ju(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=Rx({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?_a(n.feePayer):n.feePayer}:{}}}var uC=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function dC(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw fC(r.error);return r.result}function fC(e){let t=e;if(t instanceof Error&&!(`code`in t))return new wC({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===wC.code?new wC(t):n===mC.code?new mC(t):n===CC.code?new CC(t):n===xC.code?new xC(t):n===yC.code?new yC(t):n===SC.code?new SC(t):n===vC.code?new vC(t):n===TC.code?new TC(t):n===hC.code?new hC(t):n===gC.code?new gC(t):n===_C.code?new _C(t):n===bC.code?new bC(t):new wC({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var pC=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},mC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(mC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var hC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(hC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var gC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(gC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var _C=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(_C,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var vC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(vC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var yC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(yC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var bC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(bC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var xC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(xC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var SC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty(SC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var CC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(CC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var wC=class e extends pC{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(wC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var TC=class e extends pC{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty(TC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),sf();var EC=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},DC=class extends EC{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(DC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var OC=class extends EC{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(OC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var kC=class extends EC{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(kC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var AC=class extends EC{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(AC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var jC=class extends EC{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(jC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var MC=class extends EC{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(MC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var NC=class extends EC{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(NC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var PC=class extends EC{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty(PC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var FC=class extends EC{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(FC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var IC=class extends EC{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(IC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var LC=class extends EC{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(LC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var RC=class extends EC{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(RC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var zC=class extends EC{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(zC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function BC(){let e=new uC.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function VC(e,t={}){if(!e)throw new UC;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?dC(n):n}catch(e){throw HC(e)}}}}function HC(e){let t=fC(e);if(t instanceof wC){if(!t.data)return t;let{code:e}=t.data;if(e===AC.code)return new AC(t);if(e===jC.code)return new jC(t);if(e===DC.code)return new DC(t);if(e===OC.code)return new OC(t);if(e===kC.code)return new kC(t);if(e===MC.code)return new MC(t);if(e===RC.code)return new RC(t);if(e===zC.code)return new zC(t);if(e===LC.code)return new LC(t);if(e===IC.code)return new IC(t);if(e===FC.code)return new FC(t);if(e===PC.code)return new PC(t);if(e===NC.code)return new NC(t)}return t}var UC=class extends F{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function WC(e={}){let t=e.id??0;return{prepare(e){return GC({id:t++,...e})},get id(){return t}}}function GC(e){return{...e,jsonrpc:`2.0`}}function KC(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return Ey({key:KC.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(dS(o).feePayerSignature===null){if(r===`sign-and-broadcast`)return a.request({method:e,params:t},n);{let t=await a.request({method:`eth_signRawTransaction`,params:[o]},n);return i.request({method:e,params:[t]},n)}}}return await i.request({method:e,params:t},n)},type:KC.type})}}function qC(){return null}var JC;function U(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var YC=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},XC=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(JC=globalThis).__zod_globalConfig??(JC.__zod_globalConfig={});let ZC=globalThis.__zod_globalConfig;function QC(e){return e&&Object.assign(ZC,e),ZC}function $C(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function ew(e,t){return typeof t==`bigint`?t.toString():t}function tw(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function nw(e){return e==null}function rw(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let iw=Symbol(`evaluating`);function W(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==iw)return r===void 0&&(r=iw,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let aw=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function ow(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function sw(e){if(ow(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(ow(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let cw=new Set([`string`,`number`,`symbol`]),lw=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function uw(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function dw(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function fw(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function pw(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function mw(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function hw(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function gw(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function _w(e){return typeof e==`string`?e:e?.message}function vw(e,t,n){let r=e.message?e.message:_w(e.inst?._zod.def?.error?.(e))??_w(t?.error?.(e))??_w(n.customError?.(e))??_w(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function yw(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function bw(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let xw=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,ew,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Sw=U(`$ZodError`,xw),Cw=U(`$ZodError`,xw,{Parent:Error}),ww=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new YC;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>vw(e,a,QC())));throw aw(t,i?.callee),t}return o.value},Tw=ww(Cw),Ew=(e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>vw(e,a,QC())));throw aw(t,i?.callee),t}return o.value})(Cw),Dw=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new YC;return a.issues.length?{success:!1,error:new(e??Sw)(a.issues.map(e=>vw(e,i,QC())))}:{success:!0,data:a.value}})(Cw),Ow=(e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>vw(e,i,QC())))}:{success:!0,data:a.value}})(Cw),kw=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return ww(e)(t,n,i)})(Cw),Aw=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},jw=/^-?\\d+n?$/,Mw=/^-?\\d+(?:\\.\\d+)?$/,Nw=/^(?:true|false)$/i,Pw=/^null$/i,Fw=/^undefined$/i,Iw=U(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Lw={number:`number`,bigint:`bigint`,object:`date`},Rw=U(`$ZodCheckLessThan`,(e,t)=>{Iw.init(e,t);let n=Lw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),zw=U(`$ZodCheckGreaterThan`,(e,t)=>{Iw.init(e,t);let n=Lw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bw=U(`$ZodCheckMaxLength`,(e,t)=>{var n;Iw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!nw(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=yw(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Vw=U(`$ZodCheckMinLength`,(e,t)=>{var n;Iw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!nw(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=yw(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Hw=U(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Iw.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Uw=U(`$ZodCheckRegex`,(e,t)=>{Hw.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Ww={major:4,minor:4,patch:3},Gw=U(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ww;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=mw(e),i;for(let a of t){if(a._zod.def.when){if(hw(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new YC;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=mw(e,t))});else{if(e.issues.length===t)continue;r||=mw(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(mw(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new YC;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new YC;return o.then(e=>t(e,r,a))}return t(o,r,a)}}W(e,`~standard`,()=>({validate:t=>{try{let n=Dw(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Ow(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Kw=U(`$ZodString`,(e,t)=>{Gw.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Aw(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),qw=U(`$ZodNumber`,(e,t)=>{Gw.init(e,t),e._zod.pattern=e._zod.bag.pattern??Mw,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Jw=U(`$ZodBoolean`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Nw,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Yw=U(`$ZodBigInt`,(e,t)=>{Gw.init(e,t),e._zod.pattern=jw,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),Xw=U(`$ZodUndefined`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Fw,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),Zw=U(`$ZodNull`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Pw,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),Qw=U(`$ZodUnknown`,(e,t)=>{Gw.init(e,t),e._zod.parse=e=>e});function $w(e,t,n){e.issues.length&&t.issues.push(...gw(n,e.issues)),t.value[n]=e.value}let eT=U(`$ZodArray`,(e,t)=>{Gw.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>$w(t,n,e))):$w(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function tT(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...gw(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function nT(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=pw(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function rT(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>tT(e,n,i,t,u,d))):tT(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let iT=U(`$ZodObject`,(e,t)=>{if(Gw.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=tw(()=>nT(t));W(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=ow,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>tT(n,t,e,s,r,i))):tT(a,t,e,s,r,i)}return i?rT(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function aT(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!mw(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>vw(e,r,QC())))}),t)}let oT=U(`$ZodUnion`,(e,t)=>{Gw.init(e,t),W(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),W(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),W(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),W(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>rw(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>aT(t,r,e,i)):aT(o,r,e,i)}}),sT=U(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,oT.init(e,t);let n=e._zod.parse;W(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=tw(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!ow(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),cT=U(`$ZodTuple`,(e,t)=>{Gw.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=lT(n,`optin`),c=lT(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>uT(t,r,e))):uT(a,r,e)}}return o.length?Promise.all(o).then(()=>dT(l,r,n,a,c)):dT(l,r,n,a,c)}});function lT(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function uT(e,t,n){e.issues.length&&t.issues.push(...gw(n,e.issues)),t.value[n]=e.value}function dT(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...gw(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}let fT=U(`$ZodRecord`,(e,t)=>{Gw.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!sw(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>vw(e,r,QC())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...gw(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...gw(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Mw.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>vw(e,r,QC())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...gw(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...gw(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),pT=U(`$ZodEnum`,(e,t)=>{Gw.init(e,t);let n=$C(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>cw.has(typeof e)).map(e=>typeof e==`string`?uw(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),mT=U(`$ZodLiteral`,(e,t)=>{if(Gw.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?uw(e):e?uw(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),hT=U(`$ZodTransform`,(e,t)=>{Gw.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new XC(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new YC;return n.value=i,n.fallback=!0,n}});function gT(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}let _T=U(`$ZodOptional`,(e,t)=>{Gw.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,W(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),W(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${rw(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>gT(e,r)):gT(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),vT=U(`$ZodNullable`,(e,t)=>{Gw.init(e,t),W(e._zod,`optin`,()=>t.innerType._zod.optin),W(e._zod,`optout`,()=>t.innerType._zod.optout),W(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${rw(e.source)}|null)$`):void 0}),W(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),yT=U(`$ZodPipe`,(e,t)=>{Gw.init(e,t),W(e._zod,`values`,()=>t.in._zod.values),W(e._zod,`optin`,()=>t.in._zod.optin),W(e._zod,`optout`,()=>t.out._zod.optout),W(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>bT(e,t.in,n)):bT(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>bT(e,t.out,n)):bT(r,t.out,n)}});function bT(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}let xT=U(`$ZodCodec`,(e,t)=>{Gw.init(e,t),W(e._zod,`values`,()=>t.in._zod.values),W(e._zod,`optin`,()=>t.in._zod.optin),W(e._zod,`optout`,()=>t.out._zod.optout),W(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>ST(e,t,n)):ST(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>ST(e,t,n)):ST(r,t,n)}}});function ST(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>CT(e,r,t.out,n)):CT(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>CT(e,r,t.in,n)):CT(e,r,t.in,n)}}function CT(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let wT=U(`$ZodReadonly`,(e,t)=>{Gw.init(e,t),W(e._zod,`propValues`,()=>t.innerType._zod.propValues),W(e._zod,`values`,()=>t.innerType._zod.values),W(e._zod,`optin`,()=>t.innerType?._zod?.optin),W(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(TT):TT(r)}});function TT(e){return e.value=Object.freeze(e.value),e}let ET=U(`$ZodTemplateLiteral`,(e,t)=>{Gw.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||lw.has(typeof e))n.push(uw(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),DT=U(`$ZodCustom`,(e,t)=>{Iw.init(e,t),Gw.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>OT(t,n,r,e));OT(i,n,r,e)}});function OT(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(bw(e))}}function kT(e,t){return new e({type:`string`,...fw(t)})}function AT(e,t){return new e({type:`number`,checks:[],...fw(t)})}function jT(e,t){return new e({type:`boolean`,...fw(t)})}function MT(e,t){return new e({type:`bigint`,...fw(t)})}function NT(e,t){return new e({type:`undefined`,...fw(t)})}function PT(e,t){return new e({type:`null`,...fw(t)})}function FT(e){return new e({type:`unknown`})}function IT(e,t){return new Rw({check:`less_than`,...fw(t),value:e,inclusive:!0})}function LT(e,t){return new zw({check:`greater_than`,...fw(t),value:e,inclusive:!0})}function RT(e,t){return new Bw({check:`max_length`,...fw(t),maximum:e})}function zT(e,t){return new Vw({check:`min_length`,...fw(t),minimum:e})}function BT(e,t){return new Uw({check:`string_format`,format:`regex`,...fw(t),pattern:e})}function VT(e,t,n){let r=fw(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function HT(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...fw(n)})}let UT=U(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);Gw.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Tw(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Dw(e,t,n),e.parseAsync=async(t,n)=>Ew(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ow(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>dw(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),WT=U(`ZodMiniString`,(e,t)=>{Kw.init(e,t),UT.init(e,t)});function G(e){return kT(WT,e)}let GT=U(`ZodMiniNumber`,(e,t)=>{qw.init(e,t),UT.init(e,t)});function KT(e){return AT(GT,e)}let qT=U(`ZodMiniBoolean`,(e,t)=>{Jw.init(e,t),UT.init(e,t)});function JT(e){return jT(qT,e)}let YT=U(`ZodMiniBigInt`,(e,t)=>{Yw.init(e,t),UT.init(e,t)});function XT(e){return MT(YT,e)}let ZT=U(`ZodMiniUndefined`,(e,t)=>{Xw.init(e,t),UT.init(e,t)});function QT(e){return NT(ZT,e)}let $T=U(`ZodMiniNull`,(e,t)=>{Zw.init(e,t),UT.init(e,t)});function eE(e){return PT($T,e)}let tE=U(`ZodMiniUnknown`,(e,t)=>{Qw.init(e,t),UT.init(e,t)});function nE(){return FT(tE)}let rE=U(`ZodMiniArray`,(e,t)=>{eT.init(e,t),UT.init(e,t)});function K(e,t){return new rE({type:`array`,element:e,...fw(t)})}let iE=U(`ZodMiniObject`,(e,t)=>{iT.init(e,t),UT.init(e,t),W(e,`shape`,()=>t.shape)});function q(e,t){return new iE({type:`object`,shape:e??{},...fw(t)})}let aE=U(`ZodMiniUnion`,(e,t)=>{oT.init(e,t),UT.init(e,t)});function oE(e,t){return new aE({type:`union`,options:e,...fw(t)})}let sE=U(`ZodMiniDiscriminatedUnion`,(e,t)=>{sT.init(e,t),UT.init(e,t)});function cE(e,t,n){return new sE({type:`union`,options:t,discriminator:e,...fw(n)})}let lE=U(`ZodMiniTuple`,(e,t)=>{cT.init(e,t),UT.init(e,t)});function uE(e,t,n){let r=t instanceof Gw;return new lE({type:`tuple`,items:e,rest:r?t:null,...fw(r?n:t)})}let dE=U(`ZodMiniRecord`,(e,t)=>{fT.init(e,t),UT.init(e,t)});function fE(e,t,n){return!t||!t._zod?new dE({type:`record`,keyType:G(),valueType:e,...fw(t)}):new dE({type:`record`,keyType:e,valueType:t,...fw(n)})}let pE=U(`ZodMiniEnum`,(e,t)=>{pT.init(e,t),UT.init(e,t),e.options=Object.values(t.entries)});function mE(e,t){return new pE({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...fw(t)})}let hE=U(`ZodMiniLiteral`,(e,t)=>{mT.init(e,t),UT.init(e,t)});function J(e,t){return new hE({type:`literal`,values:Array.isArray(e)?e:[e],...fw(t)})}let gE=U(`ZodMiniTransform`,(e,t)=>{hT.init(e,t),UT.init(e,t)});function _E(e){return new gE({type:`transform`,transform:e})}let vE=U(`ZodMiniOptional`,(e,t)=>{_T.init(e,t),UT.init(e,t)});function Y(e){return new vE({type:`optional`,innerType:e})}let yE=U(`ZodMiniNullable`,(e,t)=>{vT.init(e,t),UT.init(e,t)});function bE(e){return new yE({type:`nullable`,innerType:e})}let xE=U(`ZodMiniPipe`,(e,t)=>{yT.init(e,t),UT.init(e,t)});function SE(e,t){return new xE({type:`pipe`,in:e,out:t})}let CE=U(`ZodMiniCodec`,(e,t)=>{xE.init(e,t),xT.init(e,t)});function wE(e,t,n){return new CE({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let TE=U(`ZodMiniReadonly`,(e,t)=>{wT.init(e,t),UT.init(e,t)});function X(e){return new TE({type:`readonly`,innerType:e})}let EE=U(`ZodMiniTemplateLiteral`,(e,t)=>{ET.init(e,t),UT.init(e,t)});function DE(e,t){return new EE({type:`template_literal`,parts:e,...fw(t)})}let OE=U(`ZodMiniCustom`,(e,t)=>{DT.init(e,t),UT.init(e,t)});function kE(e,t){return VT(OE,e??(()=>!0),t)}function AE(e,t={}){return HT(OE,e,t)}function jE(e){return e}function ME(e){return e}let Z=()=>DE([`0x`,G()],`Expected address`),NE=()=>wE(oE([Q(),XT()]),XT(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:cp(e),encode:e=>R(e)}),Q=()=>DE([`0x`,G()],`Expected hex value`),PE=()=>wE(oE([Q(),KT()]),KT(),{decode:e=>typeof e==`number`?e:e===`0x`?0:up(e),encode:e=>R(e)}),FE=q({address:Z(),blockHash:Q(),blockNumber:NE(),data:Q(),logIndex:PE(),removed:JT(),topics:X(K(Q())),transactionHash:Q(),transactionIndex:PE()}),IE=q({blobGasPrice:Y(NE()),blobGasUsed:Y(NE()),blockHash:Q(),blockNumber:NE(),contractAddress:bE(Z()),cumulativeGasUsed:NE(),effectiveGasPrice:NE(),feePayer:Y(Z()),feeToken:Y(Z()),from:Z(),gasUsed:NE(),logs:K(FE),logsBloom:Q(),root:Y(Q()),status:wE(Q(),mE([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:bE(Z()),transactionHash:Q(),transactionIndex:PE(),type:Q()}),LE=kE(),RE=oE([J(`secp256k1`),J(`p256`),J(`webAuthn`)]),zE=q({address:Z(),chainId:NE(),expiry:oE([PE(),eE(),QT()]),keyId:Z(),keyType:RE,limits:Y(X(K(q({token:Z(),limit:NE(),period:Y(PE())})))),signature:LE}),BE=q({data:Y(Q()),to:Y(Z()),value:Y(NE())}),VE=q({accessList:Y(K(q({address:Z(),storageKeys:K(Q())}))),calls:Y(X(K(BE))),chainId:Y(PE()),data:Y(Q()),feePayer:Y(oE([JT(),G()])),feePayerSignature:Y(fE(G(),nE())),feeToken:Y(Z()),from:Y(Z()),gas:Y(NE()),keyAuthorization:Y(zE),keyData:Y(Q()),keyId:Y(Z()),keyType:Y(RE),maxFeePerGas:Y(NE()),maxPriorityFeePerGas:Y(NE()),nonce:Y(PE()),nonceKey:Y(NE()),to:Y(Z()),validAfter:Y(PE()),validBefore:Y(PE()),value:Y(NE())});var HE;(function(e){e.schema=jE({method:J(`eth_accounts`),params:void 0,returns:X(K(Z()))})})(HE||={});var UE;(function(e){e.schema=jE({method:J(`eth_chainId`),params:void 0,returns:Q()})})(UE||={});var WE;(function(e){e.schema=jE({method:J(`eth_requestAccounts`),params:void 0,returns:X(K(Z()))})})(WE||={});var GE;(function(e){e.schema=jE({method:J(`eth_sendTransaction`),params:X(uE([VE])),returns:Q()})})(GE||={});var KE;(function(e){let t=q({address:Z(),decimals:KT(),direction:mE([`incoming`,`outgoing`]),formatted:G(),name:G(),recipients:X(K(Z())),symbol:G(),value:Q()}),n=q({decimals:KT(),formatted:G(),name:G(),symbol:G(),token:Z(),value:Q()});e.schema=jE({method:J(`eth_fillTransaction`),params:X(uE([VE])),returns:q({capabilities:q({balanceDiffs:Y(fE(Z(),X(K(t)))),error:Y(q({abiItem:Y(fE(G(),nE())),data:Y(Q()),errorName:G(),message:G()})),fee:Y(q({amount:Q(),decimals:KT(),formatted:G(),symbol:G()})),requireFunds:Y(q({amount:Q(),decimals:KT(),formatted:G(),token:Z(),symbol:G()})),autoSwap:Y(q({maxIn:n,minOut:n,slippage:KT()})),sponsor:Y(q({address:Z(),name:Y(G()),url:Y(G())})),sponsored:JT()}),tx:fE(G(),nE())})})})(KE||={});var qE;(function(e){e.schema=jE({method:J(`eth_signTransaction`),params:X(uE([VE])),returns:Q()})})(qE||={});var JE;(function(e){e.schema=jE({method:J(`eth_sendTransactionSync`),params:X(uE([VE])),returns:IE})})(JE||={});var YE;(function(e){e.schema=jE({method:J(`eth_signTypedData_v4`),params:X(uE([Z(),G()])),returns:Q()})})(YE||={});var XE;(function(e){e.schema=jE({method:J(`personal_sign`),params:X(uE([Q(),Z()])),returns:Q()})})(XE||={});let ZE=Y(q({feePayer:Y(oE([JT(),G()])),sync:Y(JT())}));var QE;(function(e){e.schema=jE({method:J(`wallet_sendCalls`),params:Y(X(uE([q({atomicRequired:Y(JT()),calls:X(K(BE)),capabilities:ZE,chainId:Y(PE()),from:Y(Z()),version:Y(G())})]))),returns:q({atomic:Y(JT()),capabilities:ZE,chainId:Y(PE()),id:G(),receipts:Y(K(IE)),status:Y(KT()),version:Y(G())})})})(QE||={});var $E;(function(e){e.schema=jE({method:J(`wallet_getBalances`),params:Y(X(uE([q({account:Y(Z()),chainId:Y(PE()),tokens:Y(X(K(Z())))})]))),returns:X(K(q({address:Z(),balance:NE(),decimals:KT(),display:G(),name:G(),symbol:G()})))})})($E||={});var eD;(function(e){e.schema=jE({method:J(`wallet_getCapabilities`),params:Y(X(oE([uE([Z()]),uE([Z(),X(K(Q()))])]))),returns:fE(Q(),q({accessKeys:Y(q({status:oE([J(`supported`),J(`unsupported`)])})),atomic:q({status:oE([J(`supported`),J(`ready`),J(`unsupported`)])}),feePayer:Y(q({status:oE([J(`supported`),J(`unsupported`)])}))}))})})(eD||={});var tD;(function(e){e.parameters=q({address:Y(Z()),chainId:Y(NE()),expiry:KT(),keyType:Y(RE),limits:Y(X(K(q({token:Z(),limit:NE(),period:Y(KT())})))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(oE([Q(),G()])),recipients:Y(X(K(Z())))}))))}),e.returns=q({keyAuthorization:zE,rootAddress:Z()}),e.schema=jE({method:J(`wallet_authorizeAccessKey`),params:X(uE([e.parameters])),returns:e.returns})})(tD||={});var nD;(function(e){e.parameters=q({address:Y(Z()),expiry:KT(),keyType:Y(RE),limits:X(K(q({token:Z(),limit:NE(),period:Y(KT())}))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(oE([Q(),G()])),recipients:Y(X(K(Z())))}))))})})(nD||={});var rD;(function(e){e.schema=jE({method:J(`wallet_revokeAccessKey`),params:X(uE([q({address:Z(),accessKeyAddress:Z()})])),returns:void 0})})(rD||={});var iD;(function(e){e.authorizeAccessKey=Y(tD.parameters),e.capabilities={request:Y(oE([q({digest:Y(Q()),authorizeAccessKey:e.authorizeAccessKey,method:J(`register`),name:Y(G()),userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:e.authorizeAccessKey,method:Y(J(`login`)),selectAccount:Y(JT())})])),result:q({email:Y(bE(G())),keyAuthorization:Y(zE),signature:Y(Q()),username:Y(bE(G()))})},e.schema=jE({method:J(`wallet_connect`),params:Y(X(uE([q({capabilities:e.capabilities.request,chainId:Y(PE()),version:Y(G())})]))),returns:q({accounts:X(K(q({address:Z(),capabilities:e.capabilities.result})))})})})(iD||={});var aD;(function(e){let t=Y(nD.parameters);e.parameters=q({capabilities:Y(oE([q({digest:Y(Q()),authorizeAccessKey:t,method:J(`register`),name:Y(G()),userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:t,method:Y(J(`login`)),selectAccount:Y(JT())})])),chainId:Y(PE()),version:Y(G())})})(aD||={});var oD;(function(e){e.schema=jE({method:J(`wallet_disconnect`),params:void 0,returns:void 0})})(oD||={});var sD;(function(e){e.schema=jE({method:J(`wallet_getCallsStatus`),params:Y(X(uE([G()]))),returns:q({atomic:JT(),chainId:PE(),id:G(),receipts:Y(K(IE)),status:KT(),version:G()})})})(sD||={});var cD;(function(e){e.parameters=q({feePayer:Y(oE([JT(),G()])),to:Y(Z()),token:Y(Z()),value:Y(G())}),e.schema=jE({method:J(`wallet_send`),params:Y(X(uE([e.parameters]))),returns:q({chainId:PE(),receipt:IE})})})(cD||={});let lD=q({amount:Y(G()),pairToken:Y(Z()),slippage:Y(KT().check(LT(0),IT(1))),token:Y(Z()),type:Y(oE([J(`buy`),J(`sell`)]))});var uD;(function(e){e.schema=jE({method:J(`wallet_swap`),params:Y(X(uE([lD]))),returns:q({receipt:IE})})})(uD||={});var dD;(function(e){e.schema=jE({method:J(`wallet_switchEthereumChain`),params:X(uE([q({chainId:PE()})])),returns:void 0})})(dD||={});var fD;(function(e){e.schema=jE({method:J(`wallet_deposit`),params:X(uE([q({address:Y(Z()),chainId:Y(PE()),displayName:Y(G()),token:Y(Z()),value:Y(G())})])),returns:Y(q({receipts:Y(X(K(IE)))}))})})(fD||={});var pD;(function(e){e.parameters=q({amount:Y(G()),feePayer:Y(oE([JT(),G()])),token:Y(Z()),zoneId:Y(PE())}),e.schema=jE({method:J(`wallet_depositZone`),params:Y(X(uE([e.parameters]))),returns:q({receipt:IE})})})(pD||={});var mD;(function(e){e.parameters=q({amount:Y(G()),token:Y(Z()),zoneId:Y(PE())}),e.schema=jE({method:J(`wallet_withdrawZone`),params:Y(X(uE([e.parameters]))),returns:q({receipt:IE})})})(mD||={}),nD.parameters,aD.parameters;let hD=ME([HE.schema,UE.schema,KE.schema,WE.schema,GE.schema,JE.schema,qE.schema,YE.schema,XE.schema,tD.schema,iD.schema,fD.schema,pD.schema,oD.schema,$E.schema,sD.schema,eD.schema,rD.schema,cD.schema,QE.schema,uD.schema,dD.schema,mD.schema]),gD=qC();function _D(e){return e.params?q({method:e.method,params:e.params}):q({method:e.method})}let vD=cE(`method`,hD.map(_D));function yD(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}var bD=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},xD=class extends bD{name=`InvalidChallengeError`;title=`Invalid Challenge`;status=402;type=`https://paymentauth.org/problems/invalid-challenge`;constructor(e={}){let{id:t,reason:n}=e,r=t?` \"${t}\"`:``,i=n?`: ${n}`:``;super(`Challenge${r} is invalid${i}.`)}},$=class extends bD{name=`VerificationFailedError`;title=`Verification Failed`;type=`https://paymentauth.org/problems/verification-failed`;constructor(e={}){let{reason:t}=e;super(t?`Payment verification failed: ${t}.`:`Payment verification failed.`)}},SD=class extends bD{name=`PaymentExpiredError`;title=`Payment Expired`;type=`https://paymentauth.org/problems/payment-expired`;constructor(e={}){let{expires:t}=e;super(t?`Payment expired at ${t}.`:`Payment has expired.`)}};function CD(e,t){if(!e)throw new xD({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new xD({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new SD({expires:e})}function wD(e){let t=ob(e);return JSON.parse(t)}function TD(e){return ib(Sf(e),{pad:!1,url:!0})}function ED(){return G().check(BT(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function DD(){return G().check(BT(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function OD(e=`Invalid ISO 8601 datetime`){return SE(oE([DD(),kE(e=>e instanceof Date)]),_E(kD)).check(AE(e=>Number.isFinite(e.getTime()),e))}function kD(e){return e instanceof Date?e:new Date(e)}function AD(e){return e instanceof Date?Number.isFinite(e.getTime())?e.toISOString():`Invalid Date`:e}function jD(){return G().check(BT(/^0x[0-9a-fA-F]{40}$/,`Invalid address`))}function MD(){return G().check(BT(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function ND(){return G().check(BT(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let PD=q({description:Y(G()),digest:Y(G().check(BT(/^sha-256=/,`Invalid digest format`))),expires:Y(DD()),id:G(),intent:G(),method:G(),meta:Y(fE(G(),G())),opaque:Y(G()),realm:G(),request:fE(G(),nE())});function FD(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires?AD(e.expires):void 0,d=e.opaque??(i===void 0?void 0:TD(i)),f=l?JD({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return PD.parse({id:f,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i!==void 0&&{meta:i},...d!==void 0&&{opaque:d}})}function ID(e,t){let n=LD(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=RD(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return FD({...a,request:wD(r),...i&&{opaque:i}},t)}function LD(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!VD(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function RD(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=zD(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function zD(e,t){if(e[t]===`\"`)return BD(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function BD(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function VD(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function HD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return ID(n,t)}function UD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return HD(e.headers,t)}function WD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return GD(e.headers,t)}function GD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return KD(n,t)}function KD(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return ID(e.slice(r,a).replace(/,\\s*$/,``),t)})}function qD(e){return[e.realm,e.method,e.intent,TD(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?TD(e.meta):``)].join(`|`)}function JD(e,t){let n=qD(e);return nb(Hg(Mf(t.secretKey),Mf(n),{as:`Bytes`}),{url:!0,pad:!1})}function YD(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=tO(n)}return t}function XD(e,t){let n=YD(e),r=sO(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[tO(e)]??1,index:t}));return{definition:r,entries:i,header:QD(i),keys:n}}function ZD(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>aO(e,t))}function QD(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${dO(n)}`}).join(`, `)}function $D(e,t){return e.map((e,n)=>{let r=nO(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function eO(e,t,n){let r=new Map;for(let e of t){let t=tO(e);r.has(t)||r.set(t,e)}let i=$D(e.filter(e=>r.has(tO(e))),n)[0];if(i)return{challenge:i,method:r.get(tO(i))}}function tO(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function nO(e,t){let n;for(let r of t){if(!rO(e,r))continue;let t={...r,specificity:iO(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function rO(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function iO(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function aO(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);fO(r,`method`),fO(i,`intent`);let a=1;for(let t of oO(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=lO(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function oO(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function sO(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>tO(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=cO(t,`payment preference \"${e}\"`)}return a}function cO(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return uO(e,t)}function lO(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return uO(Number(e),t)}function uO(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function dO(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function fO(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let pO=Symbol.for(`mppx.fetch.wrapper`),mO;function hO(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??XD(i),s=xO(r),c=async(e,t)=>{let r=bO(e,t?.headers),c=r.has(`Accept-Payment`),l=wO(r,o),u=yO(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=WD(d),g=eO(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g;_.expires&&CD(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>CO(_,v,e??f)}):void 0)??await CO(_,v,f);return SO(y),s(u.input,{...m,headers:vO(u.headers,y)})};return c[pO]=s,c}function gO(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);mO||=globalThis.fetch,globalThis.fetch=hO({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(DO()?`same-origin`:`always`),fetch:globalThis.fetch})}function _O(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function vO(e,t){let n=_O(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function yO(e,t,n,r,i,a){let o=!!r&&!i&&TO(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function bO(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function xO(e){let t=e;for(;t[pO];)t=t[pO];return t}function SO(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function CO(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function wO(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:ZD(n),header:n}}catch{return t}}function TO(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=OO(e);return t===`same-origin`?DO()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>EO(n,e))}function EO(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function DO(){return globalThis.location!==void 0}function OO(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,DO()?globalThis.location.href:void 0)}var kO=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},AO=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function jO(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new kO;try{let e=ob(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=MO(r);return{challenge:PD.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:wD(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new AO}}function MO(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!NO(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:TD(e)}}function NO(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function PO(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:TD(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:TD(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${ib(JSON.stringify(o),{pad:!1,url:!0})}`}function FO(e){return e}function IO(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}let LO=new Map;async function RO(e){LO.set(e,(LO.get(e)??0)+1),await Promise.resolve();let t=(LO.get(e)??0)>1;return queueMicrotask(()=>{let t=LO.get(e)??0;t<=1?LO.delete(e):LO.set(e,t-1)}),t}id(),Qu();let zO={blockTime:1e3,extendSchema:Th(),formatters:{transaction:pd({exclude:[`aaAuthorizationList`],format:sC}),transactionReceipt:Jm({format:cC}),transactionRequest:Zu({format:lC})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await RO(e):!1})()?(n.nonceKey=rd,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>fS(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=Hb(i);if(a.type!==`keychain`){let i=await ih(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return Jb(a,{address:n,payload:r})}}return await E(e,vy,`verifyHash`)({...t,chain:null})}},BO=wh({...zO,id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),VO=wh({...zO,id:31318,name:`Tempo Devnet`,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.devnet.tempo.xyz`}},nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.devnet.tempoxyz.dev`],webSocket:[`wss://rpc.devnet.tempoxyz.dev`]}}}),HO=wh({...zO,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),UO=wh({...zO,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}});function WO(e={}){let{account:t}=e;return(e,{account:n}={})=>{let r=n??t;if(!r){if(!e.account)throw Error(\"No `account` provided. Pass `account` to parameters or context.\");return e.account}return _a(r)}}function GO(e){let{chain:t,feePayerUrl:n,getClient:r,rpcUrl:i}=e;return r?!t?.serializers&&!n?r:async e=>{let i=await r(e);if(n&&i.transport.key!==`feePayer`){let e=i.transport.url;if(e){let t=rh({chain:i.chain,transport:KC(ky(e),ky(n))});Object.assign(i,{transport:t.transport,request:t.request})}}return!t?.serializers||i.chain?.serializers?.transaction?i:Object.assign({},i,{chain:{...t,...i.chain,formatters:i.chain?.formatters??t.formatters,prepareTransactionRequest:i.chain?.prepareTransactionRequest??t.prepareTransactionRequest,serializers:i.chain?.serializers?.transaction?i.chain.serializers:t.serializers}})}:({chainId:e})=>{if(!i)throw Error(\"No `rpcUrl` provided.\");let r=e||Number(Object.keys(i)[0]),a=i[r];if(!a)throw Error(`No \\`rpcUrl\\` configured for \\`chainId\\` (${r}).`);let o=n?KC(ky(a),ky(n)):ky(a);return rh({chain:{...t,id:r},transport:o})}}let KO={mainnet:4217,testnet:42431},qO={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};KO.mainnet,qO.usdc,KO.testnet,qO.pathUsd;let JO={[KO.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[KO.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},YO={[KO.mainnet]:`https://rpc.tempo.xyz`,[KO.testnet]:`https://rpc.moderato.tempo.xyz`},XO=[`push`,`pull`],ZO=q({amount:ED(),memo:Y(MD()),recipient:SE(G(),_E(e=>e))}),QO=(1n<<64n)-1n,$O=SE(jD(),_E(e=>e.toLowerCase())),ek=q({accessKeyAddress:$O,keyType:mE([`p256`,`secp256k1`,`webAuthn`])}),tk=q({accessKey:Y(ek),chainId:Y(KT())}),nk=OD(`subscriptionExpires must be a valid date`).check(AE(e=>e.getTime()%1e3==0,`subscriptionExpires must be representable as whole seconds`)),rk=mE([`day`,`week`]),ik=SE(oE([G(),XT(),kE(e=>typeof e==`number`&&Number.isSafeInteger(e))]),_E(e=>e.toString())).check(BT(/^[1-9]\\d*$/,`Invalid periodCount`),AE(e=>{try{return BigInt(e)<=QO}catch{return!1}},`periodCount exceeds uint64`));function ak(e){return AE(e=>{let{amount:t,decimals:n}=e;return ty(t,n)>0n},e)}function ok(e){let{periodCount:t,periodUnit:n}=e;try{let e=n===`day`?86400n:604800n;return BigInt(t)*e<=QO}catch{return!1}}let sk=FO({name:`tempo`,intent:`charge`,schema:{credential:{payload:cE(`type`,[q({hash:MD(),type:J(`hash`)}),q({signature:ND(),type:J(`transaction`)}),q({signature:ND(),type:J(`proof`)})])},request:SE(q({amount:ED(),chainId:Y(KT()),currency:G(),decimals:KT(),description:Y(G()),externalId:Y(G()),feePayer:Y(SE(oE([JT(),kE()]),_E(e=>typeof e==`object`?!0:e))),memo:Y(MD()),recipient:Y(G()),splits:Y(K(ZO).check(zT(1),RT(10))),supportedModes:Y(K(mE(XO)).check(zT(1)))}).check(AE(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=ty(e,t),i=n.reduce((e,n)=>e+ty(n.amount,t),0n);return n.every(e=>ty(e.amount,t)>0n)&&i<r},`Invalid splits`)),_E(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:ty(e,n).toString(),...t!==void 0||r!==void 0||i!==void 0||a!==void 0||o!==void 0?{methodDetails:{...t!==void 0&&{chainId:t},...r!==void 0&&{feePayer:r},...i!==void 0&&{memo:i},...a!==void 0&&{splits:a.map(e=>({...e,amount:ty(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),ck=FO({name:`tempo`,intent:`session`,schema:{credential:{payload:cE(`action`,[q({action:J(`open`),authorizedSigner:Y(G()),channelId:MD(),cumulativeAmount:ED(),signature:ND(),transaction:ND(),type:J(`transaction`)}),q({action:J(`topUp`),additionalDeposit:ED(),channelId:MD(),transaction:ND(),type:J(`transaction`)}),q({action:J(`voucher`),channelId:MD(),cumulativeAmount:ED(),signature:ND()}),q({action:J(`close`),channelId:MD(),cumulativeAmount:ED(),signature:ND()})])},request:SE(q({amount:ED(),chainId:Y(KT()),channelId:Y(MD()),currency:G(),decimals:KT(),escrowContract:Y(G()),feePayer:Y(SE(oE([JT(),kE()]),_E(e=>typeof e==`object`?!0:e))),minVoucherDelta:Y(ED()),recipient:Y(G()),suggestedDeposit:Y(ED()),unitType:G()}).check(AE(({amount:e,decimals:t})=>ty(e,t)>0n,`Session amount must be greater than 0`)),_E(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:ty(e,r).toString(),...s?{suggestedDeposit:ty(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:ty(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}}),lk=FO({name:`tempo`,intent:`subscription`,schema:{credential:{payload:q({signature:ND(),type:J(`keyAuthorization`)})},request:SE(q({amount:ED(),accessKey:Y(ek),chainId:Y(KT()),currency:$O,decimals:KT(),description:Y(G()),externalId:Y(G()),methodDetails:Y(tk),periodCount:ik,periodUnit:rk,recipient:$O,subscriptionExpires:nk}).check(ak(`Subscription amount must be greater than 0`),AE(ok,`Subscription period exceeds uint64`)),_E(({accessKey:e,amount:t,chainId:n,decimals:r,methodDetails:i,subscriptionExpires:a,...o})=>{let s={...i,...e!==void 0&&{accessKey:e},...n!==void 0&&{chainId:n}};return{...o,amount:ty(t,r).toString(),subscriptionExpires:a.toISOString(),...Object.keys(s).length>0?{methodDetails:s}:{}}}))}}),uk=(1n<<64n)-1n;function dk(e){return e instanceof Date?e:new Date(e)}function fk(e){let t=e.getTime();if(!Number.isFinite(t))throw new $({reason:`subscriptionExpires is invalid`});if(t%1e3!=0)throw new $({reason:`subscriptionExpires must be representable as whole seconds`});let n=t/1e3;if(n<=0||!Number.isSafeInteger(n))throw new $({reason:`subscriptionExpires cannot be represented in a Tempo key authorization`});return n}function pk(e){if(!/^[1-9]\\d*$/.test(e.periodCount))throw new $({reason:`periodCount is invalid`});if(e.periodUnit!==`day`&&e.periodUnit!==`week`)throw new $({reason:`periodUnit is invalid`});let t=e.periodUnit===`day`?86400n:604800n,n=BigInt(e.periodCount)*t;if(n>uk)throw new $({reason:`subscription period cannot be represented as an unsigned 64-bit integer`});if(n>BigInt(2**53-1))throw new $({reason:`subscription period cannot be represented exactly by this Tempo client`});return Number(n)}function mk(e){let{challengeExpires:t,request:n}=e;pk(n);let r=fk(dk(n.subscriptionExpires));if(t){let e=Math.floor(new Date(t).getTime()/1e3);if(!Number.isFinite(e)||r<=e)throw new $({reason:`subscriptionExpires must be strictly later than challenge expires`})}}function hk(e){let t=Ok(e.currency,`currency`),n=Ok(e.recipient,`recipient`);return[{address:t,selector:`0xa9059cbb`,recipients:[n]},{address:t,selector:`0x95777d59`,recipients:[n]}]}function gk(e){let[t,n]=hk(e);return[{target:Ok(e.currency,`currency`),selectorRules:[{selector:t.selector,recipients:t.recipients},{selector:n.selector,recipients:n.recipients}]}]}async function _k(e){let{accessKey:t,account:n,chainId:r,request:i}=e;if(typeof n.sign!=`function`)return;let a=yk({accessKey:t,chainId:r,request:i});return ux(a,{signature:Ub(await n.sign({hash:px(a)}))})}function vk(e){let{accessKey:t,chainId:n,payload:r,request:i}=e;if(r.type!==`keyAuthorization`)throw new $({reason:`invalid keyAuthorization payload`});let a=bk(r.signature),o=xk(a);return Sk({accessKey:t,authorization:a,chainId:n}),Ck(a,i),Tk(wk(a),i),Ek(a.scopes,i),{authorization:a,source:{address:Dk(a,o),chainId:n}}}function yk(e){let{accessKey:t,chainId:n,request:r}=e;return ux({address:Ok(t.accessKeyAddress,`accessKeyAddress`),chainId:BigInt(n),expiry:fk(dk(r.subscriptionExpires)),limits:[{token:Ok(r.currency,`currency`),limit:BigInt(r.amount),period:pk(r)}],scopes:hk(r),type:t.keyType})}function bk(e){try{return mx(e)}catch{throw new $({reason:`invalid keyAuthorization payload`})}}function xk(e){let t=e.signature;if(!t||t.type===`keychain`)throw new $({reason:`keyAuthorization must use a primitive signature`});return t}function Sk(e){let{accessKey:t,authorization:n,chainId:r}=e;if(n.chainId!==BigInt(r))throw new $({reason:`keyAuthorization chainId mismatch`});if(t){if(!Wd(n.address,Ok(t.accessKeyAddress,`accessKeyAddress`)))throw new $({reason:`keyAuthorization access key mismatch`});if(n.type!==t.keyType)throw new $({reason:`keyAuthorization key type mismatch`})}}function Ck(e,t){if(mk({request:t}),e.expiry!==fk(dk(t.subscriptionExpires)))throw new $({reason:`keyAuthorization expiry mismatch`})}function wk(e){let[t]=e.limits??[];if(!t||e.limits?.length!==1)throw new $({reason:`keyAuthorization must contain exactly one token limit`});return t}function Tk(e,t){if(!Wd(e.token,Ok(t.currency,`currency`)))throw new $({reason:`keyAuthorization currency mismatch`});if(e.limit!==BigInt(t.amount))throw new $({reason:`keyAuthorization amount mismatch`});if(e.period!==pk(t))throw new $({reason:`keyAuthorization period mismatch`})}function Ek(e,t){if(!e||e.length<1||e.length>2)throw new $({reason:`keyAuthorization must contain recipient-scoped transfer calls`});let n=Ok(t.currency,`currency`),r=Ok(t.recipient,`recipient`),i=new Set;for(let t of e){if(!Wd(t.address,n))throw new $({reason:`keyAuthorization call target mismatch`});let e=kk(t.selector);if(e!==`0xa9059cbb`&&e!==`0x95777d59`)throw new $({reason:`keyAuthorization selector not allowed`});if(i.has(e))throw new $({reason:`keyAuthorization duplicate selector`});if(i.add(e),t.recipients?.length!==1||!Wd(t.recipients[0],r))throw new $({reason:`keyAuthorization recipient mismatch`})}if(!i.has(`0xa9059cbb`))throw new $({reason:`keyAuthorization must allow transfer`});if(!i.has(`0x95777d59`))throw new $({reason:`keyAuthorization must allow transferWithMemo`})}function Dk(e,t){let n=px(e);try{let e=Bb({payload:n,signature:t});if(!Jb(t,{address:e,payload:n}))throw new $({reason:`keyAuthorization signature is invalid`});return e}catch(e){throw e instanceof $?e:new $({reason:`keyAuthorization signature is invalid`})}}function Ok(e,t){if(!Fi(e))throw new $({reason:`${t} must be an address`});return e.toLowerCase()}function kk(e){return typeof e==`string`?e.toLowerCase():``}let Ak=q({accessKey:Y(kE()),account:Y(kE())});function jk(e={}){let t=GO({chain:BO,getClient:e.getClient,rpcUrl:YO}),n=WO({account:e.account});return IO(lk,{context:Ak,async createCredential({challenge:r,context:i}){let a=r.request.methodDetails?.chainId??KO.testnet,o=await t({chainId:a}),s=n(o,i),c=i?.accessKey??e.accessKey??r.request.methodDetails?.accessKey;if(!c)throw Error(\"No `accessKey` provided. The subscription challenge must include `accessKey`, or the client must pass one to parameters/context.\");Nk(r.request),await e.validateRequest?.(r.request);let l=await Mk(o,{accessKey:c,account:s,chainId:a,request:r.request});if(!Wd(vk({accessKey:c,chainId:a,payload:{signature:gx(l),type:`keyAuthorization`},request:r.request}).source.address,s.address))throw Error(`keyAuthorization signer does not match the selected account`);return PO({challenge:r,payload:{signature:gx(l),type:`keyAuthorization`},source:`did:pkh:eip155:${a}:${s.address.toLowerCase()}`})}})}async function Mk(e,t){let{accessKey:n,account:r,chainId:i,request:a}=t;return await _k({accessKey:n,account:r,chainId:i,request:a})||dx((await e.request({method:`wallet_authorizeAccessKey`,params:[{address:n.accessKeyAddress,allowedCalls:gk(a),expiry:fk(dk(a.subscriptionExpires)),keyType:n.keyType,limits:[{token:a.currency,limit:BigInt(a.amount),period:pk(a)}]}]})).keyAuthorization)}function Nk(e){pk(e),fk(dk(e.subscriptionExpires))}let Pk=z(Vg(Mf(`mpp`),{as:`Hex`}),0,4);function Fk(e){return lp(z(Vg(Mf(e),{as:`Hex`}),0,10))}function Ik(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(lp(Pk),0),i[4]=1,i.set(Fk(t),5),n&&i.set(Fk(n),15),i.set(Lk(r),25),L(i)}function Lk(e){return lp(z(Vg(Mf(e),{as:`Hex`}),0,7))}function Rk(e,t){return e.toLowerCase()===t.toLowerCase()}let zk=[qO.pathUsd,qO.usdc];async function Bk(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!Rk(e,i)),c=await Promise.allSettled([Am(e,KS.call({account:n,token:i})),...s.map(t=>Am(e,KS.call({account:n,token:t})))]),l=c[0];if(!(l.status===`fulfilled`&&l.value>=r)){for(let t=0;t<s.length;t++){let n=c[t+1];if(n.status!==`fulfilled`)continue;let a=n.value;if(a<=0n)continue;let l=s[t];try{let t=await AS(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[BS.call({token:l,spender:wS,amount:e}),TS.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new Hk({currency:i})}}function Vk(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>Rk(e,t)))]:t,slippage:e.slippage??1}:!1}var Hk=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function Uk(e){let t=BigInt(e.amount),n=e.methodDetails?.splits??[],r=n.reduce((e,t)=>e+BigInt(t.amount),0n);if(r>=t)throw Error(`Invalid charge request: split total must be less than total amount.`);let i=t-r;if(i<=0n)throw Error(`Invalid charge request: primary transfer amount must be positive.`);return[{amount:i.toString(),memo:e.methodDetails?.memo,recipient:e.recipient},...n.map(e=>({amount:e.amount,memo:e.memo,recipient:e.recipient}))]}let Wk={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function Gk(e){return{name:`MPP`,version:`2`,chainId:e}}function Kk(e,t){return{challengeId:e,realm:t}}function qk(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}function Jk(e={}){let{clientId:t}=e,n=GO({chain:BO,getClient:e.getClient,rpcUrl:YO}),r=WO({account:e.account});return IO(sk,{context:q({account:Y(kE()),autoSwap:Y(kE()),mode:Y(mE(XO))}),async createCredential({challenge:i,context:a}){let o=i.request.methodDetails?.chainId,s=await n({chainId:o}),c=r(s,a),{request:l}=i,{amount:u,methodDetails:d}=l;if(BigInt(u)===0n)return PO({challenge:i,payload:{signature:await Ty(s,{account:c,domain:Gk(o),types:Wk,primaryType:`Proof`,message:Kk(i.id,i.realm)}),type:`proof`},source:qk({address:c.address,chainId:o})});let f=l.currency;if(e.expectedRecipients){let t=new Set(e.expectedRecipients.map(e=>e.toLowerCase())),n=d?.splits;if(n){for(let e of n)if(!t.has(e.recipient.toLowerCase()))throw Error(`Unexpected split recipient: ${e.recipient}`)}}let p=d?.supportedModes??[`pull`,`push`],m=(()=>{let t=a?.mode??e.mode;if(t){if(!p.includes(t))throw Error(`Challenge does not support ${t} mode.`);return t}let n=c.type===`json-rpc`?`push`:`pull`;return p.includes(n)?n:p[0]})(),h=d?.memo?d.memo:Ik({challengeId:i.id,clientId:t,serverId:i.realm}),g=Uk({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>rC.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=Vk(a?.autoSwap??e.autoSwap,zk),v=[...(_?await Bk(s,{account:c.address,amountOut:BigInt(u),tokenOut:f,tokenIn:_.tokenIn,slippage:_.slippage}):void 0)??[],...g],y=(()=>{let e=Math.floor(Date.now()/1e3)+25;if(!i.expires)return e;let t=Math.floor(new Date(i.expires).getTime()/1e3);return Math.min(e,t)})();if(m===`push`){let{receipts:e}=await Cy(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return PO({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Hd(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,PO({challenge:i,payload:{signature:await wy(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function Yk(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let Xk={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function Zk(e,t,n,r,i,a){let o=await Ty(e,{account:t,domain:Yk(r,i),types:Xk,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=Ub(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return _v(e.inner.signature)}catch{}return o}function Qk(e){return Vg(H_(W_([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let $k=[{type:`function`,name:`CLOSE_GRACE_PERIOD`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`VOUCHER_TYPEHASH`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`channels`,inputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`close`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`computeChannelId`,inputs:[{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`domainSeparator`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`eip712Domain`,inputs:[],outputs:[{name:`fields`,type:`bytes1`,internalType:`bytes1`},{name:`name`,type:`string`,internalType:`string`},{name:`version`,type:`string`,internalType:`string`},{name:`chainId`,type:`uint256`,internalType:`uint256`},{name:`verifyingContract`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`extensions`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`view`},{type:`function`,name:`getChannel`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`tuple`,internalType:`struct TempoStreamChannel.Channel`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getChannelsBatch`,inputs:[{name:`channelIds`,type:`bytes32[]`,internalType:`bytes32[]`}],outputs:[{name:`channelStates`,type:`tuple[]`,internalType:`struct TempoStreamChannel.Channel[]`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getVoucherDigest`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`open`,inputs:[{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`requestClose`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settle`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`topUp`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`additionalDeposit`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ChannelClosed`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`settledToPayee`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`refundedToPayer`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`ChannelExpired`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`ChannelOpened`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`token`,type:`address`,indexed:!1,internalType:`address`},{name:`authorizedSigner`,type:`address`,indexed:!1,internalType:`address`},{name:`salt`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`deposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`CloseRequestCancelled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`CloseRequested`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`closeGraceEnd`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`cumulativeAmount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`deltaPaid`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newSettled`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TopUp`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`additionalDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`error`,name:`AmountExceedsDeposit`,inputs:[]},{type:`error`,name:`AmountNotIncreasing`,inputs:[]},{type:`error`,name:`ChannelAlreadyExists`,inputs:[]},{type:`error`,name:`ChannelFinalized`,inputs:[]},{type:`error`,name:`ChannelNotFound`,inputs:[]},{type:`error`,name:`CloseNotReady`,inputs:[]},{type:`error`,name:`DepositOverflow`,inputs:[]},{type:`error`,name:`InvalidPayee`,inputs:[]},{type:`error`,name:`InvalidSignature`,inputs:[]},{type:`error`,name:`NotPayee`,inputs:[]},{type:`error`,name:`NotPayer`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]}];async function eA(e,t,n){return Am(e,{address:t,abi:$k,functionName:`getChannel`,args:[n]})}pa({abi:$k,name:`open`}),pa({abi:$k,name:`topUp`});function tA(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??JO[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function nA(e,t,n,r){return PO({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function rA(e,t,n,r,i,a,o){let s=await Zk(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function iA(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=ap(32),f=Qk({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Sa({abi:V,functionName:`approve`,args:[r,o]}),m=Sa({abi:$k,functionName:`open`,args:[i,a,o,d,u]}),h=await Hd(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await wy(e,h),_=await Zk(e,t,{channelId:f,cumulativeAmount:s},r,c,n.authorizedSigner);return{entry:{channelId:f,salt:d,cumulativeAmount:s,escrowContract:r,chainId:c,opened:!0},payload:{action:`open`,type:`transaction`,channelId:f,transaction:g,authorizedSigner:u,cumulativeAmount:s.toString(),signature:_}}}async function aA(e,t,n,r){try{let i=await eA(e,t,n);if(i.deposit>0n&&!i.finalized)return{channelId:n,salt:`0x`,cumulativeAmount:i.settled,escrowContract:t,chainId:r,opened:!0}}catch{}}let oA=q({account:Y(kE()),action:Y(mE([`open`,`topUp`,`voucher`,`close`])),channelId:Y(G()),cumulativeAmount:Y(ED()),cumulativeAmountRaw:Y(G()),transaction:Y(G()),authorizedSigner:Y(G()),additionalDeposit:Y(ED()),additionalDepositRaw:Y(G()),depositRaw:Y(G())});function sA(e={}){let{decimals:t=6}=e,n=GO({chain:BO,getClient:e.getClient,rpcUrl:YO}),r=WO({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:ty(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return tA(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return ty(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),te=i(f),C=u(v,y,_),w=s.get(C);if(!w){let e=p?.channelId??m?.channelId;if(e){let n=await aA(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?ty(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(C,n),c.set(n.channelId,C),o.set(n.channelId,_),w=n,l(w)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let T;if(w?.opened)w.cumulativeAmount+=b,T=await rA(g,f,w.channelId,w.cumulativeAmount,_,h,te),l(w);else{let e=await iA(g,f,{authorizedSigner:te,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(C,e.entry),c.set(e.entry.channelId,C),o.set(e.entry.channelId,_),T=e.payload,l(e.entry)}return nA(r,T,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?ty(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?ty(a.additionalDeposit,t):void 0,x=d(e,u,v);o.set(v,x);let S;switch(p){case`open`:{if(!h)throw Error(`transaction required for open action`);if(y===void 0)throw Error(`cumulativeAmount required for open action`);let e=await Zk(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`open`,type:`transaction`,channelId:v,transaction:h,authorizedSigner:_??r.address,cumulativeAmount:y.toString(),signature:e};break}case`topUp`:if(!h)throw Error(`transaction required for topUp action`);if(b===void 0)throw Error(`additionalDeposit required for topUp action`);S={action:`topUp`,type:`transaction`,channelId:v,transaction:h,additionalDeposit:b.toString()};break;case`voucher`:{if(y===void 0)throw Error(`cumulativeAmount required for voucher action`);S=await rA(f,r,v,y,x,u,_);let e=c.get(v);if(e){let t=s.get(e);t&&(t.cumulativeAmount=t.cumulativeAmount>y?t.cumulativeAmount:y,l(t))}break}case`close`:{if(y===void 0)throw Error(`cumulativeAmount required for close action`);let e=await Zk(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`close`,channelId:v,cumulativeAmount:y.toString(),signature:e};let t=c.get(v);if(t){let e=s.get(t);e&&(e.opened=!1,e.cumulativeAmount=e.cumulativeAmount>y?e.cumulativeAmount:y,l(e))}break}}return nA(e,S,u,r)}return IO(ck,{context:oA,async createCredential({challenge:t,context:i}){let o=r(await n({chainId:t.request.methodDetails?.chainId??0}),i);if(!i?.action&&(e.deposit!==void 0||a!==void 0))return f(t,o,i);if(i?.action)return p(t,o,i);throw Error(\"No `action` in context and no `deposit` or `maxDeposit` configured. Either provide context with action/channelId/cumulativeAmount, or configure `deposit`/`maxDeposit` for auto-management.\")}})}function cA(e){let t=ob(e);return JSON.parse(t)}function lA(e){let t=`message`,n=[];for(let r of e.split(`\n`))r.startsWith(`event: `)?t=r.slice(7).trim():r.startsWith(`data: `)?n.push(r.slice(6)):r===`data:`&&n.push(``);if(n.length===0)return null;let r=n.join(`\n`);switch(t){case`message`:return{type:`message`,data:r};case`payment-need-voucher`:return{type:`payment-need-voucher`,data:JSON.parse(r)};case`payment-receipt`:return{type:`payment-receipt`,data:JSON.parse(r)};default:return{type:`message`,data:r}}}function uA(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function dA(){return JSON.stringify({mpp:`payment-close-request`})}function fA(e){try{let t=JSON.parse(e);return t.mpp===`authorization`&&typeof t.authorization==`string`?{mpp:`authorization`,authorization:t.authorization}:t.mpp===`message`&&typeof t.data==`string`?{mpp:`message`,data:t.data}:t.mpp===`payment-close-request`?{mpp:`payment-close-request`}:t.mpp===`payment-close-ready`&&pA(t.data)?{mpp:`payment-close-ready`,data:t.data}:t.mpp===`payment-error`&&typeof t.status==`number`&&typeof t.message==`string`?{mpp:`payment-error`,status:t.status,message:t.message}:t.mpp===`payment-need-voucher`&&mA(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&pA(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function pA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function mA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let hA={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function gA(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:ty(e.maxDeposit,e.decimals??6),i=null,a=null,o=null,s=0n,c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=0n,g=0n,_=sA({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=hO({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);ne(t),ne(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function te(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function C(e){if(!m)return;let t=m;m=null,t.reject(e)}function w(e){if(!f)return;let t=f;f=null,t.reject(e)}function T(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function ne(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function re(e){let t=e.headers.get(`Payment-Receipt`),n=t?cA(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ie(e,t){return o=e,re(await v(e,t))}function ae(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=hA.CLOSED,r=null}if(e===`open`&&(i=hA.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available — call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ie,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ie(e,{...s,headers:{..._O(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=lA(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);ne(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let T=WD(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!T)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=T;let re=await _.createCredential({challenge:T,context:{}});d=null,c=T,h=0n,g=BigInt(T.request.amount);let ie=jO(re);l=ie.payload.channelId;let oe=new n(v,f);u=oe;let se=ae(oe),ce=e=>{C(Error(e)),w(Error(e)),(oe.readyState===hA.CONNECTING||oe.readyState===hA.OPEN)&&oe.close(3008,e)},le=e=>e.challengeId===T.id&&e.channelId===l,ue=new Promise((e,t)=>{let n=()=>{oe.removeEventListener(`error`,r),se.emit(`open`,{type:`open`}),e()},r=()=>{oe.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};oe.addEventListener(`open`,n,{once:!0}),oe.addEventListener(`error`,r,{once:!0})});return oe.addEventListener(`close`,e=>{u===oe&&(u=null),c===T&&(c=null),l===ie.payload.channelId&&(l=null),p=null,C(Error(`WebSocket closed before the payment flow completed.`)),w(Error(`WebSocket closed before the payment flow completed.`)),se.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),oe.addEventListener(`error`,()=>{se.emit(`error`,{type:`error`})}),oe.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=fA(t);if(!n){se.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,se.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!le(n.data)){ce(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){ce(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),te(n.data),se.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:C(Error(n.message)),w(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){ce(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{ne(e)}catch(e){ce(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:T,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});oe.send(uA(r));break}case`payment-receipt`:if(!le(n.data)){ce(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){ce(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),w(Error(`WebSocket payment flow aborted.`)),oe.close()},{once:!0}),await ue,oe.send(uA(re)),await x(),se.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===hA.OPEN){let t=d??await(async()=>(u.send(dA()),S()))(),r=BigInt(t.spent);if(r>(i.cumulativeAmount>s?i.cumulativeAmount:s))throw Error(`close-ready spent exceeds local voucher state`);let a=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:r.toString()}}),o=r.toString();p=o;try{let t=x(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(uA(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(T(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return ne(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?cA(m):void 0}}}function _A(e={}){return[Jk(e),sA(e)]}(function(e){e.charge=Jk,e.session=gA,e.subscription=jk})(_A||={});function vA(e){return e}function yA(){return vA({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return WD(e)},getChallenge(e){return UD(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function bA(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=yA()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=XD(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=hO(l);return n&&gO(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=eO(r,o,xA(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a;c.expires&&CD(c.expires,c.id);let u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function xA(e,t){return t?typeof t==`string`?ZD(t):t:e}function SA(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress,{accessKeys:i}=n.getState();return i.find(e=>e.address?.toLowerCase()===r.toLowerCase())?.keyAuthorization}async function CA(e={}){let{account:t}=e,n=await sS();return{accessKey:bS(n,t?{access:t}:void 0),keyPair:n}}function wA(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.filter(e=>e.address?.toLowerCase()!==r?.toLowerCase())}))}function TA(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.map(e=>e.address.toLowerCase()===r.toLowerCase()?{...e,keyAuthorization:void 0}:e)}))}function EA(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o={address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,scopes:n.scopes},s=i?{...o,privateKey:i}:r?{...o,keyPair:r}:{...o};a.setState(e=>({accessKeys:[s,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function DA(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new OC({message:`Account \"${n}\" not found.`}):new AC({message:`No active account.`});if(t){let t=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(t){if(t.expiry&&t.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(e=>e!==t)});else if(AA(t,e))return OA(t)}}return kA(l,{signable:r})}function OA(e){if(`keyPair`in e&&e.keyPair)return bS(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return vS(e.privateKey,{access:e.access});case`p256`:return _S(e.privateKey,{access:e.access})}throw new OC({message:`External access key cannot be hydrated for signing.`})}function kA(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new OC({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return vS(e.privateKey);case`p256`:return _S(e.privateKey);case`webCrypto`:return bS(e.keyPair);case`webAuthn`:return yS(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return gS(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new OC({message:`Unknown key type.`})}}function AA(e,t){return!t.calls||!e.scopes?!0:t.calls.every(t=>{if(!t.to)return!1;let n=t.to.toLowerCase(),r=t.data?.slice(0,10).toLowerCase();return e.scopes.some(e=>e.address.toLowerCase()===n?e.selector?r===(e.selector.startsWith(`0x`)&&e.selector.length===10?e.selector:fy(e.selector)).toLowerCase():!0:!1)})}function jA(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function MA(e={}){let{dialog:t=ee()?ie():re(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`,theme:o}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),jA({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=WC();function c(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new DC);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new DC({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let l=VC({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:gD});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await CA();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){EA({address:e,keyAuthorization:dx(t),keyPair:n,store:i})}async function f(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=SA(n,{store:i});try{let e=await t(n,r??void 0);return TA(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),wA(n,{store:i});return}}let p=t({host:n,store:i,theme:o}),m=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);p?.syncRequests(t),t.length===0&&p?.close()});return{cleanup(){m(),p?.destroy()},actions:{async createAccount(e,t){let n=await u(e.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:kw(iD.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await u(e?.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:kw(iD.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await l.request(t)},async signTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=await Hd(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await l.request({...t,params:[kw(VE,e)]}):n},async signTypedData(e,t){return await l.request(t)},async sendTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await Hd(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await l.request({...t,params:[kw(VE,e)]}):n},async sendTransactionSync(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await Hd(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await l.request({...t,params:[kw(VE,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[kw(iD.authorizeAccessKey,r?r.request:t)]});return r&&d(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await l.request(t)},async deposit(e,t){return await l.request(t)},async send(e,t){return await l.request({...t,params:[kw(cD.parameters,e)]})},async swap(e,t){return await l.request(t)},async depositZone(e,t){return await l.request({...t,params:[kw(pD.parameters,e)]})},async withdrawZone(e,t){return await l.request({...t,params:[kw(mD.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let NA=new Map;function PA(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return IA(r);if(r?.url)return IA(r.url)}})(),s=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,c=e??a.getState().chainId,l=`${c}:${i?`p`:``}:${r===!1?`no-fp`:o??``}:${s}`,u=NA.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=ky(),r=i?FA(i,t):t;u=rh({chain:e,transport:o?LA(r,o,s):r,pollingInterval:1e3}),NA.set(l,u)}return u}function FA(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function IA(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function LA(e,t,n){return r=>{let i=e(r),a=ky(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=dS(t);if(`feePayerSignature`in n&&n.feePayerSignature===null){let n=await a.request({method:`eth_signRawTransaction`,params:[t]});return await i.request({method:e,params:[n]})}}}return await i.request({method:e,params:t})}}}}function RA(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(RA.cache.get(n))return RA.cache.get(n);let r=e().finally(()=>RA.cache.delete(n));return RA.cache.set(n,r),r}RA.cache=new Map;function zA(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function BA(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=zA(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let VA;function HA(){return VA||=BA(`keyval-store`,`keyval`),VA}function UA(e,t=HA()){return t(`readonly`,t=>zA(t.get(e)))}function WA(e,t,n=HA()){return n(`readwrite`,n=>(n.put(t,e),zA(n.transaction)))}function GA(e,t=HA()){return t(`readwrite`,t=>(t.delete(e),zA(t.transaction)))}function KA(e,t={}){let n=`${t.key??`tempo`}.`;return{getItem:t=>e.getItem(`${n}${t}`),setItem:(t,r)=>e.setItem(`${n}${t}`,r),removeItem:t=>e.removeItem(`${n}${t}`)}}function qA(e={}){let t=typeof indexedDB<`u`?BA(`tempo`,`store`):void 0;return KA({async getItem(e){let n=await UA(e,t);return n===null?null:n},async setItem(e,n){await WA(e,n,t)},async removeItem(e){await GA(e,t)}},e)}function JA(e={}){let t=new Map;return KA({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let YA=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)};function XA(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}let ZA=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return ZA(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return ZA(t)(e)}}}},QA=(e,t)=>(n,r,i)=>{let a={storage:XA(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return ZA(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},$A=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},ej=(e=>e?$A(e):$A);function tj(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?qA({key:`tempo`}):JA({key:`tempo`})}=e;return ej(YA(QA(()=>({accessKeys:[],accounts:[],activeAccount:0,chainId:t,requestQueue:[]}),{merge(e,t){let n=e;return{...n,...t,accounts:n.accounts?.map(e=>t.accounts.find(t=>t.address.toLowerCase()===e.address.toLowerCase())??e)??t.accounts,accessKeys:n.accessKeys??t.accessKeys,chainId:n.chainId??t.chainId}},name:`store`,partialize:e=>({accounts:n&&e.accounts.length>n?e.accounts.slice(0,n):e.accounts,activeAccount:e.activeAccount,...r?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:i,version:0})))}async function nj(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function rj(e,t){let n=Dw(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new kC({message:`Unsupported method \"${t?.method}\".`}):new EC(-32602,`Invalid params: ${ij(n.error.issues)}`)}return{...t,_decoded:n.data}}function ij(e){return e.flatMap(e=>e.code===`invalid_union`&&e.errors.length>0?e.errors.flatMap(t=>t.map(t=>`${[...e.path,...t.path].join(`.`)}: ${t.code===`invalid_union`&&t.errors.length>0?ij([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let aj=new Set;function oj(e={}){let{adapter:t=MA(),chains:n=[BO,UO,VO],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?qA():JA()}=e,s=(()=>{if(e.feePayer)return typeof e.feePayer==`string`?{precedence:`fee-payer-first`,url:e.feePayer}:{precedence:e.feePayer.precedence??`fee-payer-first`,url:e.feePayer.url}})(),c=tj({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>DA({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return PA(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:s?.precedence}})(),store:c})}let f=t({getAccount:l,getClient:d,storage:o,store:c}),{actions:p}=f,m=BC();c.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>m.emit(`accountsChanged`,c.getState().accounts.map(e=>e.address))),c.subscribe(e=>e.chainId,e=>m.emit(`chainChanged`,R(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:R(c.getState().chainId)}):m.emit(`disconnect`,new AC)});function h(){if(c.getState().accounts.length===0)throw new AC({message:`No accounts connected.`})}function g(e){if(!f.persistAccounts)return e;let t=[...e];for(let e of c.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function _(e){if(e===!1)return!1;let t=typeof e==`string`?e:s?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let v=Object.assign(VC({...m,async request({method:t,params:r}){return await nj(c),RA(async()=>{let i;try{i=rj(vD,{method:t,params:r})}catch(e){if(!(e instanceof kC))throw e;return await PA(void 0,{chains:n,store:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=c.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return R(c.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await p.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return c.setState({accounts:g(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=_(t.feePayer),a=e=>{let t=d({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return l({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=SA(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,..._x(n)}});return TA(e,{store:c}),r}catch{return wA(e,{store:c}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.signTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_sendTransactionSync`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransactionSync({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_signTypedData_v4`:{h();let[e,t]=i._decoded.params;return await p.signTypedData({address:e,data:t},i)}case`personal_sign`:{h();let[e,t]=i._decoded.params;return await p.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{h();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=_(t?.feePayer??(s?!0:void 0)),l={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=I(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[kw(VE,l)]}),rp(R(c.getState().chainId),32),cj);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[kw(VE,l)]}),d=u.transactionHash,f=R(c.getState().chainId),m=I(d,rp(f,32),cj);return{atomic:!0,capabilities:{sync:a},chainId:f,id:m,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=c.getState(),a=e?.account??t[r]?.address;if(!a)throw new AC({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new CC({message:\"`tokens` is required.\"});let s=PA(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([KS(s,{account:a,token:e}),qS(s,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:R(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(cj.slice(2)))throw Error(\"`id` not supported\");$f(e);let t=z(e,0,32),r=R(Number(z(e,32,64))),a=await PA(Number(r),{chains:n,store:c}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=c.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new OC({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(R(e.id))):n,o={};for(let e of a)o[R(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??ap(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new kC({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await p.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(h(),!p.revokeAccessKey)throw new kC({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await p.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!p.deposit)throw new kC({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new kC({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_swap`:if(h(),!p.swap)throw new kC({message:\"`swap` not supported by adapter.\"});return await p.swap(i._decoded.params?.[0]??{},i);case`wallet_depositZone`:{if(h(),!p.depositZone)throw new kC({message:\"`depositZone` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.depositZone(t,i)}case`wallet_withdrawZone`:if(h(),!p.withdrawZone)throw new kC({message:\"`withdrawZone` not supported by adapter.\"});return await p.withdrawZone(i._decoded.params?.[0]??{},i);case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new PC({message:`Chain ${e} not configured.`});await p.switchChain?.({chainId:e}),c.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:wf({method:t,params:r})})}},{schema:gD}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return PA(t,{chains:n,feePayer:r,provider:u,store:c})},store:c});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;aj.has(e)||(aj.add(e),yD({info:{icon:t.icon??sj,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&bA({methods:[_A({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let sj=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,cj=Vg(np(`TEMPO_5792`)),lj={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},uj={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},dj={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var fj=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let pj={accent:new fj(`accent`),background:new fj(`background`),border:new fj(`border`),foreground:new fj(`foreground`),muted:new fj(`muted`),negative:new fj(`negative`),positive:new fj(`positive`),surface:new fj(`surface`),fontFamily:new fj(`font-family`),fontSizeBase:new fj(`font-size-base`),radius:new fj(`radius`),spacingUnit:new fj(`spacing-unit`)};String.raw`<style>\n *,\n ::after,\n ::before,\n ::backdrop,\n ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n border-color: ${pj.border};\n }\n html,\n :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n vertical-align: middle;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea,\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type='button'], [type='reset'], [type='submit']),\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n }\n</style>`;async function mj(e){let t=new URL(location.href);t.searchParams.set(uj.serviceWorker,``);let n=await navigator.serviceWorker.register(t.pathname+t.search),r=await new Promise(e=>{let t=n.installing??n.waiting??n.active;if(t?.state===`activated`)return e(t);let r=t??n;r.addEventListener(`statechange`,function t(){let i=n.active;i?.state===`activated`&&(r.removeEventListener(`statechange`,t),e(i))})});await new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>t(),r.postMessage({credential:e},[n.port2])}),location.reload()}function hj(e){let t=document.getElementById(lj.data),n=Cf(t.textContent),r=t.getAttribute(dj.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(dj.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(dj.challengeId),o=a?(i.removeAttribute(dj.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(lj.error)?.remove();return}let t=document.getElementById(lj.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=lj.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:mj,vars:pj}}let gj=hj(`tempo`),_j=String.raw,vj=document.createElement(`style`);vj.textContent=_j`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${gj.vars.spacingUnit} * 8);\n }\n button {\n background: ${gj.vars.accent};\n border-radius: ${gj.vars.radius};\n color: ${gj.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${gj.vars.spacingUnit} * 4) calc(${gj.vars.spacingUnit} * 8);\n width: 100%;\n }\n button:hover:not(:disabled) {\n opacity: 0.85;\n }\n button:disabled {\n cursor: default;\n opacity: 0.5;\n }\n button svg {\n display: inline;\n fill: currentColor;\n height: 0.85em;\n transform: translateY(0.05em);\n vertical-align: baseline;\n width: auto;\n }\n`,gj.root.append(vj);let yj=oj({testnet:gj.challenge.request.methodDetails?.chainId===UO.id||gj.challenge.request.methodDetails?.chainId===HO.id}),bj=document.createElement(`button`);bj.innerHTML=`${gj.text.pay===`Pay`?`Continue with`:gj.text.pay} <svg aria-label=\"Tempo\" viewBox=\"0 0 107 25\" role=\"img\"><path d=\"M8.10464 23.7163H1.82475L7.64513 5.79356H0.201172L1.82475 0.540352H22.5637L20.9401 5.79356H13.8944L8.10464 23.7163Z\"></path><path d=\"M31.474 23.7163H16.5861L24.0607 0.540352H38.8873L37.4782 4.95923H28.8701L27.3078 9.93433H35.6402L34.231 14.2914H25.8681L24.3057 19.2974H32.8525L31.474 23.7163Z\"></path><path d=\"M38.2124 23.7163H33.2192L40.7244 0.540352H49.0567L48.781 13.0245L56.8989 0.540352H66.0277L58.5531 23.7163H52.3039L57.3584 7.86395L46.9736 23.7163H43.267L43.4201 7.80214L38.2124 23.7163Z\"></path><path d=\"M73.057 4.83563L70.6369 12.3137H71.3108C72.8425 12.3137 74.1189 11.9532 75.14 11.2322C76.1612 10.4906 76.8249 9.43991 77.1312 8.08025C77.3967 6.90601 77.2538 6.07167 76.7023 5.57725C76.1509 5.08284 75.2319 4.83563 73.9453 4.83563H73.057ZM66.9915 23.7163H60.7116L68.1862 0.540352H75.814C77.5703 0.540352 79.0816 0.828764 80.3478 1.40559C81.6344 1.96181 82.5738 2.76524 83.166 3.81588C83.7787 4.84592 83.9829 6.05107 83.7787 7.43133C83.5132 9.2442 82.8189 10.8408 81.6956 12.221C80.5724 13.6013 79.1122 14.6725 77.315 15.4347C75.5383 16.1764 73.5471 16.5472 71.3415 16.5472H69.289L66.9915 23.7163Z\"></path><path d=\"M98.747 22.233C96.664 23.4691 94.4481 24.0871 92.0996 24.0871H92.0383C89.9552 24.0871 88.1989 23.6236 86.7693 22.6965C85.3602 21.7489 84.3493 20.4717 83.7366 18.8648C83.1443 17.2579 83.0014 15.4966 83.3077 13.5807C83.6957 11.1704 84.5841 8.94549 85.9728 6.90601C87.3616 4.86653 89.0975 3.23906 91.1805 2.02361C93.2636 0.808164 95.4897 0.200439 97.8587 0.200439H97.9199C100.085 0.200439 101.872 0.663958 103.281 1.591C104.71 2.51803 105.701 3.78498 106.252 5.39185C106.824 6.97811 106.947 8.76008 106.62 10.7378C106.232 13.0657 105.343 15.2596 103.955 17.3197C102.566 19.3592 100.83 20.997 98.747 22.233ZM90.0777 18.2468C90.6292 19.2974 91.589 19.8227 92.9573 19.8227H93.0186C94.1418 19.8227 95.1833 19.4004 96.1432 18.5558C97.1235 17.6905 97.9506 16.5369 98.6245 15.0948C99.3189 13.6528 99.8294 12.0459 100.156 10.2742C100.463 8.54377 100.34 7.15322 99.7886 6.10257C99.2372 5.03133 98.2875 4.49571 96.9397 4.49571H96.8784C95.8369 4.49571 94.826 4.92833 93.8457 5.79356C92.8858 6.6588 92.0485 7.82274 91.3337 9.2854C90.6189 10.7481 90.0982 12.3343 89.7714 14.0442C89.4446 15.7747 89.5468 17.1755 90.0777 18.2468Z\"></path></svg>`,bj.onclick=async()=>{try{gj.error(),bj.disabled=!0;let e=await(async()=>{let e=await yj.request({method:`eth_accounts`});return e.length>0?e.at(0):(await yj.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await _A({account:e,getClient:e=>{let t=e.chainId??gj.challenge.request.methodDetails?.chainId;return rh({chain:[...yj?.chains??[],UO,HO].find(e=>e.id===t),transport:Dy(yj)})}})[0].createCredential({challenge:gj.challenge,context:{}});await gj.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;gj.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{bj.disabled=!1}},gj.root.appendChild(bj)})();</script>";
3
3
  //# sourceMappingURL=html.gen.js.map