mppx 0.6.15 → 0.6.16

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 (49) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/Challenge.d.ts +7 -3
  3. package/dist/Challenge.d.ts.map +1 -1
  4. package/dist/Challenge.js +15 -9
  5. package/dist/Challenge.js.map +1 -1
  6. package/dist/Credential.d.ts +2 -2
  7. package/dist/Credential.d.ts.map +1 -1
  8. package/dist/Credential.js +31 -16
  9. package/dist/Credential.js.map +1 -1
  10. package/dist/server/Mppx.d.ts.map +1 -1
  11. package/dist/server/Mppx.js +19 -9
  12. package/dist/server/Mppx.js.map +1 -1
  13. package/dist/stripe/server/internal/html.gen.d.ts +1 -1
  14. package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
  15. package/dist/stripe/server/internal/html.gen.js +1 -1
  16. package/dist/stripe/server/internal/html.gen.js.map +1 -1
  17. package/dist/tempo/Proof.d.ts +5 -0
  18. package/dist/tempo/Proof.d.ts.map +1 -1
  19. package/dist/tempo/Proof.js +5 -1
  20. package/dist/tempo/Proof.js.map +1 -1
  21. package/dist/tempo/internal/proof.d.ts +2 -2
  22. package/dist/tempo/internal/proof.d.ts.map +1 -1
  23. package/dist/tempo/internal/proof.js +2 -2
  24. package/dist/tempo/internal/proof.js.map +1 -1
  25. package/dist/tempo/server/Charge.d.ts.map +1 -1
  26. package/dist/tempo/server/Charge.js +57 -17
  27. package/dist/tempo/server/Charge.js.map +1 -1
  28. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  29. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  30. package/dist/tempo/server/internal/html.gen.js +1 -1
  31. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  32. package/package.json +2 -2
  33. package/src/Challenge.test.ts +25 -9
  34. package/src/Challenge.ts +21 -10
  35. package/src/Credential.test.ts +64 -2
  36. package/src/Credential.ts +35 -19
  37. package/src/middlewares/hono.test.ts +2 -2
  38. package/src/proxy/Proxy.test.ts +2 -2
  39. package/src/server/Mppx.test.ts +28 -8
  40. package/src/server/Mppx.ts +23 -9
  41. package/src/stripe/server/internal/html.gen.ts +1 -1
  42. package/src/tempo/Proof.test-d.ts +4 -0
  43. package/src/tempo/Proof.test.ts +9 -0
  44. package/src/tempo/Proof.ts +6 -1
  45. package/src/tempo/internal/proof.test.ts +4 -4
  46. package/src/tempo/internal/proof.ts +2 -2
  47. package/src/tempo/server/Charge.test.ts +476 -0
  48. package/src/tempo/server/Charge.ts +61 -17
  49. package/src/tempo/server/internal/html.gen.ts +1 -1
@@ -1,2 +1,2 @@
1
1
  // Generated — do not edit.
2
- export const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t){return t.endsWith(`.local`)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let y={height:440,width:360};function b(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function x(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function S(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let ee,C,w,te=[];function ne(){return typeof window>`u`?ie():b({name:`iframe`},e=>{let{host:t}=e;if(ee&&ee.host===t){let t=C;return C=e.store,t&&t!==C&&!te.includes(t)&&te.push(t),w?.destroy(),w=re()(e),ee.instance.syncTheme(e.theme),ee.instance}ee?.instance.destroy(),C=e.store,w=re()(e);let n=!1,r=ue(),i=new URL(t);i.searchParams.set(`chainId`,String(C.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),v(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(C,te,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ce(e)}),e.on(`sync`,({valid:e})=>{e===!1&&C?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),ne(),n=!1,l=!0;let e=C?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&w?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,y=()=>se(C),b=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});b.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,ne=()=>{x&&(x=!1,a.removeEventListener(`cancel`,y),a.removeEventListener(`click`,y),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{x||(x=!0,a.addEventListener(`cancel`,y),a.addEventListener(`click`,y),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},de=!1,fe=()=>{de||(de=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(de){de=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},me={close(){w.close(),n=!1,pe(),ne()},destroy(){ee?.instance===me&&(ee=void 0),w?.close(),n=!1,ne(),pe(),w?.destroy(),f.destroy(),a.remove(),b.disconnect(),C=void 0,w=void 0,te=[]},open(){n||(n=!0,fe(),ie())},async syncRequests(e){if(l){w.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(S()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){w.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),w.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:le(C),chainId:C.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return ee={host:t,instance:me},me})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=y}=e;return b({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=ue(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),v(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:le(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ie(){return b({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){if(!C)return;let{accounts:t}=C.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function le(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ue(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var de=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function fe(e,t){return e.exec(t)?.groups}let pe=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,me=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,he=/^\\(.+?\\).*?$/,ge=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function _e(e){let t=e.type;if(ge.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=_e(i),r<n-1&&(t+=`, `)}let r=fe(ge,e.type);return t+=`)${r?.array||``}`,_e({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function ve(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=_e(i),r!==n-1&&(t+=`, `)}return t}function ye(e){return e.type===`function`?`function ${e.name}(${ve(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ve(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ve(e.inputs)})`:e.type===`error`?`error ${e.name}(${ve(e.inputs)})`:e.type===`constructor`?`constructor(${ve(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let be=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function xe(e){return be.test(e)}function Se(e){return fe(be,e)}let Ce=new Set([`memory`,`indexed`,`storage`,`calldata`]),we=new Set([`calldata`,`memory`,`storage`]);var Te=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Ee=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},De=class extends de{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Oe=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},ke=class extends de{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Ae=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},je=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Me=class extends de{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Ne=class extends de{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Pe=class extends de{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Fe=class extends de{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},Ie=class extends de{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Le(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Re=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),ze=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Be=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ve=/^u?int$/;function He(e,t){let n=Le(e,t?.type,t?.structs);if(Re.has(n))return Re.get(n);let r=he.test(e),i=fe(r?Be:ze,e);if(!i)throw new Oe({param:e});if(i.name&&Ke(i.name))throw new ke({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=Ue(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(He(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ve.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!We(c))throw new Ee({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Ae({param:e,type:t?.type,modifier:i.modifier});if(we.has(i.modifier)&&!qe(c,!!i.array))throw new je({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Re.set(n,u),u}function Ue(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?Ue(o,[...t,n.trim()]):Ue(o,t,`${n}${i}`,r);case`(`:return Ue(o,t,`${n}${i}`,r+1);case`)`:return Ue(o,t,`${n}${i}`,r-1);default:return Ue(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Ie({current:n,depth:r});return t.push(n.trim()),t}function We(e){return e===`address`||e===`bool`||e===`function`||e===`string`||pe.test(e)||me.test(e)}let Ge=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Ke(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||pe.test(e)||me.test(e)||Ge.test(e)}function qe(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Je(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!xe(n))continue;let i=Se(n);if(!i)throw new Ne({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=He(t,{type:`struct`});o.push(n)}if(!o.length)throw new Pe({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Xe(a,t)}return r}let Ye=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Xe(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(he.test(i.type))r.push(i);else{let e=fe(Ye,i.type);if(!e?.type)throw new Me({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fe({type:o});r.push({...i,type:`tuple${a??``}`,components:Xe(t[o],t,new Set([...n,o]))})}else if(We(o))r.push(i);else throw new Te({type:o})}}return r}function Ze(e){let t=[];if(typeof e==`string`){let n=Ue(e),r=n.length;for(let e=0;e<r;e++)t.push(He(n[e],{modifiers:Ce}))}else{let n=Je(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(xe(r))continue;let a=Ue(r),o=a.length;for(let e=0;e<o;e++)t.push(He(a[e],{modifiers:Ce,structs:n}))}}if(t.length===0)throw new De({params:e});return t}var Qe,$e=o((()=>{Qe=`0.1.1`}));function et(){return Qe}var tt=o((()=>{$e()}));function nt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?nt(e.cause,t):t?null:e}var T,rt=o((()=>{tt(),T=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return nt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${et()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),it,at=o((()=>{it=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function ot(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function st(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function ct(e,...t){if(!ot(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function lt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);st(e.outputLen),st(e.blockLen)}function ut(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function dt(e,t){ct(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ft(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function pt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function mt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ht(e,t){return e<<32-t|e>>>t}function gt(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function _t(e){for(let t=0;t<e.length;t++)e[t]=gt(e[t]);return e}function vt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function yt(e){return typeof e==`string`&&(e=vt(e)),ct(e),e}function bt(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];ct(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function xt(e){let t=t=>e().update(yt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function St(e){let t=(t,n)=>e(n).update(yt(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ct(e=32){if(it&&typeof it.getRandomValues==`function`)return it.getRandomValues(new Uint8Array(e));if(it&&typeof it.randomBytes==`function`)return Uint8Array.from(it.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var wt,Tt,Et,Dt=o((()=>{at(),wt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Tt=wt?e=>e:_t,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Et=class{}})),Ot,kt,At=o((()=>{Dt(),Ot=class extends Et{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lt(e);let n=yt(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),pt(i)}update(e){return ut(this),this.iHash.update(e),this}digestInto(e){ut(this),ct(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kt=(e,t,n)=>new Ot(e,t).update(n).digest(),kt.create=(e,t)=>new Ot(e,t)}));function jt(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Mt(e,t,n){return e&t^~e&n}function Nt(e,t,n){return e&t^e&n^t&n}var Pt,Ft,It,Lt,Rt=o((()=>{Dt(),Pt=class extends Et{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=mt(this.buffer)}update(e){ut(this),e=yt(e),ct(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=mt(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ut(this),dt(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,pt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;jt(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=mt(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ft=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),It=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function zt(e,t=!1){return t?{h:Number(e&Ht),l:Number(e>>Ut&Ht)}:{h:Number(e>>Ut&Ht)|0,l:Number(e&Ht)|0}}function Bt(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=zt(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function Vt(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn=o((()=>{Ht=BigInt(2**32-1),Ut=BigInt(32),Wt=(e,t,n)=>e>>>n,Gt=(e,t,n)=>e<<32-n|t>>>n,Kt=(e,t,n)=>e>>>n|t<<32-n,qt=(e,t,n)=>e<<32-n|t>>>n,Jt=(e,t,n)=>e<<64-n|t>>>n-32,Yt=(e,t,n)=>e>>>n-32|t<<64-n,Xt=(e,t,n)=>e<<n|t>>>32-n,Zt=(e,t,n)=>t<<n|e>>>32-n,Qt=(e,t,n)=>t<<n-32|e>>>64-n,$t=(e,t,n)=>e<<n-32|t>>>64-n,en=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),tn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,nn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),rn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,an=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),on=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function cn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=xn(a,o,1)^n[r],c=Sn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=gn[n],a=xn(t,i,r),o=Sn(t,i,r),s=hn[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=yn[r],e[1]^=bn[r]}pt(n)}var ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn=o((()=>{sn(),Dt(),ln=BigInt(0),un=BigInt(1),dn=BigInt(2),fn=BigInt(7),pn=BigInt(256),mn=BigInt(113),hn=[],gn=[],_n=[];for(let e=0,t=un,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],hn.push(2*(5*r+n)),gn.push((e+1)*(e+2)/2%64);let i=ln;for(let e=0;e<7;e++)t=(t<<un^(t>>fn)*mn)%pn,t&dn&&(i^=un<<(un<<BigInt(e))-un);_n.push(i)}vn=Bt(_n,!0),yn=vn[0],bn=vn[1],xn=(e,t,n)=>n>32?Qt(e,t,n):Xt(e,t,n),Sn=(e,t,n)=>n>32?$t(e,t,n):Zt(e,t,n),Cn=class e extends Et{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,st(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ft(this.state)}clone(){return this._cloneInto()}keccak(){Tt(this.state32),cn(this.state32,this.rounds),Tt(this.state32),this.posOut=0,this.pos=0}update(e){ut(this),e=yt(e),ct(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ut(this,!1),ct(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return st(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dt(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,pt(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},wn=(e,t,n)=>xt(()=>new Cn(t,e,n)),wn(6,144,224/8),wn(6,136,256/8),wn(6,104,384/8),wn(6,72,512/8),wn(1,144,224/8),Tn=wn(1,136,256/8),wn(1,104,384/8),wn(1,72,512/8),En=(e,t,n)=>St((r={})=>new Cn(t,e,r.dkLen===void 0?n:r.dkLen,!0)),En(31,168,128/8),En(31,136,256/8)})),On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn=o((()=>{Rt(),sn(),Dt(),On=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kn=new Uint32Array(64),An=class extends Pt{constructor(e=32){super(64,e,8,!1),this.A=Ft[0]|0,this.B=Ft[1]|0,this.C=Ft[2]|0,this.D=Ft[3]|0,this.E=Ft[4]|0,this.F=Ft[5]|0,this.G=Ft[6]|0,this.H=Ft[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)kn[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=kn[e-15],n=kn[e-2],r=ht(t,7)^ht(t,18)^t>>>3;kn[e]=(ht(n,17)^ht(n,19)^n>>>10)+kn[e-7]+r+kn[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=ht(o,6)^ht(o,11)^ht(o,25),u=l+t+Mt(o,s,c)+On[e]+kn[e]|0,d=(ht(n,2)^ht(n,13)^ht(n,22))+Nt(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){pt(kn)}destroy(){this.set(0,0,0,0,0,0,0,0),pt(this.buffer)}},jn=Bt(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Mn=jn[0],Nn=jn[1],Pn=new Uint32Array(80),Fn=new Uint32Array(80),In=class extends Pt{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Pn[n]=e.getUint32(t),Fn[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Pn[e-15]|0,n=Fn[e-15]|0,r=Kt(t,n,1)^Kt(t,n,8)^Wt(t,n,7),i=qt(t,n,1)^qt(t,n,8)^Gt(t,n,7),a=Pn[e-2]|0,o=Fn[e-2]|0,s=Kt(a,o,19)^Jt(a,o,61)^Wt(a,o,6),c=qt(a,o,19)^Yt(a,o,61)^Gt(a,o,6),l=nn(i,c,Fn[e-7],Fn[e-16]);Pn[e]=rn(l,r,s,Pn[e-7],Pn[e-16])|0,Fn[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=Kt(u,d,14)^Kt(u,d,18)^Jt(u,d,41),v=qt(u,d,14)^qt(u,d,18)^Yt(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=an(_,v,b,Nn[e],Fn[e]),S=on(x,g,t,y,Mn[e],Pn[e]),ee=x|0,C=Kt(n,r,28)^Jt(n,r,34)^Jt(n,r,39),w=qt(n,r,28)^Yt(n,r,34)^Yt(n,r,39),te=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=Vt(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let re=en(ee,w,ne);n=tn(re,S,C,te),r=re|0}({h:n,l:r}=Vt(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=Vt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=Vt(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=Vt(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=Vt(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=Vt(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=Vt(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=Vt(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){pt(Pn,Fn)}destroy(){pt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ln=class extends In{constructor(){super(48),this.Ah=It[0]|0,this.Al=It[1]|0,this.Bh=It[2]|0,this.Bl=It[3]|0,this.Ch=It[4]|0,this.Cl=It[5]|0,this.Dh=It[6]|0,this.Dl=It[7]|0,this.Eh=It[8]|0,this.El=It[9]|0,this.Fh=It[10]|0,this.Fl=It[11]|0,this.Gh=It[12]|0,this.Gl=It[13]|0,this.Hh=It[14]|0,this.Hl=It[15]|0}},Rn=xt(()=>new An),zn=xt(()=>new In),Bn=xt(()=>new Ln)}));Vn();let Hn=Rn;function Un(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Wn(e){if(!Un(e))throw Error(`Uint8Array expected`)}function Gn(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Kn(e){let t=e.toString(16);return t.length&1?`0`+t:t}function qn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?dr:BigInt(`0x`+e)}function Jn(e){if(Wn(e),pr)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=mr[e[n]];return t}function Yn(e){if(e>=hr._0&&e<=hr._9)return e-hr._0;if(e>=hr.A&&e<=hr.F)return e-(hr.A-10);if(e>=hr.a&&e<=hr.f)return e-(hr.a-10)}function Xn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(pr)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Yn(e.charCodeAt(i)),a=Yn(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Zn(e){return qn(Jn(e))}function Qn(e){return Wn(e),qn(Jn(Uint8Array.from(e).reverse()))}function $n(e,t){return Xn(e.toString(16).padStart(t*2,`0`))}function er(e,t){return $n(e,t).reverse()}function tr(e,t,n){let r;if(typeof t==`string`)try{r=Xn(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Un(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function nr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Wn(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function rr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function ir(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ar(e,t,n){return gr(e)&&gr(t)&&gr(n)&&t<=e&&e<n}function or(e,t,n,r){if(!ar(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function sr(e){let t;for(t=0;e>dr;e>>=fr,t+=1);return t}function cr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=vr(e),i=vr(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=vr(0))=>{i=s(yr([0]),e),r=s(),e.length!==0&&(i=s(yr([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return nr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function lr(e,t,n={}){let r=(t,n,r)=>{let i=br[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function ur(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr=o((()=>{dr=BigInt(0),fr=BigInt(1),pr=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,mr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hr={_0:48,_9:57,A:65,F:70,a:97,f:102},gr=e=>typeof e==`bigint`&&dr<=e,_r=e=>(fr<<BigInt(e))-fr,vr=e=>new Uint8Array(e),yr=e=>Uint8Array.from(e),br={bigint:e=>typeof e==`bigint`,function:e=>typeof e==`function`,boolean:e=>typeof e==`boolean`,string:e=>typeof e==`string`,stringOrUint8Array:e=>typeof e==`string`||Un(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e==`function`&&Number.isSafeInteger(e.outputLen)}}));function Sr(e,t){if(vi(e)>t)throw new ji({givenSize:vi(e),maxSize:t})}function Cr(e,t){if(typeof t==`number`&&t>0&&t>vi(e)-1)throw new Mi({offset:t,position:`start`,size:vi(e)})}function wr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&vi(e)!==n-t)throw new Mi({offset:n,position:`end`,size:vi(e)})}function Tr(e){if(e>=Or.zero&&e<=Or.nine)return e-Or.zero;if(e>=Or.A&&e<=Or.F)return e-(Or.A-10);if(e>=Or.a&&e<=Or.f)return e-(Or.a-10)}function Er(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Ni({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function Dr(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var Or,kr=o((()=>{Pi(),Or={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ar(e,t){if(Jr(e)>t)throw new oi({givenSize:Jr(e),maxSize:t})}function jr(e,t){if(typeof t==`number`&&t>0&&t>Jr(e)-1)throw new si({offset:t,position:`start`,size:Jr(e)})}function Mr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Jr(e)!==n-t)throw new si({offset:n,position:`end`,size:Jr(e)})}function Nr(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new ci({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Pr(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var Fr=o((()=>{O()}));function Ir(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Lr:n,n)}var Lr,Rr=o((()=>{Lr=`#__bigint`}));function zr(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new ri(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new ii(e)}function Br(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function Vr(e){return e instanceof Uint8Array?Ur(e):Array.isArray(e)?Ur(new Uint8Array(e)):e}function Hr(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ar(n,t.size),Gr(n,t.size)):n}function Ur(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=ti[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ar(r,t.size),Kr(r,t.size)):r}function E(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ni({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Gr(s,r):s}function Wr(e,t={}){return Ur(ei.encode(e),t)}function Gr(e,t){return Nr(e,{dir:`left`,size:t})}function Kr(e,t){return Nr(e,{dir:`right`,size:t})}function qr(e){return Ur(_i(e))}function D(e,t,n,r={}){let{strict:i}=r;jr(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Mr(a,t,n),a}function Jr(e){return Math.ceil((e.length-2)/2)}function Yr(e){return Pr(e,{dir:`left`})}function Xr(e,t={}){let{signed:n}=t;t.size&&Ar(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Zr(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:Xr(e,t))}function Qr(e,t={}){let{size:n}=t,r=pi(e);return n&&(Sr(r,n),r=Ti(r)),new TextDecoder().decode(r)}function $r(e,t={}){let{strict:n=!1}=t;try{return zr(e,{strict:n}),!0}catch{return!1}}var ei,ti,ni,ri,ii,ai,oi,si,ci,O=o((()=>{Pi(),rt(),kr(),Fr(),Rr(),ei=new TextEncoder,ti=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ni=class extends T{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},ri=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Ir(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},ii=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},ai=class extends T{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},oi=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},si=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},ci=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function li(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new Ai(e)}function ui(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function di(e){return e instanceof Uint8Array?e:typeof e==`string`?pi(e):fi(e)}function fi(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function pi(e,t={}){let{size:n}=t,r=e;n&&(Ar(e,n),r=Kr(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=Tr(i.charCodeAt(t++)),r=Tr(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new T(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function mi(e,t={}){let{size:n}=t,r=Oi.encode(e);return typeof n==`number`?(Sr(r,n),gi(r,n)):r}function hi(e,t){return rr(e,t)}function gi(e,t){return Er(e,{dir:`right`,size:t})}function _i(e){return crypto.getRandomValues(new Uint8Array(e))}function vi(e){return e.length}function yi(e,t,n,r={}){let{strict:i}=r;Cr(e,t);let a=e.slice(t,n);return i&&wr(a,t,n),a}function bi(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Xr(Ur(e,t),t)}function xi(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(Sr(r,n),r=wi(r)),r.length>1||r[0]>1)throw new ki(r);return!!r[0]}function Si(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Zr(Ur(e,t),t)}function Ci(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(Sr(r,n),r=Ti(r)),Di.decode(r)}function wi(e){return Dr(e,{dir:`left`})}function Ti(e){return Dr(e,{dir:`right`})}function Ei(e){try{return li(e),!0}catch{return!1}}var Di,Oi,ki,Ai,ji,Mi,Ni,Pi=o((()=>{xr(),rt(),O(),kr(),Fr(),Rr(),Di=new TextDecoder,Oi=new TextEncoder,ki=class extends T{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},Ai=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Ir(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},ji=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Mi=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Ni=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));Dn(),Pi(),O();function Fi(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(di(e));return n===`Bytes`?r:Ur(r)}function Ii(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(di(e));return n===`Bytes`?r:Ur(r)}function Li(e){return $r(e)&&Jr(e)===32}let Ri={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;Pi(),rt(),O(),Rr();function zi(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new Ki({prefix:r,cause:new Ji});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Ki({prefix:r,cause:new qi});return}throw new Gi({publicKey:e})}function Bi(e){let t=(()=>{if($r(e))return Hi(e);if(Ei(e))return Vi(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return zi(t),t}function Vi(e){return Hi(Ur(e))}function Hi(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Yi({publicKey:e});return e.length===130?{prefix:4,x:BigInt(D(e,0,32)),y:BigInt(D(e,32,64))}:e.length===132?{prefix:Number(D(e,0,1)),x:BigInt(D(e,1,33)),y:BigInt(D(e,33,65))}:{prefix:Number(D(e,0,1)),x:BigInt(D(e,1,33))}}function Ui(e,t={}){return pi(Wi(e,t))}function Wi(e,t={}){zi(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return Br(a?E(n,{size:1}):`0x`,E(r,{size:32}),typeof i==`bigint`?E(i,{size:32}):`0x`)}var Gi=class extends T{constructor({publicKey:e}){super(`Value \\`${Ir(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},Ki=class extends T{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},qi=class extends T{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},Ji=class extends T{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Yi=class extends T{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Jr(Vr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Pi(),rt();let Xi=/^0x[a-fA-F0-9]{40}$/;function Zi(e,t={}){let{strict:n=!0}=t;if(!Xi.test(e))throw new ra({address:e,cause:new ia});if(n){if(e.toLowerCase()===e)return;if(Qi(e)!==e)throw new ra({address:e,cause:new aa})}}function Qi(e){if(Ri.has(e))return Ri.get(e);Zi(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Fi(mi(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Ri.set(e,i),i}function $i(e,t={}){let{checksum:n=!1}=t;return Zi(e),n?Qi(e):e}function ea(e,t={}){return $i(`0x${Fi(`0x${Wi(e).slice(4)}`).substring(26)}`,t)}function ta(e,t){return Zi(e,{strict:!1}),Zi(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function na(e,t={}){let{strict:n=!0}=t??{};try{return Zi(e,{strict:n}),!0}catch{return!1}}var ra=class extends T{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},ia=class extends T{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},aa=class extends T{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};rt();function oa(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new T(`Unable to normalize signature.`);return i}function sa(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return na(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>sa(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>sa(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ca(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ca(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&na(n[r],{strict:!1}))return o}}rt(),O();function la(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=$r(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?ua(e)===D(t,0,4):e.type===`event`?fa(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ma({name:t});if(o.length===1)return{...o[0],...i?{hash:fa(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:fa(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?sa(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ca(e.inputs,s.inputs,r);if(t)throw new pa({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new ma({name:t});return{...c,...i?{hash:fa(c)}:{}}}function ua(...e){return D(fa((()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})()),0,4)}function da(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})();return oa(typeof t==`string`?t:ye(t))}function fa(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Fi(Wr(da(t)))}var pa=class extends T{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${oa(ye(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${oa(ye(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},ma=class extends T{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let ha=/^(.*)\\[([0-9]*)\\]$/,ga=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,_a=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let va=2n**256n-1n;Pi(),rt(),O();function ya(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=La(t.type);if(a){let[n,o]=a;return xa(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return Ta(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return ba(e,{checksum:r});if(t.type===`bool`)return Sa(e);if(t.type.startsWith(`bytes`))return Ca(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return wa(e,t);if(t.type===`string`)return Ea(e,{staticPosition:i});throw new eo(t.type)}function ba(e,t={}){let{checksum:n=!1}=t;return[(e=>n?Qi(e):e)(Ur(yi(e.readBytes(32),-20))),32]}function xa(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Si(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Si(e.readBytes(32)),s=Ra(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=ya(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ra(t)){let n=a+Si(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=ya(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=ya(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function Sa(e){return[xi(e.readBytes(32),{size:32}),32]}function Ca(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Si(e.readBytes(32));e.setPosition(n+t);let r=Si(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Ur(i),32]}return[Ur(e.readBytes(Number.parseInt(i,10),32)),32]}function wa(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?bi(i,{signed:n}):Si(i,{signed:n}),32]}function Ta(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(Ra(t)){let n=i+Si(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=ya(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=ya(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function Ea(e,{staticPosition:t}){let n=t+Si(e.readBytes(32));e.setPosition(n);let r=Si(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Ci(wi(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Da({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(Oa({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function Oa({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=La(r.type);if(i){let[t,a]=i;return ja(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Ia(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return Aa(n,{checksum:e});if(r.type===`bool`)return Na(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=_a.exec(r.type)??[];return Pa(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return Ma(n,{type:r.type});if(r.type===`string`)return Fa(n);throw new eo(r.type)}function ka(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Jr(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(E(t+i,{size:32})),r.push(s),i+=Jr(s)):n.push(s)}return Br(...n,...r)}function Aa(e,t){let{checksum:n=!1}=t;return Zi(e,{strict:n}),{dynamic:!1,encoded:Gr(e.toLowerCase())}}function ja(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new $a(e);if(!a&&e.length!==r)throw new Xa({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=Oa({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ka(s);if(a){let t=E(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?Br(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Br(...s.map(({encoded:e})=>e))}}function Ma(e,{type:t}){let[,n]=t.split(`bytes`),r=Jr(e);if(!n){let t=e;return r%32!=0&&(t=Kr(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:Br(Gr(E(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Za({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Kr(e)}}function Na(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Gr(Hr(e))}}function Pa(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new ni({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:E(e,{size:32,signed:t})}}function Fa(e){let t=Wr(e),n=Math.ceil(Jr(t)/32),r=[];for(let e=0;e<n;e++)r.push(Kr(D(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:Br(Kr(E(Jr(t),{size:32})),...r)}}function Ia(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=Oa({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ka(a):Br(...a.map(({encoded:e})=>e))}}function La(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ra(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ra);let n=La(e.type);return!!(n&&Ra({...e,type:n[1]}))}rt();let za={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Ua({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Ha({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Va({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Va({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Ba(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(za);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Va=class extends T{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Ha=class extends T{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Ua=class extends T{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Pi(),rt(),O();function Wa(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?pi(t):t,o=Ba(a);if(vi(a)===0&&e.length>0)throw new Ya;if(vi(a)&&vi(a)<32)throw new Ja({data:typeof t==`string`?t:Ur(t),parameters:e,size:vi(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=ya(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Ga(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Qa({expectedLength:e.length,givenLength:t.length});let i=ka(Da({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ka(e,t){if(e.length!==t.length)throw new Qa({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(Ka.encode(i,a))}return Br(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return Zi(e),Gr(e.toLowerCase(),r?32:0)}if(e===`string`)return Wr(n);if(e===`bytes`)return n;if(e===`bool`)return Gr(Hr(n),r?32:1);let i=e.match(_a);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return E(n,{size:r?32:o,signed:t===`int`})}let a=e.match(ga);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Za({expectedSize:Number.parseInt(t,10),value:n});return Kr(n,r?32:0)}let o=e.match(ha);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:Br(...i)}throw new eo(e)}e.encode=t})(Ka||={});function qa(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Ze(e):e}var Ja=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${ve(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Ya=class extends T{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Xa=class extends T{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},Za=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Jr(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Qa=class extends T{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},$a=class extends T{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},eo=class extends T{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function to(e){return ua(e)}rt(),O();function no(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&Zi(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Li(e)?e:Yr(e))})}return t}function ro(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Jr(r[e])!==32)throw new io({storageKey:r[e]});n&&Zi(n,{strict:!1}),t.push([n,r])}return t}var io=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Jr(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};Pi(),rt(),O();function ao(e){return oo(e,`Hex`)}function oo(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return so(Ba((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new ai(e);return pi(e)}return e})(),{recursiveReadLimit:1/0}),n)}function so(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?Ur(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=co(e,n,128),i=e.readBytes(r);return t===`Hex`?Ur(i):i}return lo(e,co(e,n,192),t)}function co(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new T(`Invalid RLP prefix`)}function lo(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(so(e,n));return i}function uo(e,t){let{as:n}=t,r=po(e),i=Ba(new Uint8Array(r.length));return r.encode(i),n===`Hex`?Ur(i.bytes):i.bytes}function fo(e,t={}){let{as:n=`Hex`}=t;return uo(e,{as:n})}function po(e){return Array.isArray(e)?mo(e.map(e=>po(e))):ho(e)}function mo(e){let t=e.reduce((e,t)=>e+t.length,0),n=go(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function ho(e){let t=typeof e==`string`?pi(e):e,n=go(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function go(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new T(`Length is too large.`)}function _o(e,t){let n=e%t;return n>=No?n:t+n}function vo(e,t,n){let r=e;for(;t-- >No;)r*=r,r%=n;return r}function yo(e,t){if(e===No)throw Error(`invert: expected non-zero number`);if(t<=No)throw Error(`invert: expected positive modulus, got `+t);let n=_o(e,t),r=t,i=No,a=Po,o=Po,s=No;for(;n!==No;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==Po)throw Error(`invert: does not exist`);return _o(i,t)}function bo(e,t){let n=(e.ORDER+Po)/Lo,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function xo(e,t){let n=(e.ORDER-Ro)/zo,r=e.mul(t,Fo),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Fo),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function So(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Po,n=0;for(;t%Fo===No;)t/=Fo,n++;let r=Fo,i=ko(e);for(;Do(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return bo;let a=i.pow(r,t),o=(t+Po)/Fo;return function(e,r){if(e.is0(r))return r;if(Do(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=Po<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function Co(e){return e%Lo===Io?bo:e%zo===Ro?xo:So(e)}function wo(e){return lr(e,Bo.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function To(e,t,n){if(n<No)throw Error(`invalid exponent, negatives unsupported`);if(n===No)return e.ONE;if(n===Po)return t;let r=e.ONE,i=t;for(;n>No;)n&Po&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Po;return r}function Eo(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function Do(e,t){let n=(e.ORDER-Po)/Fo,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function Oo(e,t){t!==void 0&&st(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function ko(e,t,n=!1,r={}){if(e<=No)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Oo(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:_r(i),ZERO:No,ONE:Po,create:t=>_o(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return No<=t&&t<e},is0:e=>e===No,isOdd:e=>(e&Po)===Po,neg:t=>_o(-t,e),eql:(e,t)=>e===t,sqr:t=>_o(t*t,e),add:(t,n)=>_o(t+n,e),sub:(t,n)=>_o(t-n,e),mul:(t,n)=>_o(t*n,e),pow:(e,t)=>To(s,e,t),div:(t,n)=>_o(t*yo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>yo(t,e),sqrt:r.sqrt||(t=>(o||=Co(e),o(s,t))),toBytes:e=>n?er(e,a):$n(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Qn(e):Zn(e)},invertBatch:e=>Eo(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Ao(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function jo(e){let t=Ao(e);return t+Math.ceil(t/2)}function Mo(e,t,n=!1){let r=e.length,i=Ao(t),a=jo(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=_o(n?Qn(e):Zn(e),t-Po)+Po;return n?er(o,i):$n(o,i)}var No,Po,Fo,Io,Lo,Ro,zo,Bo,Vo=o((()=>{Dt(),xr(),No=BigInt(0),Po=BigInt(1),Fo=BigInt(2),Io=BigInt(3),Lo=BigInt(4),Ro=BigInt(5),zo=BigInt(8),Bo=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Ho(e,t){let n=t.negate();return e?n:t}function Uo(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Wo(e,t){Uo(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:_r(e),maxNumber:i,shiftBy:BigInt(e)}}function Go(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=$o);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function Ko(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function qo(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function Jo(e){return ts.get(e)||1}function Yo(e,t){return{constTimeNegate:Ho,hasPrecomputes(e){return Jo(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>Qo;)n&$o&&(r=r.add(i)),i=i.double(),n>>=$o;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Wo(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Wo(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Go(i,e,s);i=t,c?o=o.add(Ho(u,r[d])):a=a.add(Ho(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Wo(n,t);for(let e=0;e<o.windows&&i!==Qo;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=Go(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=es.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&es.set(t,n(r))),r},wNAFCached(e,t,n){let r=Jo(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Jo(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Uo(n,t),ts.set(e,n),es.delete(e)}}}function Xo(e,t,n,r){Ko(n,e),qo(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=sr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=_r(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function Zo(e){return wo(e.Fp),lr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Oo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Qo,$o,es,ts,ns=o((()=>{Vo(),xr(),Qo=BigInt(0),$o=BigInt(1),es=new WeakMap,ts=new WeakMap}));function rs(e){e.lowS!==void 0&&Gn(`lowS`,e.lowS),e.prehash!==void 0&&Gn(`prehash`,e.prehash)}function is(e){let t=Zo(e);lr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function as(e,t){return Jn($n(e,t))}function os(e){let t=is(e),{Fp:n}=t,r=ko(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return nr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,gs),_s),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return ar(e,ms,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Un(e)&&(e=Jn(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Zn(tr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=_o(o,a)),or(`private key`,o,ms,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=ur((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=ur(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Eo(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(tr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Xo(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,gs),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,gs),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;or(`scalar`,e,ps,i);let a=h.ZERO;if(e===ps)return a;if(this.is0()||e===ms)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>ps||l>ps;)s&ms&&(u=u.add(f)),l&ms&&(d=d.add(f)),f=f.double(),s>>=ms,l>>=ms;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;or(`scalar`,e,ms,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===ps||t===ms||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===ms)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===ms?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Gn(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Gn(`isCompressed`,e),Jn(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=Yo(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function ss(e){let t=Zo(e);return lr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function cs(e){let t=ss(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return _o(e,r)}function l(e){return yo(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=os({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=nr;return Gn(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Zn(i);if(!ar(e,ms,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&ms)===ms;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>ms}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Zn(e.slice(t,n));class _{constructor(e,t,n){or(`r`,e,ms,r),or(`s`,t,ms,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=tr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=fs.toSig(tr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(tr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+as(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return fs.hexFromSig(this)}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){let e=i;return as(this.r,e)+as(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=jo(t.n);return Mo(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=tr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Zn(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=_r(a);function w(e){return or(`num < 2^`+a,e,ps,C),$n(e,i)}function te(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=tr(`msgHash`,e),rs(i),f&&(e=tr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[w(y),w(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(tr(`extraEntropy`,e))}let x=nr(...b),C=v;function te(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===ps)return;let a=c(n*c(C+i*y));if(a===ps)return;let o=(r.x===i?0:2)|Number(r.y&ms),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:te}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=te(e,n,r),o=t;return cr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=tr(`msgHash`,n),r=tr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(rs(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Un(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof fs.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),C=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return C?c(C.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function ls(e,t){let n=e.ORDER,r=ps;for(let e=n-ms;e%hs===ps;e/=hs)r+=ms;let i=r,a=hs<<i-ms-ms,o=a*hs,s=(n-ms)/o,c=(s-ms)/hs,l=o-ms,u=a,d=e.pow(t,s),f=e.pow(t,(s+ms)/hs),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>ms;t--){let n=t-hs;n=hs<<n-ms;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%_s===gs){let n=(e.ORDER-gs)/_s,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function us(e,t){if(wo(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=ls(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=Eo(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var ds,fs,ps,ms,hs,gs,_s,vs=o((()=>{ns(),Vo(),xr(),ds=class extends Error{constructor(e=``){super(e)}},fs={Err:ds,_tlv:{encode:(e,t)=>{let{Err:n}=fs;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Kn(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Kn(i.length/2|128):``;return Kn(e)+a+i+t},decode(e,t){let{Err:n}=fs,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=fs;if(e<ps)throw new t(`integer: negative integers are not allowed`);let n=Kn(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=fs;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Zn(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=fs,i=tr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=fs,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},ps=BigInt(0),ms=BigInt(1),hs=BigInt(2),gs=BigInt(3),_s=BigInt(4)}));function ys(e){return{hash:e,hmac:(t,...n)=>kt(e,t,bt(...n)),randomBytes:Ct}}function bs(e,t){let n=t=>cs({...e,...ys(t)});return{...n(t),create:n}}var xs=o((()=>{At(),Dt(),vs()}));function Ss(e,t){if(ws(e),ws(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function Cs(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function ws(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Ts(e,t,n,r){Wn(e),Wn(t),ws(n),t.length>255&&(t=r(nr(ir(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=nr(t,Ss(t.length,1)),c=Ss(0,a),l=Ss(n,2),u=Array(o),d=r(nr(c,e,l,Ss(0,1),s));u[0]=r(nr(d,Ss(1,1),s));for(let e=1;e<=o;e++)u[e]=r(nr(Cs(d,u[e-1]),Ss(e+1,1),s));return nr(...u).slice(0,n)}function Es(e,t,n,r,i){if(Wn(e),Wn(t),ws(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(ir(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(Ss(n,2)).update(t).update(Ss(t.length,1)).digest()}function Ds(e,t,n){lr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Wn(e),ws(t);let l=typeof c==`string`?ir(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Ts(e,l,f,o);else if(s===`xof`)p=Es(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=_o(As(p.subarray(i,i+d)),r)}m[e]=t}return m}function Os(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=Eo(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function ks(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=Ds(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(Ds(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var As,js=o((()=>{Vo(),xr(),As=Zn})),Ms=c({encodeToCurve:()=>cc,hashToCurve:()=>sc,schnorr:()=>rc,secp256k1:()=>Js,secp256k1_hasher:()=>oc});function Ns(e){let t=Vs,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=vo(vo(vo(u,n,t)*u%t,n,t)*u%t,Gs,t)*l%t,f=vo(d,i,t)*d%t,p=vo(f,a,t)*f%t,m=vo(p,s,t)*p%t,h=vo(vo(vo(vo(vo(vo(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Gs,t);if(!qs.eql(qs.sqr(h),e))throw Error(`Cannot find square root`);return h}function Ps(e,...t){let n=Ys[e];if(n===void 0){let t=Rn(Uint8Array.from(e,e=>e.charCodeAt(0)));n=nr(t,t),Ys[e]=n}return Rn(nr(n,...t))}function Fs(e){let t=Js.utils.normPrivateKeyToScalar(e),n=ec.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:$s(-t),bytes:Xs(n)}}function Is(e){or(`x`,e,Ws,Vs);let t=Ns(Qs(Qs(e*e)*e+BigInt(7)));t%Gs!==Us&&(t=Qs(-t));let n=new ec(e,t,Ws);return n.assertValidity(),n}function Ls(...e){return $s(nc(Ps(`BIP0340/challenge`,...e)))}function Rs(e){return Fs(e).bytes}function zs(e,t,n=Ct(32)){let r=tr(`message`,e),{bytes:i,scalar:a}=Fs(t),o=$s(nc(Ps(`BIP0340/nonce`,Zs(a^nc(Ps(`BIP0340/aux`,tr(`auxRand`,n,32)))),i,r)));if(o===Us)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Fs(o),l=Ls(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Zs($s(c+l*a)),32),!Bs(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Bs(e,t,n){let r=tr(`signature`,e,64),i=tr(`message`,t),a=tr(`publicKey`,n,32);try{let e=Is(nc(a)),t=nc(r.subarray(0,32));if(!ar(t,Ws,Vs))return!1;let n=nc(r.subarray(32,64));if(!ar(n,Ws,Hs))return!1;let o=tc(e,n,$s(-Ls(Zs(t),Xs(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Vs,Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs,Zs,Qs,$s,ec,tc,nc,rc,ic,ac,oc,sc,cc,lc=o((()=>{Vn(),Dt(),xs(),js(),Vo(),xr(),vs(),Vs=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Hs=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Us=BigInt(0),Ws=BigInt(1),Gs=BigInt(2),Ks=(e,t)=>(e+t/Gs)/t,qs=ko(Vs,void 0,void 0,{sqrt:Ns}),Js=bs({a:Us,b:BigInt(7),Fp:qs,n:Hs,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Hs,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Ws*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=Ks(a*e,t),c=Ks(-r*e,t),l=_o(e-s*n-c*i,t),u=_o(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Rn),Ys={},Xs=e=>e.toRawBytes(!0).slice(1),Zs=e=>$n(e,32),Qs=e=>_o(e,Vs),$s=e=>_o(e,Hs),ec=Js.ProjectivePoint,tc=(e,t,n)=>ec.BASE.multiplyAndAddUnsafe(e,t,n),nc=Zn,rc={getPublicKey:Rs,sign:zs,verify:Bs,utils:{randomPrivateKey:Js.utils.randomPrivateKey,lift_x:Is,pointToBytes:Xs,numberToBytesBE:$n,bytesToNumberBE:Zn,taggedHash:Ps,mod:_o}},ic=Os(qs,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),ac=us(qs,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:qs.create(BigInt(`-11`))}),oc=ks(Js.ProjectivePoint,e=>{let{x:t,y:n}=ac(qs.create(e[0]));return ic(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:qs.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),sc=oc.hashToCurve,cc=oc.encodeToCurve}));rt(),O(),Rr();function uc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new wc({signature:e});if(e.r<0n||e.r>va)throw new Tc({value:e.r});if(e.s<0n||e.s>va)throw new Ec({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Dc({value:e.yParity})}function dc(e){return fc(Ur(e))}function fc(e){if(e.length!==130&&e.length!==132)throw new Cc({signature:e});let t=BigInt(D(e,0,32)),n=BigInt(D(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return xc(t)}catch{throw new Dc({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function pc(e){if(e.r!==void 0&&e.s!==void 0)return mc(e)}function mc(e){let t=typeof e==`string`?fc(e):e instanceof Uint8Array?dc(e):typeof e.r==`string`?gc(e):e.v?hc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return uc(t),t}function hc(e){return{r:e.r,s:e.s,yParity:xc(e.v)}}function gc(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=xc(t)),typeof n!=`number`)throw new Dc({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function _c(e){let[t,n,r]=e;return mc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function vc(e){uc(e);let t=e.r,n=e.s;return Br(E(t,{size:32}),E(n,{size:32}),typeof e.yParity==`number`?E(Sc(e.yParity),{size:1}):`0x`)}function yc(e){let{r:t,s:n,yParity:r}=e;return{r:E(t,{size:32}),s:E(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function bc(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Yr(E(t)),n===0n?`0x`:Yr(E(n))]}function xc(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Oc({value:e})}function Sc(e){if(e===0)return 27;if(e===1)return 28;throw new Dc({value:e})}var Cc=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Jr(Vr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},wc=class extends T{constructor({signature:e}){super(`Signature \\`${Ir(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Tc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Ec=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Dc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},Oc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};O();function kc(e,t={}){return typeof e.chainId==`string`?Ac(e):{...e,...t.signature}}function Ac(e){let{address:t,chainId:n,nonce:r}=e,i=pc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function jc(e){return e.map(Ac)}function Mc(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:E(n),nonce:E(r),...yc(i)}}function Nc(e){return e.map(Mc)}Pi();let Pc=new TextEncoder,Fc=new TextDecoder,Ic=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Lc={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function Rc(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=Ic[r>>18],i[t+1]=Ic[r>>12&63],i[t+2]=Ic[r>>6&63],i[t+3]=Ic[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Fc.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function zc(e,t={}){return Rc(pi(e),t)}function Bc(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Pc.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Lc[r[e]]<<18)+(Lc[r[e+1]]<<12)+(Lc[r[e+2]]<<6)+Lc[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}let Vc={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Hc={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Uc(e,t={}){if(!e)return null;let n=pc(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=jc(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Hc[e.type]??e.type),n&&(r.v=Sc(n.yParity)),r}function Wc(e){return{address:e.address,amount:E(e.amount),index:E(e.index),validatorIndex:E(e.validatorIndex)}}var Gc=o((()=>{O()}));function Kc(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:E(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:E(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:E(e.gasLimit)},...typeof e.number==`bigint`&&{number:E(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:E(e.prevRandao)},...typeof e.time==`bigint`&&{time:E(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Wc)}}}var qc=o((()=>{O(),Gc()}));Pi(),rt(),O();function Jc(e,t={}){let{as:n=`Hex`}=t,r=cl(e),i=Ba(new Uint8Array(r.length));return r.encode(i),n===`Hex`?Ur(i.bytes):i.bytes}var Yc=class extends T{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},Xc=class extends T{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},Zc=class extends T{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},Qc=class extends T{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},$c=class extends T{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},el=class extends T{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},tl=class extends T{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},nl=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},rl=class extends T{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},il=class extends T{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},al=class extends T{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},ol=class extends T{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},sl=class extends T{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function cl(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return cl.number(e);if(typeof e==`bigint`)throw new tl;if(typeof e==`string`)return cl.string(e);if(Array.isArray(e))return cl.array(e);if(e instanceof Uint8Array)return cl.byteString(e);if(e instanceof ArrayBuffer)return cl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return cl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return cl.map(e);if(typeof e==`object`)return cl.object(e);throw new nl({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new rl({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new rl({number:e.toString(10)})}e.number=t;function n(e){let t=mi(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new il({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new al({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new sl({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new ol({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new ol({size:i})}e.map=o})(cl||={});function ll(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return ll.readUnsignedInteger(e,r);case 1:return ll.readNegativeInteger(e,r);case 2:return ll.readByteString(e,r);case 3:return ll.readTextString(e,r);case 4:return ll.readArray(e,r);case 5:return ll.readMap(e,r);case 6:throw new Qc({tag:r});case 7:return ll.readSimpleOrFloat(e,r);default:throw new Yc({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new Zc:new Xc({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new $c({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new $c({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Ci(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new el({value:t});return}throw new Xc({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(ll||={}),rt();function ul(e){let t=Ui(e),n=t.slice(1,33),r=t.slice(33,65);return Jc(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}lc(),Pi(),O();function dl(e){let{privateKey:t}=e;return Bi(Js.ProjectivePoint.fromPrivateKey(Vr(t).slice(2)))}function fl(e){return ea(pl(e))}function pl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Bi(new Js.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(Vr(t).substring(2)))}function ml(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Js.sign(di(r),di(i),{extraEntropy:typeof t==`boolean`?t:Vr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function hl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?ta(t,fl({payload:r,signature:a})):Js.verify(a,di(r),Ui(i),...n?[{prehash:!0,lowS:!0}]:[])}Vn(),xs(),js(),Vo(),vs();let gl=ko(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),_l=gl.create(BigInt(`-3`)),vl=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),yl=bs({a:_l,b:vl,Fp:gl,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Rn),bl=yl,xl=us(gl,{A:_l,B:vl,Z:gl.create(BigInt(`-10`))}),Sl=ks(bl.ProjectivePoint,e=>xl(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:gl.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),Cl=ko(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),wl=Cl.create(BigInt(`-3`)),Tl=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),El=bs({a:wl,b:Tl,Fp:Cl,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Bn),Dl=us(Cl,{A:wl,B:Tl,Z:Cl.create(BigInt(`-12`))});ks(El.ProjectivePoint,e=>Dl(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Cl.ORDER,m:1,k:192,expand:`xmd`,hash:Bn});let Ol=ko(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),kl=Ol.create(BigInt(`-3`)),Al=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),jl=bs({a:kl,b:Al,Fp:Ol,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},zn),Ml=us(Ol,{A:kl,B:Al,Z:Ol.create(BigInt(`-4`))});ks(jl.ProjectivePoint,e=>Ml(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Ol.ORDER,m:1,k:256,expand:`xmd`,hash:zn});let Nl=yl,Pl=yl;Sl.hashToCurve,Sl.encodeToCurve,Pi(),O();function Fl(e){let{privateKey:t}=e;return Bi(Pl.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):Ur(t).slice(2)))}function Il(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Pl.sign(r instanceof Uint8Array?r:pi(r),i instanceof Uint8Array?i:pi(i),{extraEntropy:typeof t==`boolean`?t:Vr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Ll(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Pl.verify(i,n instanceof Uint8Array?n:pi(n),Wi(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Rl=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function zl(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Bl(r.error);return r.result}function Bl(e){let t=e;if(t instanceof Error&&!(`code`in t))return new Ql({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===Ql.code?new Ql(t):n===Hl.code?new Hl(t):n===Zl.code?new Zl(t):n===Yl.code?new Yl(t):n===ql.code?new ql(t):n===Xl.code?new Xl(t):n===Kl.code?new Kl(t):n===$l.code?new $l(t):n===Ul.code?new Ul(t):n===Wl.code?new Wl(t):n===Gl.code?new Gl(t):n===Jl.code?new Jl(t):new Ql({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Vl=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},Hl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(Hl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Ul=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(Ul,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Wl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(Wl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Gl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(Gl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Kl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(Kl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ql=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Jl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(Jl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Yl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(Yl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var Xl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty(Xl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var Zl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(Zl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var Ql=class e extends Vl{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(Ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var $l=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty($l,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),rt();var eu=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},tu=class extends eu{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var nu=class extends eu{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var ru=class extends eu{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(ru,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var iu=class extends eu{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var au=class extends eu{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var ou=class extends eu{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var su=class extends eu{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(su,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var cu=class extends eu{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty(cu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var lu=class extends eu{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var uu=class extends eu{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var du=class extends eu{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var fu=class extends eu{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var pu=class extends eu{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function mu(){let e=new Rl.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function hu(e,t={}){if(!e)throw new _u;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?zl(n):n}catch(e){throw gu(e)}}}}function gu(e){let t=Bl(e);if(t instanceof Ql){if(!t.data)return t;let{code:e}=t.data;if(e===iu.code)return new iu(t);if(e===au.code)return new au(t);if(e===tu.code)return new tu(t);if(e===nu.code)return new nu(t);if(e===ru.code)return new ru(t);if(e===ou.code)return new ou(t);if(e===fu.code)return new fu(t);if(e===pu.code)return new pu(t);if(e===du.code)return new du(t);if(e===uu.code)return new uu(t);if(e===lu.code)return new lu(t);if(e===cu.code)return new cu(t);if(e===su.code)return new su(t)}return t}var _u=class extends T{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function vu(e={}){let t=e.id??0;return{prepare(e){return yu({id:t++,...e})},get id(){return t}}}function yu(e){return{...e,jsonrpc:`2.0`}}function bu(){return null}O();function xu(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Nc(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=E(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=E(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=E(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=E(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=E(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=E(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=E(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=E(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Vc[e.type]||e.type),e.value!==void 0&&(t.value=E(e.value)),t}rt();let Su={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Cu(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function wu(e,t=`wei`){return Cu(e,Su.gwei-Su[t])}rt();var Tu=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${wu(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},Eu=class extends T{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},Du=class extends T{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},Ou=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${wu(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${wu(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function ku(e){let t=Nl.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}O();function Au(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=Br(Ii(Wr(r)),E(n,{size:1}),E(i,{size:4}));if(!t)return a;let o=Ur(new Uint8Array(16)),s=Ur(t.id);return Br(a,o,E(t.id.length,{size:2}),s,ul(t.publicKey))}function ju(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:zc(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Pi(),rt(),O();function Mu(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:Bc(e),type:`public-key`})):[{id:Bc(t),type:`public-key`}]}:{},challenge:pi(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Nu(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Au({flag:i,rpId:o,signCount:s}),u=ju({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ii(Wr(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:Br(l,d)}}async function Pu(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Mu(n);try{let e=await t(r);if(!e)throw new Fu;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=ku(o);return{id:s,metadata:{authenticatorData:Ur(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Fu({cause:e})}}var Fu=class extends T{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function Iu(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=pi(s);if(u.length<37||a!==void 0&&!hi(u.slice(0,32),Ii(Wr(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||Ur(Bc(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Ll({hash:!0,payload:ui(u,Ii(mi(c),{as:`Bytes`})),publicKey:i,signature:o})}let Lu=Nu;async function Ru(e){return Pu(e)}function zu(e){return Iu(e)}Pi();async function Bu(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=Bi(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Vu(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,di(t)),i=fi(new Uint8Array(r)),a=bi(yi(i,0,32)),o=bi(yi(i,32,64));return o>Nl.CURVE.n/2n&&(o=Nl.CURVE.n-o),{r:a,s:o}}var Hu,Uu=o((()=>{Hu=`1.2.3`})),Wu,Gu=o((()=>{Uu(),Wu=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Hu}`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function Ku(e,t){return e.exec(t)?.groups}var qu,Ju,Yu,Xu=o((()=>{qu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Ju=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Yu=/^\\(.+?\\).*?$/}));function Zu(e){let t=e.type;if(Qu.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Zu(i),r<n-1&&(t+=`, `)}let r=Ku(Qu,e.type);return t+=`)${r?.array||``}`,Zu({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Qu,$u=o((()=>{Xu(),Qu=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function ed(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Zu(i),r!==n-1&&(t+=`, `)}return t}var td=o((()=>{$u()}));function nd(e){return e.type===`function`?`function ${e.name}(${ed(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ed(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ed(e.inputs)})`:e.type===`error`?`error ${e.name}(${ed(e.inputs)})`:e.type===`constructor`?`constructor(${ed(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var rd=o((()=>{td()}));function id(e){return _d.test(e)}function ad(e){return Ku(_d,e)}function od(e){return vd.test(e)}function sd(e){return Ku(vd,e)}function cd(e){return yd.test(e)}function ld(e){return Ku(yd,e)}function ud(e){return bd.test(e)}function dd(e){return Ku(bd,e)}function fd(e){return xd.test(e)}function pd(e){return Ku(xd,e)}function md(e){return Sd.test(e)}function hd(e){return Ku(Sd,e)}function gd(e){return Cd.test(e)}var _d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed=o((()=>{Xu(),_d=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,vd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,yd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,bd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,xd=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Sd=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Cd=/^receive\\(\\) external payable$/,wd=new Set([`indexed`]),Td=new Set([`calldata`,`memory`,`storage`])})),Dd,Od,kd=o((()=>{Gu(),Dd=class extends Wu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Od=class extends Wu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),Ad,jd,Md,Nd,Pd,Fd=o((()=>{Gu(),Ad=class extends Wu{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},jd=class extends Wu{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Md=class extends Wu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Nd=class extends Wu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Pd=class extends Wu{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),Id,Ld,Rd,zd=o((()=>{Gu(),Id=class extends Wu{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Ld=class extends Wu{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},Rd=class extends Wu{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),Bd,Vd=o((()=>{Gu(),Bd=class extends Wu{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),Hd,Ud=o((()=>{Gu(),Hd=class extends Wu{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function Wd(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var Gd,Kd=o((()=>{Gd=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]])}));function qd(e,t={}){if(cd(e))return Jd(e,t);if(od(e))return Yd(e,t);if(id(e))return Xd(e,t);if(fd(e))return Zd(e,t);if(md(e))return Qd(e);if(gd(e))return{type:`receive`,stateMutability:`payable`};throw new Ld({signature:e})}function Jd(e,t={}){let n=ld(e);if(!n)throw new Id({signature:e,type:`function`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{modifiers:Td,structs:t,type:`function`}));let o=[];if(n.returns){let e=ef(n.returns),r=e.length;for(let n=0;n<r;n++)o.push($d(e[n],{modifiers:Td,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function Yd(e,t={}){let n=sd(e);if(!n)throw new Id({signature:e,type:`event`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{modifiers:wd,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function Xd(e,t={}){let n=ad(e);if(!n)throw new Id({signature:e,type:`error`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function Zd(e,t={}){let n=pd(e);if(!n)throw new Id({signature:e,type:`constructor`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function Qd(e){let t=hd(e);if(!t)throw new Id({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function $d(e,t){let n=Wd(e,t?.type,t?.structs);if(Gd.has(n))return Gd.get(n);let r=Yu.test(e),i=Ku(r?of:af,e);if(!i)throw new Ad({param:e});if(i.name&&nf(i.name))throw new jd({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=ef(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push($d(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(sf.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!tf(c))throw new Od({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Md({param:e,type:t?.type,modifier:i.modifier});if(Td.has(i.modifier)&&!rf(c,!!i.array))throw new Nd({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Gd.set(n,u),u}function ef(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?ef(o,[...t,n.trim()]):ef(o,t,`${n}${i}`,r);case`(`:return ef(o,t,`${n}${i}`,r+1);case`)`:return ef(o,t,`${n}${i}`,r-1);default:return ef(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Hd({current:n,depth:r});return t.push(n.trim()),t}function tf(e){return e===`address`||e===`bool`||e===`function`||e===`string`||qu.test(e)||Ju.test(e)}function nf(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||qu.test(e)||Ju.test(e)||cf.test(e)}function rf(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var af,of,sf,cf,lf=o((()=>{Xu(),kd(),Fd(),zd(),Ud(),Kd(),Ed(),af=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,of=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,sf=/^u?int$/,cf=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function uf(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!ud(n))continue;let i=dd(n);if(!i)throw new Id({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=$d(t,{type:`struct`});o.push(n)}if(!o.length)throw new Rd({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=df(a,t)}return r}function df(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Yu.test(i.type))r.push(i);else{let e=Ku(ff,i.type);if(!e?.type)throw new Pd({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Bd({type:o});r.push({...i,type:`tuple${a??``}`,components:df(t[o],t,new Set([...n,o]))})}else if(tf(o))r.push(i);else throw new Dd({type:o})}}return r}var ff,pf=o((()=>{Xu(),kd(),Fd(),zd(),Vd(),Ed(),lf(),ff=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function mf(e){let t=uf(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];ud(r)||n.push(qd(r,t))}return n}var hf=o((()=>{Ed(),pf(),lf()})),gf=o((()=>{Gu(),rd(),$u(),td(),hf(),kd(),Ed(),pf(),lf(),Fd(),zd(),Ud(),Vd()}));function _f(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function vf(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new Zf(e.type);return`${e.name}(${yf(e.inputs,{includeName:t})})`}function yf(e,{includeName:t=!1}={}){return e?e.map(e=>bf(e,{includeName:t})).join(t?`, `:`,`):``}function bf(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${yf(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var xf=o((()=>{Qf()}));function k(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Sf=o((()=>{}));function Cf(e){return k(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var wf=o((()=>{Sf()})),Tf,Ef=o((()=>{Tf=`2.47.6`}));function Df(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Df(e.cause,t):t?null:e}var Of,A,j=o((()=>{Ef(),Of={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Tf}`},A=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=Of.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Of.version?[`Version: ${Of.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Tf}walk(e){return Df(this,e)}}})),kf,Af,jf,Mf,Nf,Pf,Ff,If,Lf,Rf,zf,Bf,Vf,Hf,Uf,Wf,Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf=o((()=>{xf(),wf(),j(),kf=class extends A{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},Af=class extends A{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},jf=class extends A{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${yf(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`AbiDecodingDataSizeTooSmallError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=t,this.size=n}},Mf=class extends A{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Nf=class extends A{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Pf=class extends A{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Cf(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},Ff=class extends A{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},If=class extends A{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Lf=class extends A{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},Rf=class extends A{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},zf=class extends A{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Bf=class extends A{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},Vf=class extends A{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},Hf=class extends A{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},Uf=class extends A{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},Wf=class extends A{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${vf(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${vf(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Gf=class extends A{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},Kf=class extends A{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${yf(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`DecodeLogDataMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=t,this.params=n,this.size=r}},qf=class extends A{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${vf(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},Jf=class extends A{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},Yf=class extends A{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},Xf=class extends A{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},Zf=class extends A{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),$f,ep,tp,np=o((()=>{j(),$f=class extends A{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},ep=class extends A{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},tp=class extends A{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function rp(e,{dir:t,size:n=32}={}){return typeof e==`string`?ip(e,{dir:t,size:n}):ap(e,{dir:t,size:n})}function ip(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new ep({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function ap(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new ep({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var op=o((()=>{np()})),sp,cp,lp,up,dp,fp=o((()=>{j(),sp=class extends A{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},cp=class extends A{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},lp=class extends A{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},up=class extends A{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},dp=class extends A{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function pp(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var mp=o((()=>{}));function hp(e,{size:t}){if(Cf(e)>t)throw new dp({givenSize:Cf(e),maxSize:t})}function gp(e,t={}){let{signed:n}=t;t.size&&hp(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function _p(e,t={}){let n=e;if(t.size&&(hp(n,{size:t.size}),n=pp(n)),pp(n)===`0x00`)return!1;if(pp(n)===`0x01`)return!0;throw new lp(n)}function vp(e,t={}){let n=gp(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new sp({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var yp=o((()=>{fp(),wf(),mp()}));function bp(e,t={}){return typeof e==`number`||typeof e==`bigint`?M(e,t):typeof e==`string`?Cp(e,t):typeof e==`boolean`?xp(e,t):Sp(e,t)}function xp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{size:t.size})):n}function Sp(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=wp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(hp(r,{size:t.size}),rp(r,{dir:`right`,size:t.size})):r}function M(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new sp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?rp(s,{size:r}):s}function Cp(e,t={}){return Sp(Tp.encode(e),t)}var wp,Tp,Ep=o((()=>{fp(),op(),yp(),wp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Tp=new TextEncoder}));function Dp(e,t={}){return typeof e==`number`||typeof e==`bigint`?jp(e,t):typeof e==`boolean`?Op(e,t):k(e)?Ap(e,t):Mp(e,t)}function Op(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{size:t.size})):n}function kp(e){if(e>=Pp.zero&&e<=Pp.nine)return e-Pp.zero;if(e>=Pp.A&&e<=Pp.F)return e-(Pp.A-10);if(e>=Pp.a&&e<=Pp.f)return e-(Pp.a-10)}function Ap(e,t={}){let n=e;t.size&&(hp(n,{size:t.size}),n=rp(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=kp(r.charCodeAt(t++)),i=kp(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new A(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function jp(e,t){return Ap(M(e,t))}function Mp(e,t={}){let n=Np.encode(e);return typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{dir:`right`,size:t.size})):n}var Np,Pp,Fp=o((()=>{j(),Sf(),op(),yp(),Ep(),Np=new TextEncoder,Pp={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ip(e,t){let n=t||`hex`,r=Tn(k(e,{strict:!1})?Dp(e):e);return n===`bytes`?r:bp(r)}var Lp=o((()=>{Dn(),Sf(),Fp(),Ep()}));function Rp(e){return zp(e)}var zp,Bp=o((()=>{Fp(),Lp(),zp=e=>Ip(Dp(e))}));function Vp(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new A(`Unable to normalize signature.`);return i}var Hp=o((()=>{j()})),Up,Wp=o((()=>{gf(),Hp(),Up=e=>Vp(typeof e==`string`?e:nd(e))}));function Gp(e){return Rp(Up(e))}var Kp=o((()=>{Bp(),Wp()})),qp,Jp=o((()=>{Kp(),qp=Gp})),Yp,Xp=o((()=>{j(),Yp=class extends A{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),Zp,Qp=o((()=>{Zp=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function $p(e,t){if(tm.has(`${e}.${t}`))return tm.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Ip(Mp(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return tm.set(`${e}.${t}`,a),a}function em(e,t){if(!rm(e,{strict:!1}))throw new Yp({address:e});return $p(e,t)}var tm,nm=o((()=>{Xp(),Fp(),Lp(),Qp(),om(),tm=new Zp(8192)}));function rm(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(am.has(r))return am.get(r);let i=im.test(e)?e.toLowerCase()===e?!0:n?$p(e)===e:!0:!1;return am.set(r,i),i}var im,am,om=o((()=>{Qp(),nm(),im=/^0x[a-fA-F0-9]{40}$/,am=new Zp(8192)}));function sm(e){return typeof e[0]==`string`?lm(e):cm(e)}function cm(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function lm(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var um=o((()=>{}));function dm(e,t,n,{strict:r}={}){return k(e,{strict:!1})?hm(e,t,n,{strict:r}):mm(e,t,n,{strict:r})}function fm(e,t){if(typeof t==`number`&&t>0&&t>Cf(e)-1)throw new $f({offset:t,position:`start`,size:Cf(e)})}function pm(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Cf(e)!==n-t)throw new $f({offset:n,position:`end`,size:Cf(e)})}function mm(e,t,n,{strict:r}={}){fm(e,t);let i=e.slice(t,n);return r&&pm(i,t,n),i}function hm(e,t,n,{strict:r}={}){fm(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&pm(i,t,n),i}var gm=o((()=>{np(),Sf(),wf()})),_m,vm,ym=o((()=>{_m=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,vm=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/}));function bm(e,t){if(e.length!==t.length)throw new Ff({expectedLength:e.length,givenLength:t.length});let n=Cm(xm({params:e,values:t}));return n.length===0?`0x`:n}function xm({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(Sm({param:e[r],value:t[r]}));return n}function Sm({param:e,value:t}){let n=jm(e.type);if(n){let[r,i]=n;return Tm(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return Am(t,{param:e});if(e.type===`address`)return wm(t);if(e.type===`bool`)return Dm(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=vm.exec(e.type)??[];return Om(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Em(t,{param:e});if(e.type===`string`)return km(t);throw new Jf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Cm(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Cf(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(M(t+i,{size:32})),r.push(s),i+=Cf(s)):n.push(s)}return sm([...n,...r])}function wm(e){if(!rm(e))throw new Yp({address:e});return{dynamic:!1,encoded:ip(e.toLowerCase())}}function Tm(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new Xf(e);if(!r&&e.length!==t)throw new Nf({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=Sm({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Cm(a);if(r){let t=M(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?sm([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:sm(a.map(({encoded:e})=>e))}}function Em(e,{param:t}){let[,n]=t.type.split(`bytes`),r=Cf(e);if(!n){let t=e;return r%32!=0&&(t=ip(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:sm([ip(M(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Pf({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ip(e,{dir:`right`})}}function Dm(e){if(typeof e!=`boolean`)throw new A(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ip(xp(e))}}function Om(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new sp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:M(e,{size:32,signed:t})}}function km(e){let t=Cp(e),n=Math.ceil(Cf(t)/32),r=[];for(let e=0;e<n;e++)r.push(ip(dm(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:sm([ip(M(Cf(t),{size:32})),...r])}}function Am(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=Sm({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Cm(r):sm(r.map(({encoded:e})=>e))}}function jm(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Mm=o((()=>{Qf(),Xp(),j(),fp(),om(),um(),op(),wf(),gm(),Ep(),ym()})),Nm,Pm=o((()=>{gm(),Kp(),Nm=e=>dm(Gp(e),0,4)}));function Fm(e){let{abi:t,args:n=[],name:r}=e,i=k(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Nm(e)===r:e.type===`event`?qp(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Im(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Lm(e.inputs,o.inputs,n);if(t)throw new Wf({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Im(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return rm(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,r)=>n===`object`&&Im(Object.values(e)[r],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>Im(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Lm(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Lm(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&rm(n[r],{strict:!1}))return o}}var Rm=o((()=>{Qf(),Sf(),om(),Jp(),Pm()}));function zm(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var Bm=o((()=>{}));function Vm(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Fm({abi:t,args:n,name:r});if(!e)throw new Vf(r,{docsPath:Hm});i=e}if(i.type!==`function`)throw new Vf(void 0,{docsPath:Hm});return{abi:[i],functionName:Nm(vf(i))}}var Hm,Um=o((()=>{Qf(),Pm(),xf(),Rm(),Hm=`/docs/contract/encodeFunctionData`}));function Wm(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Vm(e),i=n[0];return lm([r,(`inputs`in i&&i.inputs?bm(i.inputs,t??[]):void 0)??`0x`])}var Gm=o((()=>{um(),Mm(),Um()})),Km,qm,Jm,Ym=o((()=>{Km={1:\"An `assert` condition failed.\",17:`Arithmetic operation resulted in underflow or overflow.`,18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:`Attempted to convert to an invalid type.`,34:`Attempted to access a storage byte array that is incorrectly encoded.`,49:\"Performed `.pop()` on an empty array\",50:`Array index is out of bounds.`,65:`Allocated too much memory or created an array which is too large.`,81:`Attempted to call a zero-initialized variable of internal function type.`},qm={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Jm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Xm,Zm,Qm,$m=o((()=>{j(),Xm=class extends A{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Zm=class extends A{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Qm=class extends A{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function eh(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(th);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var th,nh=o((()=>{$m(),th={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Qm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Zm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Xm({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Xm({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function rh(e,t={}){return t.size!==void 0&&hp(e,{size:t.size}),gp(Sp(e,t),t)}function ih(e,t={}){let n=e;if(t.size!==void 0&&(hp(n,{size:t.size}),n=pp(n)),n.length>1||n[0]>1)throw new cp(n);return!!n[0]}function ah(e,t={}){return t.size!==void 0&&hp(e,{size:t.size}),vp(Sp(e,t),t)}function oh(e,t={}){let n=e;return t.size!==void 0&&(hp(n,{size:t.size}),n=pp(n,{dir:`right`})),new TextDecoder().decode(n)}var sh=o((()=>{fp(),mp(),yp(),Ep()}));function ch(e,t){let n=typeof t==`string`?Ap(t):t,r=eh(n);if(Cf(n)===0&&e.length>0)throw new Mf;if(Cf(t)&&Cf(t)<32)throw new jf({data:typeof t==`string`?t:Sp(t),params:e,size:Cf(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=lh(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function lh(e,t,{staticPosition:n}){let r=jm(t.type);if(r){let[i,a]=r;return dh(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return hh(e,t,{staticPosition:n});if(t.type===`address`)return uh(e);if(t.type===`bool`)return fh(e);if(t.type.startsWith(`bytes`))return ph(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return mh(e,t);if(t.type===`string`)return gh(e,{staticPosition:n});throw new Yf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function uh(e){return[$p(Sp(mm(e.readBytes(32),-20))),32]}function dh(e,t,{length:n,staticPosition:r}){if(!n){let n=r+ah(e.readBytes(yh)),i=n+vh;e.setPosition(n);let a=ah(e.readBytes(vh)),o=_h(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=lh(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(_h(t)){let i=r+ah(e.readBytes(yh)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=lh(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=lh(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function fh(e){return[ih(e.readBytes(32),{size:32}),32]}function ph(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=ah(e.readBytes(32));e.setPosition(n+t);let r=ah(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Sp(i),32]}return[Sp(e.readBytes(Number.parseInt(i,10),32)),32]}function mh(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?rh(i,{signed:n}):ah(i,{signed:n}),32]}function hh(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(_h(t)){let o=n+ah(e.readBytes(yh));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=lh(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=lh(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function gh(e,{staticPosition:t}){let n=t+ah(e.readBytes(32));e.setPosition(n);let r=ah(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=oh(pp(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function _h(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(_h);let n=jm(e.type);return!!(n&&_h({...e,type:n[1]}))}var vh,yh,bh=o((()=>{Qf(),nm(),nh(),wf(),gm(),mp(),sh(),Fp(),Ep(),Mm(),vh=32,yh=32}));function xh(e){let{abi:t,data:n,cause:r}=e,i=dm(n,0,4);if(i===`0x`)throw new Mf({cause:r});let a=[...t||[],qm,Jm].find(e=>e.type===`error`&&i===Nm(vf(e)));if(!a)throw new Rf(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?ch(a.inputs,dm(n,4)):void 0,errorName:a.name}}var Sh=o((()=>{Ym(),Qf(),gm(),Pm(),bh(),xf()})),Ch,wh=o((()=>{Ch=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function Th({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if(`name`in e&&`inputs`in e&&e.inputs)return`${n?e.name:``}(${e.inputs.map((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?Ch(t[n]):t[n]}`).join(`, `)})`}var Eh=o((()=>{wh()})),Dh,Oh,kh=o((()=>{Dh={gwei:9,wei:18},Oh={ether:-9,wei:9}}));function Ah(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var jh=o((()=>{}));function Mh(e,t=`wei`){return Ah(e,Dh[t])}var Nh=o((()=>{kh(),jh()}));function Ph(e,t=`wei`){return Ah(e,Oh[t])}var Fh=o((()=>{kh(),jh()}));function Ih(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Lh(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=Ih(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Ih(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Rh,zh,Bh=o((()=>{j(),Rh=class extends A{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},zh=class extends A{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Vh(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var Hh,Uh,Wh,Gh,Kh,qh,Jh=o((()=>{Nh(),Fh(),j(),Hh=class extends A{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Uh=class extends A{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Vh(e),`}`,``,`To infer the type, either provide:`,\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},Wh=class extends A{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},Gh=class extends A{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},Kh=class extends A{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},qh=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Vh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),Yh,Xh,Zh=o((()=>{Yh=e=>e,Xh=e=>e})),Qh,$h,eg,tg,ng,rg,ig=o((()=>{Bm(),Ym(),Sh(),xf(),Eh(),Rm(),Nh(),Fh(),Qf(),j(),Bh(),Jh(),Zh(),Qh=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=Vh({from:(t?zm(t):void 0)?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});f&&(p+=`\\n${Lh(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},$h=class extends A{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Fm({abi:t,args:n,name:a}),c=s?Th({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?vf(s,{includeName:!0}):void 0,u=Vh({address:r&&Yh(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),Object.defineProperty(this,`abi`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`args`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`contractAddress`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`formattedArgs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`functionName`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`sender`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},eg=class extends A{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=xh({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=Km[e]}else{let e=n?vf(n,{includeName:!0}):void 0,t=n&&a?Th({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof Rf&&(l=a.signature,s=[`Unable to decode signature \"${l}\" as it was not found on the provided ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`reason`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.raw=t,this.reason=c,this.signature=l}},tg=class extends A{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},ng=class extends A{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},rg=class extends A{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),ag,og,sg,cg=o((()=>{wh(),j(),Zh(),ag=class extends A{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${Xh(a)}`,e&&`Request body: ${Ch(e)}`].filter(Boolean),name:`HttpRequestError`}),Object.defineProperty(this,`body`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`headers`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`status`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=i,this.url=a}},og=class extends A{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Xh(n)}`,`Request body: ${Ch(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},sg=class extends A{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Xh(t)}`,`Request body: ${Ch(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),lg,ug,dg,fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg,Tg,Eg,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig,Lg,Rg,zg=o((()=>{j(),cg(),lg=-1,ug=class extends A{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof og?e.code:t??lg}},dg=class extends ug{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},fg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),pg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),mg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),hg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(hg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),gg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(gg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),_g=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(_g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),vg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(vg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),yg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(yg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),bg=class e extends ug{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(bg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),xg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(xg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Sg=class e extends ug{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(Sg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Cg=class e extends ug{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Cg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),wg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(wg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Tg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(Tg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Eg=class e extends dg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Eg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Dg=class e extends dg{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Og=class e extends dg{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Og,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),kg=class e extends dg{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(kg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Ag=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(Ag,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),jg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(jg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Mg=class e extends dg{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(Mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Ng=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Ng,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Pg=class e extends dg{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Fg=class e extends dg{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(Fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Ig=class e extends dg{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Ig,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Lg=class e extends dg{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Lg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Rg=class extends ug{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));Qf(),j(),ig(),cg(),zg();function Bg(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof rg?e:e instanceof A?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new $h(e instanceof Mf?new tg({functionName:a,cause:e}):[3,gg.code].includes(c)&&(l||u||d||f)||c===_g.code&&u===`execution reverted`&&l?new eg({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof og?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}nm(),Lp();function Vg(e){return $p(`0x${Ip(`0x${e.substring(4)}`).substring(26)}`)}Sf(),wf(),yp(),Ep();async function Hg({hash:e,signature:t}){let n=k(e)?e:bp(e),{secp256k1:r}=await Promise.resolve().then(()=>(lc(),Ms));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Ug(Number(a??i));return new r.Signature(gp(e),gp(n)).addRecoveryBit(o)}let e=k(t)?t:bp(t);if(Cf(e)!==65)throw Error(`invalid signature length`);let n=Ug(vp(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Ug(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Wg({hash:e,signature:t}){return Vg(await Hg({hash:e,signature:t}))}j(),nh(),Fp(),Ep();function Gg(e,t=`hex`){let n=Kg(e),r=eh(new Uint8Array(n.length));return n.encode(r),t===`hex`?Sp(r.bytes):r.bytes}function Kg(e){return Array.isArray(e)?qg(e.map(e=>Kg(e))):Jg(e)}function qg(e){let t=e.reduce((e,t)=>e+t.length,0),n=Yg(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Jg(e){let t=typeof e==`string`?Ap(e):e,n=Yg(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Yg(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new A(`Length is too large.`)}um(),Fp(),Ep(),Lp();function Xg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Ip(lm([`0x05`,Gg([t?M(t):`0x`,i,n?M(n):`0x`])]));return r===`bytes`?Ap(a):a}async function Zg(e){let{authorization:t,signature:n}=e;return Wg({hash:Xg(t),signature:n??t})}Nh(),Fh(),j(),Jh();var Qg=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Vh({from:t?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},$g,e_,t_,n_,r_,i_,a_,o_,s_,c_,l_,u_,d_=o((()=>{Fh(),j(),$g=class extends A{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty($g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty($g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),e_=class extends A{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Ph(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(e_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),t_=class extends A{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Ph(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(t_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/}),n_=class extends A{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(n_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),r_=class extends A{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(r_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),i_=class extends A{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(i_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),a_=class extends A{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(a_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),o_=class extends A{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(o_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),s_=class extends A{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(s_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),c_=class extends A{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(c_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),l_=class extends A{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Ph(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Ph(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(l_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),u_=class extends A{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function f_(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof A?e.walk(e=>e?.code===$g.code):e;return r instanceof A?new $g({cause:e,message:r.details}):$g.nodeMessage.test(n)?new $g({cause:e,message:e.details}):e_.nodeMessage.test(n)?new e_({cause:e,maxFeePerGas:t?.maxFeePerGas}):t_.nodeMessage.test(n)?new t_({cause:e,maxFeePerGas:t?.maxFeePerGas}):n_.nodeMessage.test(n)?new n_({cause:e,nonce:t?.nonce}):r_.nodeMessage.test(n)?new r_({cause:e,nonce:t?.nonce}):i_.nodeMessage.test(n)?new i_({cause:e,nonce:t?.nonce}):a_.nodeMessage.test(n)?new a_({cause:e}):o_.nodeMessage.test(n)?new o_({cause:e,gas:t?.gas}):s_.nodeMessage.test(n)?new s_({cause:e,gas:t?.gas}):c_.nodeMessage.test(n)?new c_({cause:e}):l_.nodeMessage.test(n)?new l_({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new u_({cause:e})}var p_=o((()=>{j(),d_()}));d_(),p_();function m_(e,{docsPath:t,...n}){return new Qg((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}function h_(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var g_=o((()=>{}));function __(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var v_=o((()=>{}));function y_(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=b_(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Sp(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=M(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=M(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=M(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=M(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=M(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=M(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=x_[e.type]),e.value!==void 0&&(n.value=M(e.value)),n}function b_(e){return e.map(e=>({address:e.address,r:e.r?M(BigInt(e.r)):e.r,s:e.s?M(BigInt(e.s)):e.s,chainId:M(e.chainId),nonce:M(e.nonce),...e.yParity===void 0?{}:{yParity:M(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:M(e.v)}:{}}))}var x_,S_,C_=o((()=>{Ep(),v_(),x_={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},S_=__(`transactionRequest`,y_)}));function w_(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new tp({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new tp({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function T_(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=M(t)),n!==void 0&&(o.nonce=M(n)),r!==void 0&&(o.state=w_(r)),i!==void 0){if(o.state)throw new zh;o.stateDiff=w_(i)}return o}function E_(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!rm(n,{strict:!1}))throw new Yp({address:n});if(t[n])throw new Rh({address:n});t[n]=T_(r)}return t}var D_=o((()=>{Xp(),np(),Bh(),om(),Ep()})),O_,k_=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),O_=2n**256n-1n}));function A_(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?zm(t):void 0;if(a&&!rm(a.address))throw new Yp({address:a.address});if(i&&!rm(i))throw new Yp({address:i});if(n&&n>O_)throw new e_({maxFeePerGas:n});if(r&&n&&r>n)throw new l_({maxFeePerGas:n,maxPriorityFeePerGas:r})}var j_=o((()=>{Bm(),k_(),Xp(),d_(),om()}));Fh(),j();var M_=class extends A{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},N_=class extends A{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},P_=class extends A{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Ph(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};j();var F_=class extends A{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};yp(),v_();let I_={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function L_(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?vp(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?vp(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?I_[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=z_(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let R_=__(`transaction`,L_);function z_(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function B_(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:L_(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}Ep();async function V_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:M(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new F_({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||B_)(s,`getBlock`)}async function H_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}yp();async function U_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await _f(e,V_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?gp(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):_f(e,V_,`getBlock`)({}),_f(e,H_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new N_;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function W_(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new M_;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await _f(e,V_,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new N_;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await U_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await _f(e,H_,`getGasPrice`)({}))}}yp(),Ep();async function G_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return vp(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?M(r):n]},{dedupe:!!r}))}Fp(),Ep();function K_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Ap(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Sp(e))}Fp(),Ep();function q_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Ap(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Ap(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Sp(e))}Sf(),Fp(),Ep();function J_(e,t){let n=t||`hex`,r=Hn(k(e,{strict:!1})?Dp(e):e);return n===`bytes`?r:bp(r)}Ep();function Y_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=J_(t,`bytes`);return i.set([n],0),r===`bytes`?i:Sp(i)}function X_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Y_({commitment:e,to:r,version:n}));return i}let Z_=4096,Q_=32*Z_;Q_*6-1-1*Z_*6,j();var $_=class extends A{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},ev=class extends A{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},tv=class extends A{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},nv=class extends A{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};nh(),wf(),Fp(),Ep();function rv(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Ap(e.data):e.data,r=Cf(n);if(!r)throw new ev;if(r>761855)throw new $_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=eh(new Uint8Array(Q_)),t=0;for(;t<Z_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Sp(e.bytes))}function iv(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??rv({data:t,to:r}),a=e.commitments??K_({blobs:i,kzg:n,to:r}),o=e.proofs??q_({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}Jh();function av(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new Uh({transaction:e})}d_(),Jh(),p_();function ov(e,{docsPath:t,...n}){return new qh((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}yp();async function sv(e){return vp(await e.request({method:`eth_chainId`},{dedupe:!0}))}Bm(),g_(),C_(),j_();async function cv(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=zm(n),r=a?a.id:await _f(e,sv,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();A_(t);let x=a?.formatters?.transactionRequest?.format,S=(x||y_)({...h_(y,{format:x}),account:n?zm(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||L_)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await _f(e,V_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new M_;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw ov(n,{...t,chain:e.chain})}}Bm(),Qp(),j_();let lv=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],uv=new Map,dv=new Zp(128);async function fv(e,t){let n=t;n.account??=e.account,n.parameters??=lv;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await _f(e,sv,`getChainId`)({}),c):n.chainId)}let u=r&&zm(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||dv.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await _f(e,cv,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return dv.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&dv.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await _f(e,V_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await _f(e,G_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=K_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=X_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=iv({blobs:p,commitments:e,proofs:q_({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=av(n)}catch{let t=uv.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,uv.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await W_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new P_({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new N_;if(n.gasPrice===void 0){let{gasPrice:t}=await W_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await _f(e,pv,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),A_(n),delete n.parameters,n}Bm(),j(),Ep(),g_(),C_(),D_(),j_();async function pv(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?zm(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Zg({authorization:t.authorizationList[0]}).catch(()=>{throw new A(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await fv(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?M(u):void 0)||d,ee=E_(b);A_(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||y_)({...h_(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw m_(n,{...t,account:i,chain:e.chain})}}function mv(e,t){if(!rm(e,{strict:!1}))throw new Yp({address:e});if(!rm(t,{strict:!1}))throw new Yp({address:t});return e.toLowerCase()===t.toLowerCase()}var hv=o((()=>{Xp(),om()}));function gv(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}Qf(),$m(),wf(),Jp(),bh(),xf();let _v=`/docs/contract/decodeEventLog`;function vv(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new zf({docsPath:_v});let c=t.find(e=>e.type===`event`&&o===qp(vf(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Bf(o,{docsPath:_v});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new qf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=yv({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=ch(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof jf||e instanceof Zm?new Kf({abiItem:c,data:n,params:g,size:Cf(n)}):e}else if(a)throw new Kf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function yv({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(ch([e],t)||[])[0]}hv(),Fp(),Lp(),Jp();function bv(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:qp(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?gv(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=vv({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=vv({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!xv({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function xv(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?mv(t,n):e.type===`string`||e.type===`bytes`?Ip(Dp(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function Sv(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Fm({abi:t,args:n,name:r});if(!e)throw new Vf(r,{docsPath:Cv});a=e}if(a.type!==`function`)throw new Vf(void 0,{docsPath:Cv});if(!a.outputs)throw new Hf(a.name,{docsPath:Cv});let o=ch(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var Cv,wv=o((()=>{Qf(),bh(),Rm(),Cv=`/docs/contract/decodeFunctionResult`})),Tv,Ev,Dv,Ov,kv,Av=o((()=>{Tv=[{inputs:[{components:[{name:`target`,type:`address`},{name:`allowFailure`,type:`bool`},{name:`callData`,type:`bytes`}],name:`calls`,type:`tuple[]`}],name:`aggregate3`,outputs:[{components:[{name:`success`,type:`bool`},{name:`returnData`,type:`bytes`}],name:`returnData`,type:`tuple[]`}],stateMutability:`view`,type:`function`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],Ev=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],Dv=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...Dv],[...Dv],Ov=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],kv=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),jv=o((()=>{})),Mv,Nv,Pv,Fv,Iv=o((()=>{Mv=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Nv=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Pv=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Fv=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Lv,Rv,zv,Bv,Vv,Hv=o((()=>{j(),Lv=class extends A{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Rv=class extends A{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},zv=class extends A{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},Bv=class extends A{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Vv=class extends A{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Uv(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new kf({docsPath:Wv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Af({docsPath:Wv});return lm([r,bm(i.inputs,n)])}var Wv,Gv=o((()=>{Qf(),um(),Mm(),Wv=`/docs/contract/encodeDeployData`}));function Kv({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Lv({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Lv({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var qv=o((()=>{Hv()}));function Jv(e,{docsPath:t,...n}){return new Qh((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}var Yv=o((()=>{ig(),d_(),p_()}));function Xv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Zv=o((()=>{}));function Qv({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>$v.delete(t),s=()=>c().map(({args:e})=>e),c=()=>$v.get(t)||[],l=e=>$v.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Xv();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var $v,ey=o((()=>{Zv(),$v=new Map})),ty,ny,ry,iy=o((()=>{wh(),j(),Zh(),ty=class extends A{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${Xh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ny=class extends A{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Xh(t)}`,`Response: ${Ch(e)}`],name:`OffchainLookupResponseMalformedError`})}},ry=class extends A{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function ay(e){let{abi:t,data:n}=e,r=dm(n,0,4),i=t.find(e=>e.type===`function`&&r===Nm(vf(e)));if(!i)throw new Uf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?ch(i.inputs,dm(n,4)):void 0}}var oy=o((()=>{Qf(),gm(),Pm(),bh(),xf()}));function sy(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Fm({abi:t,args:r,name:n});if(!e)throw new Lf(n,{docsPath:cy});i=e}if(i.type!==`error`)throw new Lf(void 0,{docsPath:cy});let a=Nm(vf(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new If(i.name,{docsPath:cy});o=bm(i.inputs,r)}return lm([a,o])}var cy,ly=o((()=>{Qf(),um(),Pm(),Mm(),xf(),Rm(),cy=`/docs/contract/encodeErrorResult`}));function uy(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Fm({abi:t,name:n});if(!e)throw new Vf(n,{docsPath:dy});i=e}if(i.type!==`function`)throw new Vf(void 0,{docsPath:dy});if(!i.outputs)throw new Hf(i.name,{docsPath:dy});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Xf(r)})();return bm(i.outputs,a)}var dy,fy=o((()=>{Qf(),Mm(),Rm(),dy=`/docs/contract/encodeFunctionResult`}));async function py(e){let{data:t,ccipRequest:n}=e,{args:[r]}=ay({abi:Ev,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await py({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=my(e)}})),uy({abi:Ev,functionName:`query`,result:[i,a]})}function my(e){return e.name===`HttpRequestError`&&e.status?sy({abi:Ev,errorName:`HttpError`,args:[e.status,e.shortMessage]}):sy({abi:[qm],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var hy=o((()=>{Av(),Ym(),oy(),ly(),fy()})),gy=c({ccipRequest:()=>vy,offchainLookup:()=>_y,offchainLookupAbiItem:()=>by,offchainLookupSignature:()=>yy});async function _y(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=xh({data:r,abi:[by]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:vy;try{if(!mv(i,o))throw new ry({sender:o,to:i});let{data:r}=await Sy(e,{blockNumber:t,blockTag:n,data:sm([l,bm([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await py({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new ty({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function vy({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new ag({body:s,details:i?.error?Ch(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!k(i)){r=new ny({result:i,url:a});continue}return i}catch(e){r=new ag({body:s,details:e.message,url:a})}}throw r}var yy,by,xy=o((()=>{Oy(),iy(),cg(),Sh(),Mm(),hv(),um(),Sf(),hy(),wh(),yy=`0x556f1830`,by={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function Sy(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?zm(n):void 0;if(u&&(f||p))throw new A(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new A(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?Ty({code:u,data:d}):te?Ey({data:d,factory:f,factoryData:p,to:b}):d;try{A_(t);let n=(typeof a==`bigint`?M(a):void 0)||o,u=l?Kc(l):void 0,d=E_(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||y_)({...h_(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&Cy({request:p})&&!d&&!u)try{return await wy(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Bv)&&!(e instanceof Lv))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=Dy(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(xy(),gy));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new ng({factory:f}):Jv(n,{...t,account:C,chain:e.chain})}}function Cy({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function wy(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return Kv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Bv})(),u=(typeof a==`bigint`?M(a):void 0)||o,{schedule:d}=Qv({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=Wm({abi:Tv,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Ty({code:Fv,data:r})}:{to:l,data:r}},u]});return Sv({abi:Tv,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new rg({data:f});return f===`0x`?{data:void 0}:{data:f}}function Ty(e){let{code:t,data:n}=e;return Uv({abi:mf([`constructor(bytes, bytes)`]),bytecode:Mv,args:[t,n]})}function Ey(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Uv({abi:mf([`constructor(address, bytes, address, bytes)`]),bytecode:Nv,args:[i,t,n,r]})}function Dy(e){if(!(e instanceof A))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Oy=o((()=>{gf(),qc(),Bm(),Av(),jv(),Iv(),j(),Hv(),ig(),wv(),Gv(),Gm(),qv(),Ep(),Yv(),g_(),C_(),ey(),D_(),j_()}));wv(),Gm(),Oy();async function ky(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Wm({abi:n,args:i,functionName:a});try{let{data:t}=await _f(e,Sy,`call`)({...o,data:s,to:r});return Sv({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw Bg(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}async function Ay(e){return new Promise(t=>setTimeout(t,e))}j();var jy=class extends A{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},My=class extends A{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Hv();function Ny({chain:e,currentChainId:t}){if(!e)throw new zv;if(t!==e.id)throw new Rv({chain:e,currentChainId:t})}async function Py(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}Bm(),j(),um(),g_(),C_(),Qp(),j_();let Fy=new Zp(128);async function Iy(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new jy({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?zm(n):null;try{A_(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Zg({authorization:o[0]}).catch(()=>{throw new A(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await _f(e,sv,`getChainId`)({}),r&&Ny({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||y_)({...h_(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?sm([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Fy.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(Fy.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Fy.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await _f(e,fv,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?sm([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...lv,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await _f(e,Py,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new My({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new My({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof My?e:ov(e,{...t,account:y,chain:t.chain||void 0})}}Bm(),Gm();async function Ly(e,t){return Ly.internal(e,Iy,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new jy({docsPath:`/docs/contract/writeContract`});let u=a?zm(a):null,d=Wm({abi:i,args:s,functionName:c});try{return await _f(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw Bg(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Ly||={});function Ry(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await Ay(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}yp(),v_();let zy={\"0x0\":`reverted`,\"0x1\":`success`};function By(e,t){let n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(e=>gv(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?vp(e.transactionIndex):null,status:e.status?zy[e.status]:null,type:e.type?I_[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Vy=__(`transactionReceipt`,By),Hy=256,Uy;function Wy(e=11){if(!Uy||Hy+e>256*2){Uy=``,Hy=0;for(let e=0;e<256;e++)Uy+=(256+Math.random()*256|0).toString(16).substring(1)}return Uy.substring(Hy,Hy+++e)}Bm();function Gy(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?zm(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:Wy(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}Ep();async function Ky(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:M(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}k_(),Xp(),j(),Hv(),d_(),om(),wf(),gm(),yp();function qy(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!rm(n))throw new Yp({address:n});if(t<0)throw new Vv({chainId:t})}Yy(e)}function Jy(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new ev;for(let e of t){let t=Cf(e),n=vp(dm(e,0,1));if(t!==32)throw new tv({hash:e,size:t});if(n!==1)throw new nv({hash:e,version:n})}}Yy(e)}function Yy(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Vv({chainId:t});if(i&&!rm(i))throw new Yp({address:i});if(r&&r>O_)throw new e_({maxFeePerGas:r});if(n&&r&&n>r)throw new l_({maxFeePerGas:r,maxPriorityFeePerGas:n})}function Xy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Vv({chainId:t});if(a&&!rm(a))throw new Yp({address:a});if(n||i)throw new A(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>O_)throw new e_({maxFeePerGas:r})}function Zy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!rm(a))throw new Yp({address:a});if(t!==void 0&&t<=0)throw new Vv({chainId:t});if(n||i)throw new A(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>O_)throw new e_({maxFeePerGas:r})}Xp(),Jh(),om();function Qy(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new Kh({storageKey:i[e]});if(!rm(r,{strict:!1}))throw new Yp({address:r});t.push([r,i])}return t}Jh(),um(),mp(),Ep();function $y(e,t){let n=av(e);return n===`eip1559`?nb(e,t):n===`eip2930`?rb(e,t):n===`eip4844`?tb(e,t):n===`eip7702`?eb(e,t):ib(e,t)}function eb(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;qy(e);let f=Qy(u),p=ob(n);return lm([`0x04`,Gg([M(r),a?M(a):`0x`,l?M(l):`0x`,c?M(c):`0x`,i?M(i):`0x`,o??`0x`,s?M(s):`0x`,d??`0x`,f,p,...ab(e,t)])])}function tb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;Jy(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Sp(e)),n=e.kzg,r=K_({blobs:t,kzg:n});f===void 0&&(f=X_({commitments:r})),p===void 0&&(p=iv({blobs:t,commitments:r,proofs:q_({blobs:t,commitments:r,kzg:n})}))}let m=Qy(u),h=[M(n),i?M(i):`0x`,l?M(l):`0x`,c?M(c):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,d??`0x`,m,s?M(s):`0x`,f??[],...ab(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return lm([`0x03`,Gg(p?[h,g,_,v]:h)])}function nb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;Yy(e);let d=Qy(l);return lm([`0x02`,Gg([M(n),i?M(i):`0x`,c?M(c):`0x`,s?M(s):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,u??`0x`,d,...ab(e,t)])])}function rb(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;Xy(e);let u=Qy(c);return lm([`0x01`,Gg([M(n),a?M(a):`0x`,l?M(l):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`,u,...ab(e,t)])])}function ib(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;Zy(e);let l=[a?M(a):`0x`,c?M(c):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new Hh({v:t.v});return e})(),r=pp(t.r),i=pp(t.s);l=[...l,M(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,M(n),`0x`,`0x`]);return Gg(l)}function ab(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=pp(n.r),o=pp(n.s);return[typeof i==`number`?i?M(1):`0x`:r===0n?`0x`:r===1n?M(1):r===27n?`0x`:M(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}Ep();function ob(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?bp(e):`0x`,a,r?bp(r):`0x`,...ab({},i)])}return t}nm(),hv();async function sb({address:e,authorization:t,signature:n}){return mv(em(e),await Zg({authorization:t,signature:n}))}Qp();let cb=new Zp(8192);function lb(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(cb.get(n))return cb.get(n);let r=e().finally(()=>cb.delete(n));return cb.set(n,r),r}j(),cg(),zg(),Ep(),wh();function ub(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new xg(Error(`method not supported`),{method:l});return lb(()=>Ry(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case fg.code:throw new fg(t);case pg.code:throw new pg(t);case mg.code:throw new mg(t,{method:n.method});case hg.code:throw new hg(t);case gg.code:throw new gg(t);case _g.code:throw new _g(t);case vg.code:throw new vg(t);case yg.code:throw new yg(t);case bg.code:throw new bg(t);case xg.code:throw new xg(t,{method:n.method});case Sg.code:throw new Sg(t);case Cg.code:throw new Cg(t);case wg.code:throw new wg(t);case Tg.code:throw new Tg(t);case Eg.code:throw new Eg(t);case Dg.code:throw new Dg(t);case Og.code:throw new Og(t);case kg.code:throw new kg(t);case Ag.code:throw new Ag(t);case jg.code:throw new jg(t);case Mg.code:throw new Mg(t);case Ng.code:throw new Ng(t);case Pg.code:throw new Pg(t);case Fg.code:throw new Fg(t);case Ig.code:throw new Ig(t);case 5e3:throw new wg(t);case Lg.code:throw new Lg(t);default:throw e instanceof A?e:new Rg(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof ag){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>db(e)}),{enabled:i,id:i?Cp(`${c}.${Ch(n)}`):void 0})}}function db(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===Sg.code||e.code===gg.code:e instanceof ag&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function fb(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function pb(){return{}}j(),fp(),nh(),Fp(),Ep();function mb(e,t=`hex`){return hb(eh((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new up(e);return Ap(e)}return e})(),{recursiveReadLimit:1/0}),t)}function hb(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Sp(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=gb(e,n,128),i=e.readBytes(r);return t===`hex`?Sp(i):i}return _b(e,gb(e,n,192),t)}function gb(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new A(`Invalid RLP prefix`)}function _b(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(hb(e,n));return i}Sf(),wf();function vb(e){return k(e)&&Cf(e)===32}function yb(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function bb(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let xb=bb();cg(),wh();function Sb(e,t={}){let{url:n,headers:r}=Cb(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await yb(async({signal:e})=>{let t={...l,body:Ch(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??xb.take(),...e})):{jsonrpc:`2.0`,id:i.id??xb.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new sg({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new ag({body:i,details:Ch(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof ag||e instanceof sg?e:new ag({body:i,cause:e,url:n})}}}}function Cb(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}um(),wf(),Ep();function wb(e){let t=typeof e==`string`?Cp(e):typeof e.raw==`string`?e.raw:Sp(e.raw);return sm([Cp(`\u0019Ethereum Signed Message:\n${Cf(t)}`),t])}Lp();function Tb(e,t){return Ip(wb(e),t)}wh(),j();var Eb=class extends A{constructor({domain:e}){super(`Invalid domain \"${Ch(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Db=class extends A{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Ob=class extends A{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};Qf(),Xp(),om(),wf(),Ep(),ym();function kb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(vm);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;M(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!rm(o))throw new Yp({address:o});let c=r.match(_m);if(c){let[e,t]=c;if(t&&Cf(o)!==Number.parseInt(t,10))throw new Gf({expectedSize:Number.parseInt(t,10),givenSize:Cf(o)})}let l=i[r];l&&(jb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Eb({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Db({primaryType:r,types:i})}function Ab({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function jb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Ob({type:e})}Mm(),um(),Ep(),Lp();function Mb(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Ab({domain:t}),...e.types};kb({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Nb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Pb({data:n,primaryType:r,types:i})),Ip(sm(a))}function Nb({domain:e,types:t}){return Pb({data:e,primaryType:`EIP712Domain`,types:t})}function Pb({data:e,primaryType:t,types:n}){return Ip(Fb({data:e,primaryType:t,types:n}))}function Fb({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Ib({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=zb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return bm(r,i)}function Ib({primaryType:e,types:t}){return Ip(bp(Lb({primaryType:e,types:t})))}function Lb({primaryType:e,types:t}){let n=``,r=Rb({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Rb({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Rb({primaryType:e.type,types:t},n);return n}function zb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Ip(Fb({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Ip(r)];if(n===`string`)return[{type:`bytes32`},Ip(bp(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>zb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Ip(bm(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}rt(),O();let Bb=qa(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Vb(e){if(typeof e==`string`){if(D(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Wb(e)}else uc(e.authorization)}function Hb(e){Vb(e);let t=Zr(D(e,-64,-32)),n=D(e,-t-64,-64),r=D(e,0,-t-64),[i,a,o]=Wa(Bb,n);return{authorization:kc({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function Ub(e){try{return Vb(e),!0}catch{return!1}}var Wb=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};Jh(),gm(),yp();function Gb(e){let t=hm(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&vp(t)>=192)return`legacy`;throw new Wh({serializedType:t})}Xp(),Jh(),om(),Sf(),op(),mp(),yp();function Kb(e){let t=Gb(e);return t===`eip1559`?Yb(e):t===`eip2930`?Xb(e):t===`eip4844`?Jb(e):t===`eip7702`?qb(e):Zb(e)}function qb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Gh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:vp(n),type:`eip7702`};return k(s)&&s!==`0x`&&(h.to=s),k(o)&&o!==`0x`&&(h.gas=gp(o)),k(l)&&l!==`0x`&&(h.data=l),k(r)&&(h.nonce=r===`0x`?0:vp(r)),k(c)&&c!==`0x`&&(h.value=gp(c)),k(a)&&a!==`0x`&&(h.maxFeePerGas=gp(a)),k(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=gp(i)),u.length!==0&&u!==`0x`&&(h.accessList=$b(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=ex(d)),qy(h),{...t.length===13?tx(t):void 0,...h}}function Jb(e){let t=Qb(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new Gh({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:vp(a),to:u,type:`eip4844`};return k(l)&&l!==`0x`&&(S.gas=gp(l)),k(f)&&f!==`0x`&&(S.data=f),k(o)&&(S.nonce=o===`0x`?0:vp(o)),k(d)&&d!==`0x`&&(S.value=gp(d)),k(m)&&m!==`0x`&&(S.maxFeePerBlobGas=gp(m)),k(c)&&c!==`0x`&&(S.maxFeePerGas=gp(c)),k(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=gp(s)),p.length!==0&&p!==`0x`&&(S.accessList=$b(p)),y&&b&&x&&(S.sidecars=iv({blobs:y,commitments:b,proofs:x})),Jy(S),{...r.length===14?tx(r):void 0,...S}}function Yb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Gh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:vp(n),type:`eip1559`};return k(s)&&s!==`0x`&&(m.to=s),k(o)&&o!==`0x`&&(m.gas=gp(o)),k(l)&&l!==`0x`&&(m.data=l),k(r)&&(m.nonce=r===`0x`?0:vp(r)),k(c)&&c!==`0x`&&(m.value=gp(c)),k(a)&&a!==`0x`&&(m.maxFeePerGas=gp(a)),k(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=gp(i)),u.length!==0&&u!==`0x`&&(m.accessList=$b(u)),Yy(m),{...t.length===12?tx(t):void 0,...m}}function Xb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Gh({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:vp(n),type:`eip2930`};return k(o)&&o!==`0x`&&(p.to=o),k(a)&&a!==`0x`&&(p.gas=gp(a)),k(c)&&c!==`0x`&&(p.data=c),k(r)&&(p.nonce=r===`0x`?0:vp(r)),k(s)&&s!==`0x`&&(p.value=gp(s)),k(i)&&i!==`0x`&&(p.gasPrice=gp(i)),l.length!==0&&l!==`0x`&&(p.accessList=$b(l)),Xy(p),{...t.length===11?tx(t):void 0,...p}}function Zb(e){let t=mb(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Gh({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(k(a)&&a!==`0x`&&(d.to=a),k(i)&&i!==`0x`&&(d.gas=gp(i)),k(s)&&s!==`0x`&&(d.data=s),k(n)&&(d.nonce=n===`0x`?0:vp(n)),k(o)&&o!==`0x`&&(d.value=gp(o)),k(r)&&r!==`0x`&&(d.gasPrice=gp(r)),Zy(d),t.length===6)return d;let f=k(c)&&c!==`0x`?gp(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new Hh({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Qb(e){return mb(`0x${e.slice(4)}`,`hex`)}function $b(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!rm(r,{strict:!1}))throw new Yp({address:r});t.push({address:r,storageKeys:i.map(e=>vb(e)?e:pp(e))})}return t}function ex(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:vp(r),nonce:a===`0x`?0:vp(a),...tx([o,s,c])})}return t}function tx(e){let t=e.slice(-3),n=t[0]===`0x`||gp(t[0])===0n?27n:28n;return{r:ip(t[1],{size:32}),s:ip(t[2],{size:32}),v:n,yParity:n===27n?0:1}}Av(),Iv(),Qf(),j(),ig(),wv(),Gm(),qv();async function nx(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return Kv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=Wm({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=Bg(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>_f(e,ky,`readContract`)({...f===null?{code:Fv}:{address:f},abi:Tv,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new Mf;if(!a)throw new rg({data:r});let e=Sv({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=Bg(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new A(`multicall results mismatch`);return _}rt(),O();function rx(e){if(D(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new ox(e)}function ix(e){let{data:t,signature:n,to:r}=e;return Br(Ga(qa(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function ax(e){try{return rx(e),!0}catch{return!1}}var ox=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};lc(),yp(),Fp();function sx({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Js.Signature(gp(e),gp(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Ap(o)}Av(),Iv(),ig(),Gv(),Gm(),nm(),hv(),um(),Sf(),yp(),Ep(),Oy();async function cx(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return k(e)?e:typeof e==`object`&&`r`in e&&`s`in e?sx(e):Sp(e)})();try{if(s===`eoa`)try{if(mv(em(n),await Wg({hash:i,signature:c})))return!0}catch{}return Ub(c)?await lx(e,{...t,multicallAddress:o,signature:c}):await ux(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(mv(em(n),await Wg({hash:i,signature:c})))return!0}catch{}if(e instanceof fx)return!1;throw e}}async function lx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Hb(t.signature);if(await Ky(e,{address:n,blockNumber:r,blockTag:i})===lm([`0xef0100`,s.address]))return await dx(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:M(s.r,{size:32}),s:M(s.s,{size:32}),yParity:s.yParity};if(!await sb({address:n,authorization:d}))throw new fx;let f=await _f(e,ky,`readContract`)({...o?{address:o}:{code:Fv},authorizationList:[d],abi:Tv,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Wm({abi:Ov,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new fx}async function ux(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||ax(o)?o:ix({data:i,signature:o,to:r}))(),u=s?{to:s,data:Wm({abi:kv,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Uv({abi:kv,args:[n,a,l],bytecode:Pv}),...c},{data:d}=await _f(e,Sy,`call`)(u).catch(e=>{throw e instanceof Qh?new fx:e});if(_p(d??`0x0`))return!0;throw new fx}async function dx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await _f(e,ky,`readContract`)({address:n,abi:Ov,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof $h?new fx:e})).startsWith(`0x1626ba7e`))return!0;throw new fx}var fx=class extends Error{};function px({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=Wy();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:ub(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function mx(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>px({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}j();var hx=class extends A{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};cg(),ey();function gx(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new hx;let b=Sb(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return px({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=Qv({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new og({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}var _x;function N(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var vx=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}};(_x=globalThis).__zod_globalConfig??(_x.__zod_globalConfig={});let yx=globalThis.__zod_globalConfig;function bx(e){return e&&Object.assign(yx,e),yx}function xx(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Sx(e,t){return typeof t==`bigint`?t.toString():t}function Cx(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function wx(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Tx=Symbol(`evaluating`);function Ex(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Tx)return r===void 0&&(r=Tx,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let Dx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Ox(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function kx(e){if(Ox(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Ox(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Ax=new Set([`string`,`number`,`symbol`]),jx=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Mx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Nx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Px(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Fx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function Ix(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Lx(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Rx(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function zx(e){return typeof e==`string`?e:e?.message}function Bx(e,t,n){let r=e.message?e.message:zx(e.inst?._zod.def?.error?.(e))??zx(t?.error?.(e))??zx(n.customError?.(e))??zx(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function Vx(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let Hx=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Sx,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Ux=N(`$ZodError`,Hx),Wx=N(`$ZodError`,Hx,{Parent:Error}),Gx=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new vx;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Bx(e,a,bx())));throw Dx(t,i?.callee),t}return o.value},Kx=Gx(Wx),qx=(e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Bx(e,a,bx())));throw Dx(t,i?.callee),t}return o.value})(Wx),Jx=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new vx;return a.issues.length?{success:!1,error:new(e??Ux)(a.issues.map(e=>Bx(e,i,bx())))}:{success:!0,data:a.value}})(Wx),Yx=(e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Bx(e,i,bx())))}:{success:!0,data:a.value}})(Wx),Xx=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Gx(e)(t,n,i)})(Wx),Zx=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},Qx=/^-?\\d+n?$/,$x=/^-?\\d+(?:\\.\\d+)?$/,eS=/^(?:true|false)$/i,tS=/^null$/i,nS=/^undefined$/i,rS=N(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),iS={major:4,minor:4,patch:2},aS=N(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=iS;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=Ix(e),i;for(let a of t){if(a._zod.def.when){if(Lx(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new vx;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=Ix(e,t))});else{if(e.issues.length===t)continue;r||=Ix(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Ix(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new vx;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new vx;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ex(e,`~standard`,()=>({validate:t=>{try{let n=Jx(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Yx(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),oS=N(`$ZodString`,(e,t)=>{aS.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Zx(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),sS=N(`$ZodNumber`,(e,t)=>{aS.init(e,t),e._zod.pattern=e._zod.bag.pattern??$x,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),cS=N(`$ZodBoolean`,(e,t)=>{aS.init(e,t),e._zod.pattern=eS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),lS=N(`$ZodBigInt`,(e,t)=>{aS.init(e,t),e._zod.pattern=Qx,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),uS=N(`$ZodUndefined`,(e,t)=>{aS.init(e,t),e._zod.pattern=nS,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),dS=N(`$ZodNull`,(e,t)=>{aS.init(e,t),e._zod.pattern=tS,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),fS=N(`$ZodUnknown`,(e,t)=>{aS.init(e,t),e._zod.parse=e=>e}),pS=N(`$ZodVoid`,(e,t)=>{aS.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function mS(e,t,n){e.issues.length&&t.issues.push(...Rx(n,e.issues)),t.value[n]=e.value}let hS=N(`$ZodArray`,(e,t)=>{aS.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>mS(t,n,e))):mS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function gS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...Rx(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function _S(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Fx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function vS(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>gS(e,n,i,t,u,d))):gS(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let yS=N(`$ZodObject`,(e,t)=>{if(aS.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Cx(()=>_S(t));Ex(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Ox,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>gS(n,t,e,s,r,i))):gS(a,t,e,s,r,i)}return i?vS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function bS(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Ix(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Bx(e,r,bx())))}),t)}let xS=N(`$ZodUnion`,(e,t)=>{aS.init(e,t),Ex(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ex(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ex(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ex(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>wx(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>bS(t,r,e,i)):bS(o,r,e,i)}}),SS=N(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,xS.init(e,t);let n=e._zod.parse;Ex(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Cx(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Ox(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),CS=N(`$ZodTuple`,(e,t)=>{aS.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=wS(n,`optin`),c=wS(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>TS(t,r,e))):TS(a,r,e)}}return o.length?Promise.all(o).then(()=>ES(l,r,n,a,c)):ES(l,r,n,a,c)}});function wS(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function TS(e,t,n){e.issues.length&&t.issues.push(...Rx(n,e.issues)),t.value[n]=e.value}function ES(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...Rx(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}let DS=N(`$ZodRecord`,(e,t)=>{aS.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!kx(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>Bx(e,r,bx())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...Rx(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...Rx(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&$x.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Bx(e,r,bx())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Rx(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Rx(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),OS=N(`$ZodEnum`,(e,t)=>{aS.init(e,t);let n=xx(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ax.has(typeof e)).map(e=>typeof e==`string`?Mx(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),kS=N(`$ZodLiteral`,(e,t)=>{if(aS.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Mx(e):e?Mx(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}});function AS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let jS=N(`$ZodOptional`,(e,t)=>{aS.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ex(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ex(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${wx(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>AS(t,e.value)):AS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),MS=N(`$ZodNullable`,(e,t)=>{aS.init(e,t),Ex(e._zod,`optin`,()=>t.innerType._zod.optin),Ex(e._zod,`optout`,()=>t.innerType._zod.optout),Ex(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${wx(e.source)}|null)$`):void 0}),Ex(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),NS=N(`$ZodPipe`,(e,t)=>{aS.init(e,t),Ex(e._zod,`values`,()=>t.in._zod.values),Ex(e._zod,`optin`,()=>t.in._zod.optin),Ex(e._zod,`optout`,()=>t.out._zod.optout),Ex(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.in,n)):PS(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.out,n)):PS(r,t.out,n)}});function PS(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let FS=N(`$ZodCodec`,(e,t)=>{aS.init(e,t),Ex(e._zod,`values`,()=>t.in._zod.values),Ex(e._zod,`optin`,()=>t.in._zod.optin),Ex(e._zod,`optout`,()=>t.out._zod.optout),Ex(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>IS(e,t,n)):IS(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>IS(e,t,n)):IS(r,t,n)}}});function IS(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>LS(e,r,t.out,n)):LS(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>LS(e,r,t.in,n)):LS(e,r,t.in,n)}}function LS(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let RS=N(`$ZodReadonly`,(e,t)=>{aS.init(e,t),Ex(e._zod,`propValues`,()=>t.innerType._zod.propValues),Ex(e._zod,`values`,()=>t.innerType._zod.values),Ex(e._zod,`optin`,()=>t.innerType?._zod?.optin),Ex(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(zS):zS(r)}});function zS(e){return e.value=Object.freeze(e.value),e}let BS=N(`$ZodTemplateLiteral`,(e,t)=>{aS.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||jx.has(typeof e))n.push(Mx(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),VS=N(`$ZodCustom`,(e,t)=>{rS.init(e,t),aS.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>HS(t,n,r,e));HS(i,n,r,e)}});function HS(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Vx(e))}}function US(e,t){return new e({type:`string`,...Px(t)})}function WS(e,t){return new e({type:`number`,checks:[],...Px(t)})}function GS(e,t){return new e({type:`boolean`,...Px(t)})}function KS(e,t){return new e({type:`bigint`,...Px(t)})}function qS(e,t){return new e({type:`undefined`,...Px(t)})}function JS(e,t){return new e({type:`null`,...Px(t)})}function YS(e){return new e({type:`unknown`})}function XS(e,t){return new e({type:`void`,...Px(t)})}function ZS(e,t,n){let r=Px(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}let QS=N(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);aS.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Kx(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Jx(e,t,n),e.parseAsync=async(t,n)=>qx(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Yx(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Nx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),$S=N(`ZodMiniString`,(e,t)=>{oS.init(e,t),QS.init(e,t)});function P(e){return US($S,e)}let eC=N(`ZodMiniNumber`,(e,t)=>{sS.init(e,t),QS.init(e,t)});function tC(e){return WS(eC,e)}let nC=N(`ZodMiniBoolean`,(e,t)=>{cS.init(e,t),QS.init(e,t)});function rC(e){return GS(nC,e)}let iC=N(`ZodMiniBigInt`,(e,t)=>{lS.init(e,t),QS.init(e,t)});function aC(e){return KS(iC,e)}let oC=N(`ZodMiniUndefined`,(e,t)=>{uS.init(e,t),QS.init(e,t)});function sC(e){return qS(oC,e)}let cC=N(`ZodMiniNull`,(e,t)=>{dS.init(e,t),QS.init(e,t)});function lC(e){return JS(cC,e)}let uC=N(`ZodMiniUnknown`,(e,t)=>{fS.init(e,t),QS.init(e,t)});function dC(){return YS(uC)}let fC=N(`ZodMiniVoid`,(e,t)=>{pS.init(e,t),QS.init(e,t)});function pC(e){return XS(fC,e)}let mC=N(`ZodMiniArray`,(e,t)=>{hS.init(e,t),QS.init(e,t)});function hC(e,t){return new mC({type:`array`,element:e,...Px(t)})}let gC=N(`ZodMiniObject`,(e,t)=>{yS.init(e,t),QS.init(e,t),Ex(e,`shape`,()=>t.shape)});function F(e,t){return new gC({type:`object`,shape:e??{},...Px(t)})}let _C=N(`ZodMiniUnion`,(e,t)=>{xS.init(e,t),QS.init(e,t)});function vC(e,t){return new _C({type:`union`,options:e,...Px(t)})}let yC=N(`ZodMiniDiscriminatedUnion`,(e,t)=>{SS.init(e,t),QS.init(e,t)});function bC(e,t,n){return new yC({type:`union`,options:t,discriminator:e,...Px(n)})}let xC=N(`ZodMiniTuple`,(e,t)=>{CS.init(e,t),QS.init(e,t)});function SC(e,t,n){let r=t instanceof aS;return new xC({type:`tuple`,items:e,rest:r?t:null,...Px(r?n:t)})}let CC=N(`ZodMiniRecord`,(e,t)=>{DS.init(e,t),QS.init(e,t)});function wC(e,t,n){return!t||!t._zod?new CC({type:`record`,keyType:P(),valueType:e,...Px(t)}):new CC({type:`record`,keyType:e,valueType:t,...Px(n)})}let TC=N(`ZodMiniEnum`,(e,t)=>{OS.init(e,t),QS.init(e,t),e.options=Object.values(t.entries)});function EC(e,t){return new TC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Px(t)})}let DC=N(`ZodMiniLiteral`,(e,t)=>{kS.init(e,t),QS.init(e,t)});function I(e,t){return new DC({type:`literal`,values:Array.isArray(e)?e:[e],...Px(t)})}let OC=N(`ZodMiniOptional`,(e,t)=>{jS.init(e,t),QS.init(e,t)});function L(e){return new OC({type:`optional`,innerType:e})}let kC=N(`ZodMiniNullable`,(e,t)=>{MS.init(e,t),QS.init(e,t)});function AC(e){return new kC({type:`nullable`,innerType:e})}let jC=N(`ZodMiniPipe`,(e,t)=>{NS.init(e,t),QS.init(e,t)}),MC=N(`ZodMiniCodec`,(e,t)=>{jC.init(e,t),FS.init(e,t)});function NC(e,t,n){return new MC({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let PC=N(`ZodMiniReadonly`,(e,t)=>{RS.init(e,t),QS.init(e,t)});function R(e){return new PC({type:`readonly`,innerType:e})}let FC=N(`ZodMiniTemplateLiteral`,(e,t)=>{BS.init(e,t),QS.init(e,t)});function IC(e,t){return new FC({type:`template_literal`,parts:e,...Px(t)})}let LC=N(`ZodMiniCustom`,(e,t)=>{VS.init(e,t),QS.init(e,t)});function RC(e,t){return ZS(LC,e??(()=>!0),t)}function zC(e){return e}function BC(e){return e}let z=()=>IC([`0x`,P()],`Expected address`),VC=()=>NC(vC([B(),aC()]),aC(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:Xr(e),encode:e=>E(e)}),B=()=>IC([`0x`,P()],`Expected hex value`),HC=()=>NC(vC([B(),tC()]),tC(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Zr(e),encode:e=>E(e)}),UC=F({address:z(),blockHash:B(),blockNumber:VC(),data:B(),logIndex:HC(),removed:rC(),topics:R(hC(B())),transactionHash:B(),transactionIndex:HC()}),WC=F({blobGasPrice:L(VC()),blobGasUsed:L(VC()),blockHash:B(),blockNumber:VC(),contractAddress:AC(z()),cumulativeGasUsed:VC(),effectiveGasPrice:VC(),feePayer:L(z()),feeToken:L(z()),from:z(),gasUsed:VC(),logs:hC(UC),logsBloom:B(),root:L(B()),status:NC(B(),EC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:AC(z()),transactionHash:B(),transactionIndex:HC(),type:B()}),GC=RC(),KC=vC([I(`secp256k1`),I(`p256`),I(`webAuthn`)]),qC=F({address:z(),chainId:VC(),expiry:vC([HC(),lC(),sC()]),keyId:z(),keyType:KC,limits:L(R(hC(F({token:z(),limit:VC(),period:L(HC())})))),signature:GC}),JC=F({data:L(B()),to:L(z()),value:L(VC())}),YC=F({accessList:L(hC(F({address:z(),storageKeys:hC(B())}))),calls:L(R(hC(JC))),chainId:L(HC()),data:L(B()),feePayer:L(vC([rC(),P()])),feePayerSignature:L(wC(P(),dC())),feeToken:L(z()),from:L(z()),gas:L(VC()),keyAuthorization:L(qC),maxFeePerGas:L(VC()),maxPriorityFeePerGas:L(VC()),nonce:L(HC()),nonceKey:L(VC()),to:L(z()),validAfter:L(HC()),validBefore:L(HC()),value:L(VC())});var XC;(function(e){e.schema=zC({method:I(`eth_accounts`),params:void 0,returns:R(hC(z()))})})(XC||={});var ZC;(function(e){e.schema=zC({method:I(`eth_chainId`),params:void 0,returns:B()})})(ZC||={});var QC;(function(e){e.schema=zC({method:I(`eth_requestAccounts`),params:void 0,returns:R(hC(z()))})})(QC||={});var $C;(function(e){e.schema=zC({method:I(`eth_sendTransaction`),params:R(SC([YC])),returns:B()})})($C||={});var ew;(function(e){let t=F({address:z(),decimals:tC(),direction:EC([`incoming`,`outgoing`]),formatted:P(),name:P(),recipients:R(hC(z())),symbol:P(),value:B()}),n=F({decimals:tC(),formatted:P(),name:P(),symbol:P(),token:z(),value:B()});e.schema=zC({method:I(`eth_fillTransaction`),params:R(SC([YC])),returns:F({capabilities:F({balanceDiffs:L(wC(z(),R(hC(t)))),error:L(F({abiItem:L(wC(P(),dC())),data:L(B()),errorName:P(),message:P()})),fee:L(F({amount:B(),decimals:tC(),formatted:P(),symbol:P()})),requireFunds:L(F({amount:B(),decimals:tC(),formatted:P(),token:z(),symbol:P()})),autoSwap:L(F({maxIn:n,minOut:n,slippage:tC()})),sponsor:L(F({address:z(),name:L(P()),url:L(P())})),sponsored:rC()}),tx:wC(P(),dC())})})})(ew||={});var tw;(function(e){e.schema=zC({method:I(`eth_signTransaction`),params:R(SC([YC])),returns:B()})})(tw||={});var nw;(function(e){e.schema=zC({method:I(`eth_sendTransactionSync`),params:R(SC([YC])),returns:WC})})(nw||={});var rw;(function(e){e.schema=zC({method:I(`eth_signTypedData_v4`),params:R(SC([z(),P()])),returns:B()})})(rw||={});var iw;(function(e){e.schema=zC({method:I(`personal_sign`),params:R(SC([B(),z()])),returns:B()})})(iw||={});let aw=L(F({feePayer:L(vC([rC(),P()])),sync:L(rC())}));var ow;(function(e){e.schema=zC({method:I(`wallet_sendCalls`),params:L(R(SC([F({atomicRequired:L(rC()),calls:R(hC(JC)),capabilities:aw,chainId:L(HC()),from:L(z()),version:L(P())})]))),returns:F({atomic:L(rC()),capabilities:aw,chainId:L(HC()),id:P(),receipts:L(hC(WC)),status:L(tC()),version:L(P())})})})(ow||={});var sw;(function(e){e.schema=zC({method:I(`wallet_getBalances`),params:L(R(SC([F({account:L(z()),chainId:L(HC()),tokens:L(R(hC(z())))})]))),returns:R(hC(F({address:z(),balance:VC(),decimals:tC(),display:P(),name:P(),symbol:P()})))})})(sw||={});var cw;(function(e){e.schema=zC({method:I(`wallet_getCapabilities`),params:L(R(vC([SC([z()]),SC([z(),R(hC(B()))])]))),returns:wC(B(),F({accessKeys:L(F({status:vC([I(`supported`),I(`unsupported`)])})),atomic:F({status:vC([I(`supported`),I(`ready`),I(`unsupported`)])}),feePayer:L(F({status:vC([I(`supported`),I(`unsupported`)])}))}))})})(cw||={});var lw;(function(e){e.parameters=F({address:L(z()),chainId:L(VC()),expiry:tC(),keyType:L(KC),limits:L(R(hC(F({token:z(),limit:VC(),period:L(tC())})))),publicKey:L(B()),scopes:L(R(hC(F({address:z(),selector:L(vC([B(),P()])),recipients:L(R(hC(z())))}))))}),e.returns=F({keyAuthorization:qC,rootAddress:z()}),e.schema=zC({method:I(`wallet_authorizeAccessKey`),params:R(SC([e.parameters])),returns:e.returns})})(lw||={});var uw;(function(e){e.parameters=F({address:L(z()),expiry:tC(),keyType:L(KC),limits:R(hC(F({token:z(),limit:VC(),period:L(tC())}))),publicKey:L(B()),scopes:L(R(hC(F({address:z(),selector:L(vC([B(),P()])),recipients:L(R(hC(z())))}))))})})(uw||={});var dw;(function(e){e.schema=zC({method:I(`wallet_revokeAccessKey`),params:R(SC([F({address:z(),accessKeyAddress:z()})])),returns:void 0})})(dw||={});var fw;(function(e){e.authorizeAccessKey=L(lw.parameters),e.capabilities={request:L(vC([F({digest:L(B()),authorizeAccessKey:e.authorizeAccessKey,method:I(`register`),name:L(P()),userId:L(P())}),F({digest:L(B()),credentialId:L(P()),authorizeAccessKey:e.authorizeAccessKey,method:L(I(`login`)),selectAccount:L(rC())})])),result:F({email:L(AC(P())),keyAuthorization:L(qC),signature:L(B()),username:L(AC(P()))})},e.schema=zC({method:I(`wallet_connect`),params:L(R(SC([F({capabilities:e.capabilities.request,chainId:L(HC()),version:L(P())})]))),returns:F({accounts:R(hC(F({address:z(),capabilities:e.capabilities.result})))})})})(fw||={});var pw;(function(e){let t=L(uw.parameters);e.parameters=F({capabilities:L(vC([F({digest:L(B()),authorizeAccessKey:t,method:I(`register`),name:L(P()),userId:L(P())}),F({digest:L(B()),credentialId:L(P()),authorizeAccessKey:t,method:L(I(`login`)),selectAccount:L(rC())})])),chainId:L(HC()),version:L(P())})})(pw||={});var mw;(function(e){e.schema=zC({method:I(`wallet_disconnect`),params:void 0,returns:void 0})})(mw||={});var hw;(function(e){e.schema=zC({method:I(`wallet_getCallsStatus`),params:L(R(SC([P()]))),returns:F({atomic:rC(),chainId:HC(),id:P(),receipts:L(hC(WC)),status:tC(),version:P()})})})(hw||={});var gw;(function(e){e.parameters=F({feePayer:L(vC([rC(),P()])),to:L(z()),token:L(z()),value:L(P())}),e.schema=zC({method:I(`wallet_send`),params:L(R(SC([e.parameters]))),returns:F({receipt:WC})})})(gw||={});var _w;(function(e){e.schema=zC({method:I(`wallet_switchEthereumChain`),params:R(SC([F({chainId:HC()})])),returns:void 0})})(_w||={});var vw;(function(e){e.schema=zC({method:I(`wallet_deposit`),params:R(SC([F({address:L(z()),chainId:L(HC()),displayName:L(P()),token:L(z()),value:L(P())})])),returns:pC()})})(vw||={}),uw.parameters,pw.parameters;let yw=BC([XC.schema,ZC.schema,ew.schema,QC.schema,$C.schema,nw.schema,tw.schema,rw.schema,iw.schema,lw.schema,fw.schema,vw.schema,mw.schema,sw.schema,hw.schema,cw.schema,dw.schema,gw.schema,ow.schema,_w.schema]),bw=bu();function xw(e){return e.params?F({method:e.method,params:e.params}):F({method:e.method})}let Sw=bC(`method`,yw.map(xw));function Cw(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}var ww=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},Tw=class extends ww{name=`InvalidChallengeError`;title=`Invalid Challenge`;status=402;type=`https://paymentauth.org/problems/invalid-challenge`;constructor(e={}){let{id:t,reason:n}=e,r=t?` \"${t}\"`:``,i=n?`: ${n}`:``;super(`Challenge${r} is invalid${i}.`)}},Ew=class extends ww{name=`PaymentExpiredError`;title=`Payment Expired`;type=`https://paymentauth.org/problems/payment-expired`;constructor(e={}){let{expires:t}=e;super(t?`Payment expired at ${t}.`:`Payment has expired.`)}};function Dw(e,t){if(!e)throw new Tw({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new Tw({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new Ew({expires:e})}var Ow=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function kw(e,t){return e.exec(t)?.groups}let Aw=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,jw=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Mw=/^\\(.+?\\).*?$/,Nw=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function Pw(e){let t=e.type;if(Nw.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Pw(i),r<n-1&&(t+=`, `)}let r=kw(Nw,e.type);return t+=`)${r?.array||``}`,Pw({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function Fw(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Pw(i),r!==n-1&&(t+=`, `)}return t}function Iw(e){return e.type===`function`?`function ${e.name}(${Fw(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Fw(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Fw(e.inputs)})`:e.type===`error`?`error ${e.name}(${Fw(e.inputs)})`:e.type===`constructor`?`constructor(${Fw(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let Lw=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function Rw(e){return Lw.test(e)}function zw(e){return kw(Lw,e)}let Bw=new Set([`memory`,`indexed`,`storage`,`calldata`]),Vw=new Set([`calldata`,`memory`,`storage`]);var Hw=class extends Ow{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Uw=class extends Ow{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},Ww=class extends Ow{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Gw=class extends Ow{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Kw=class extends Ow{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},qw=class extends Ow{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Jw=class extends Ow{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Yw=class extends Ow{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Xw=class extends Ow{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Zw=class extends Ow{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Qw=class extends Ow{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},$w=class extends Ow{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function eT(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let tT=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),nT=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,rT=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,iT=/^u?int$/;function aT(e,t){let n=eT(e,t?.type,t?.structs);if(tT.has(n))return tT.get(n);let r=Mw.test(e),i=kw(r?rT:nT,e);if(!i)throw new Gw({param:e});if(i.name&&lT(i.name))throw new Kw({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=oT(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(aT(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(iT.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!sT(c))throw new Uw({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new qw({param:e,type:t?.type,modifier:i.modifier});if(Vw.has(i.modifier)&&!uT(c,!!i.array))throw new Jw({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return tT.set(n,u),u}function oT(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?oT(o,[...t,n.trim()]):oT(o,t,`${n}${i}`,r);case`(`:return oT(o,t,`${n}${i}`,r+1);case`)`:return oT(o,t,`${n}${i}`,r-1);default:return oT(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new $w({current:n,depth:r});return t.push(n.trim()),t}function sT(e){return e===`address`||e===`bool`||e===`function`||e===`string`||Aw.test(e)||jw.test(e)}let cT=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function lT(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||Aw.test(e)||jw.test(e)||cT.test(e)}function uT(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function dT(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Rw(n))continue;let i=zw(n);if(!i)throw new Xw({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=aT(t,{type:`struct`});o.push(n)}if(!o.length)throw new Zw({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=pT(a,t)}return r}let fT=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function pT(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Mw.test(i.type))r.push(i);else{let e=kw(fT,i.type);if(!e?.type)throw new Yw({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Qw({type:o});r.push({...i,type:`tuple${a??``}`,components:pT(t[o],t,new Set([...n,o]))})}else if(sT(o))r.push(i);else throw new Hw({type:o})}}return r}function mT(e){let t=[];if(typeof e==`string`){let n=oT(e),r=n.length;for(let e=0;e<r;e++)t.push(aT(n[e],{modifiers:Bw}))}else{let n=dT(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(Rw(r))continue;let a=oT(r),o=a.length;for(let e=0;e<o;e++)t.push(aT(a[e],{modifiers:Bw,structs:n}))}}if(t.length===0)throw new Ww({params:e});return t}var hT,gT=o((()=>{hT=`0.1.1`}));function _T(){return hT}var vT=o((()=>{gT()}));function yT(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?yT(e.cause,t):t?null:e}var V,bT=o((()=>{vT(),V=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return yT(this,e)}},Object.defineProperty(V,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${_T()}`}}),V.setStaticOptions(V.defaultStaticOptions)}));function xT(e,t){if(xE(e)>t)throw new PE({givenSize:xE(e),maxSize:t})}function ST(e,t){if(typeof t==`number`&&t>0&&t>xE(e)-1)throw new FE({offset:t,position:`start`,size:xE(e)})}function CT(e,t,n){if(typeof t==`number`&&typeof n==`number`&&xE(e)!==n-t)throw new FE({offset:n,position:`end`,size:xE(e)})}function wT(e){if(e>=DT.zero&&e<=DT.nine)return e-DT.zero;if(e>=DT.A&&e<=DT.F)return e-(DT.A-10);if(e>=DT.a&&e<=DT.f)return e-(DT.a-10)}function TT(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new IE({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function ET(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var DT,OT=o((()=>{LE(),DT={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function kT(e,t){if(YT(e)>t)throw new cE({givenSize:YT(e),maxSize:t})}function AT(e,t){if(typeof t==`number`&&t>0&&t>YT(e)-1)throw new lE({offset:t,position:`start`,size:YT(e)})}function jT(e,t,n){if(typeof t==`number`&&typeof n==`number`&&YT(e)!==n-t)throw new lE({offset:n,position:`end`,size:YT(e)})}function MT(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new uE({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function NT(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var PT=o((()=>{dE()}));function FT(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>FT(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${FT(r)}`),t},[]).join(`,`)}}`}function IT(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(RT)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function LT(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+RT:n,n)}var RT,zT=o((()=>{RT=`#__bigint`}));function BT(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new aE(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new oE(e)}function VT(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function HT(e){return e instanceof Uint8Array?WT(e):Array.isArray(e)?WT(new Uint8Array(e)):e}function UT(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(kT(n,t.size),KT(n,t.size)):n}function WT(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=rE[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(kT(r,t.size),qT(r,t.size)):r}function H(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new iE({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?KT(s,r):s}function GT(e,t={}){return WT(nE.encode(e),t)}function KT(e,t){return MT(e,{dir:`left`,size:t})}function qT(e,t){return MT(e,{dir:`right`,size:t})}function JT(e){return WT(bE(e))}function U(e,t,n,r={}){let{strict:i}=r;AT(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&jT(a,t,n),a}function YT(e){return Math.ceil((e.length-2)/2)}function XT(e){return NT(e,{dir:`left`})}function ZT(e,t={}){let{signed:n}=t;t.size&&kT(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function QT(e,t={}){return gE(e,t)}function $T(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:ZT(e,t))}function eE(e,t={}){let{size:n}=t,r=gE(e);return n&&(xT(r,n),r=OE(r)),new TextDecoder().decode(r)}function tE(e,t={}){let{strict:n=!1}=t;try{return BT(e,{strict:n}),!0}catch{return!1}}var nE,rE,iE,aE,oE,sE,cE,lE,uE,dE=o((()=>{LE(),bT(),OT(),PT(),zT(),nE=new TextEncoder,rE=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),iE=class extends V{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},aE=class extends V{constructor(e){super(`Value \\`${typeof e==`object`?LT(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},oE=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},sE=class extends V{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},cE=class extends V{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},lE=class extends V{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},uE=class extends V{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function fE(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new NE(e)}function pE(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function mE(e){return e instanceof Uint8Array?e:typeof e==`string`?gE(e):hE(e)}function hE(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function gE(e,t={}){let{size:n}=t,r=e;n&&(kT(e,n),r=qT(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=wT(i.charCodeAt(t++)),r=wT(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new V(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function _E(e,t={}){let{size:n}=t,r=jE.encode(e);return typeof n==`number`?(xT(r,n),yE(r,n)):r}function vE(e,t){return rr(e,t)}function yE(e,t){return TT(e,{dir:`right`,size:t})}function bE(e){return crypto.getRandomValues(new Uint8Array(e))}function xE(e){return e.length}function SE(e,t,n,r={}){let{strict:i}=r;ST(e,t);let a=e.slice(t,n);return i&&CT(a,t,n),a}function CE(e,t={}){let{size:n}=t;return n!==void 0&&xT(e,n),ZT(WT(e,t),t)}function wE(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(xT(r,n),r=DE(r)),r.length>1||r[0]>1)throw new ME(r);return!!r[0]}function TE(e,t={}){let{size:n}=t;return n!==void 0&&xT(e,n),$T(WT(e,t),t)}function EE(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(xT(r,n),r=OE(r)),AE.decode(r)}function DE(e){return ET(e,{dir:`left`})}function OE(e){return ET(e,{dir:`right`})}function kE(e){try{return fE(e),!0}catch{return!1}}var AE,jE,ME,NE,PE,FE,IE,LE=o((()=>{xr(),bT(),dE(),OT(),PT(),zT(),AE=new TextDecoder,jE=new TextEncoder,ME=class extends V{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},NE=class extends V{constructor(e){super(`Value \\`${typeof e==`object`?LT(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},PE=class extends V{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},FE=class extends V{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},IE=class extends V{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));At(),Dn(),LE(),dE();function RE(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(mE(e));return n===`Bytes`?r:WT(r)}function zE(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=kt(Hn,mE(e),mE(t));return r===`Bytes`?i:WT(i)}function BE(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(mE(e));return n===`Bytes`?r:WT(r)}function VE(e){return tE(e)&&YT(e)===32}let HE={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;LE(),bT(),dE(),zT();function UE(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new XE({prefix:r,cause:new QE});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new XE({prefix:r,cause:new ZE});return}throw new YE({publicKey:e})}function WE(e){let t=(()=>{if(tE(e))return KE(e);if(kE(e))return GE(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return UE(t),t}function GE(e){return KE(WT(e))}function KE(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new $E({publicKey:e});return e.length===130?{prefix:4,x:BigInt(U(e,0,32)),y:BigInt(U(e,32,64))}:e.length===132?{prefix:Number(U(e,0,1)),x:BigInt(U(e,1,33)),y:BigInt(U(e,33,65))}:{prefix:Number(U(e,0,1)),x:BigInt(U(e,1,33))}}function qE(e,t={}){return gE(JE(e,t))}function JE(e,t={}){UE(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return VT(a?H(n,{size:1}):`0x`,H(r,{size:32}),typeof i==`bigint`?H(i,{size:32}):`0x`)}var YE=class extends V{constructor({publicKey:e}){super(`Value \\`${LT(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},XE=class extends V{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},ZE=class extends V{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},QE=class extends V{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},$E=class extends V{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${YT(HT(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};LE(),bT();let eD=/^0x[a-fA-F0-9]{40}$/;function tD(e,t={}){let{strict:n=!0}=t;if(!eD.test(e))throw new sD({address:e,cause:new cD});if(n){if(e.toLowerCase()===e)return;if(nD(e)!==e)throw new sD({address:e,cause:new lD})}}function nD(e){if(HE.has(e))return HE.get(e);tD(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=RE(_E(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return HE.set(e,i),i}function rD(e,t={}){let{checksum:n=!1}=t;return tD(e),n?nD(e):e}function iD(e,t={}){return rD(`0x${RE(`0x${JE(e).slice(4)}`).substring(26)}`,t)}function aD(e,t){return tD(e,{strict:!1}),tD(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function oD(e,t={}){let{strict:n=!0}=t??{};try{return tD(e,{strict:n}),!0}catch{return!1}}var sD=class extends V{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},cD=class extends V{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},lD=class extends V{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};bT();function uD(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new V(`Unable to normalize signature.`);return i}function dD(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return oD(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>dD(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>dD(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function fD(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return fD(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&oD(n[r],{strict:!1}))return o}}bT(),dE();function pD(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=tE(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?mD(e)===U(t,0,4):e.type===`event`?gD(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new vD({name:t});if(o.length===1)return{...o[0],...i?{hash:gD(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:gD(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?dD(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=fD(e.inputs,s.inputs,r);if(t)throw new _D({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new vD({name:t});return{...c,...i?{hash:gD(c)}:{}}}function mD(...e){return U(gD((()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})()),0,4)}function hD(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})();return uD(typeof t==`string`?t:Iw(t))}function gD(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:RE(GT(hD(t)))}var _D=class extends V{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${uD(Iw(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${uD(Iw(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},vD=class extends V{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let yD=/^(.*)\\[([0-9]*)\\]$/,bD=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,xD=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let SD=2n**256n-1n;LE(),bT(),dE();function CD(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=VD(t.type);if(a){let[n,o]=a;return TD(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return kD(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return wD(e,{checksum:r});if(t.type===`bool`)return ED(e);if(t.type.startsWith(`bytes`))return DD(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return OD(e,t);if(t.type===`string`)return AD(e,{staticPosition:i});throw new iO(t.type)}function wD(e,t={}){let{checksum:n=!1}=t;return[(e=>n?nD(e):e)(WT(SE(e.readBytes(32),-20))),32]}function TD(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+TE(e.readBytes(32)),i=n+32;e.setPosition(n);let o=TE(e.readBytes(32)),s=HD(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=CD(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(HD(t)){let n=a+TE(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=CD(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=CD(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function ED(e){return[wE(e.readBytes(32),{size:32}),32]}function DD(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=TE(e.readBytes(32));e.setPosition(n+t);let r=TE(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[WT(i),32]}return[WT(e.readBytes(Number.parseInt(i,10),32)),32]}function OD(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?CE(i,{signed:n}):TE(i,{signed:n}),32]}function kD(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(HD(t)){let n=i+TE(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=CD(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=CD(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function AD(e,{staticPosition:t}){let n=t+TE(e.readBytes(32));e.setPosition(n);let r=TE(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=EE(DE(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function jD({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(MD({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function MD({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=VD(r.type);if(i){let[t,a]=i;return FD(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return BD(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return PD(n,{checksum:e});if(r.type===`bool`)return LD(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=xD.exec(r.type)??[];return RD(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return ID(n,{type:r.type});if(r.type===`string`)return zD(n);throw new iO(r.type)}function ND(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=YT(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(H(t+i,{size:32})),r.push(s),i+=YT(s)):n.push(s)}return VT(...n,...r)}function PD(e,t){let{checksum:n=!1}=t;return tD(e,{strict:n}),{dynamic:!1,encoded:KT(e.toLowerCase())}}function FD(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new rO(e);if(!a&&e.length!==r)throw new eO({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=MD({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ND(s);if(a){let t=H(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?VT(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:VT(...s.map(({encoded:e})=>e))}}function ID(e,{type:t}){let[,n]=t.split(`bytes`),r=YT(e);if(!n){let t=e;return r%32!=0&&(t=qT(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:VT(KT(H(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new tO({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:qT(e)}}function LD(e){if(typeof e!=`boolean`)throw new V(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:KT(UT(e))}}function RD(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new iE({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:H(e,{size:32,signed:t})}}function zD(e){let t=GT(e),n=Math.ceil(YT(t)/32),r=[];for(let e=0;e<n;e++)r.push(qT(U(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:VT(qT(H(YT(t),{size:32})),...r)}}function BD(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=MD({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ND(a):VT(...a.map(({encoded:e})=>e))}}function VD(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function HD(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(HD);let n=VD(e.type);return!!(n&&HD({...e,type:n[1]}))}bT();let UD={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new qD({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new KD({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new GD({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new GD({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function WD(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(UD);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var GD=class extends V{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},KD=class extends V{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},qD=class extends V{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};LE(),bT(),dE();function JD(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?gE(t):t,o=WD(a);if(xE(a)===0&&e.length>0)throw new $D;if(xE(a)&&xE(a)<32)throw new QD({data:typeof t==`string`?t:WT(t),parameters:e,size:xE(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=CD(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function YD(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new nO({expectedLength:e.length,givenLength:t.length});let i=ND(jD({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function XD(e,t){if(e.length!==t.length)throw new nO({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(XD.encode(i,a))}return VT(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return tD(e),KT(e.toLowerCase(),r?32:0)}if(e===`string`)return GT(n);if(e===`bytes`)return n;if(e===`bool`)return KT(UT(n),r?32:1);let i=e.match(xD);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return H(n,{size:r?32:o,signed:t===`int`})}let a=e.match(bD);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new tO({expectedSize:Number.parseInt(t,10),value:n});return qT(n,r?32:0)}let o=e.match(yD);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:VT(...i)}throw new iO(e)}e.encode=t})(XD||={});function ZD(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?mT(e):e}var QD=class extends V{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${Fw(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},$D=class extends V{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},eO=class extends V{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},tO=class extends V{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${YT(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},nO=class extends V{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},rO=class extends V{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},iO=class extends V{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};bT(),dE();function aO(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&tD(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>VE(e)?e:XT(e))})}return t}function oO(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(YT(r[e])!==32)throw new sO({storageKey:r[e]});n&&tD(n,{strict:!1}),t.push([n,r])}return t}var sO=class extends V{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${YT(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};LE(),bT(),dE();function cO(e){return lO(e,`Hex`)}function lO(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return uO(WD((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new sE(e);return gE(e)}return e})(),{recursiveReadLimit:1/0}),n)}function uO(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?WT(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=dO(e,n,128),i=e.readBytes(r);return t===`Hex`?WT(i):i}return fO(e,dO(e,n,192),t)}function dO(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new V(`Invalid RLP prefix`)}function fO(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(uO(e,n));return i}function pO(e,t){let{as:n}=t,r=hO(e),i=WD(new Uint8Array(r.length));return r.encode(i),n===`Hex`?WT(i.bytes):i.bytes}function mO(e,t={}){let{as:n=`Hex`}=t;return pO(e,{as:n})}function hO(e){return Array.isArray(e)?gO(e.map(e=>hO(e))):_O(e)}function gO(e){let t=e.reduce((e,t)=>e+t.length,0),n=vO(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function _O(e){let t=typeof e==`string`?gE(e):e,n=vO(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function vO(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new V(`Length is too large.`)}bT(),dE(),zT();function yO(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new NO({signature:e});if(e.r<0n||e.r>SD)throw new PO({value:e.r});if(e.s<0n||e.s>SD)throw new FO({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new IO({value:e.yParity})}function bO(e){return xO(WT(e))}function xO(e){if(e.length!==130&&e.length!==132)throw new MO({signature:e});let t=BigInt(U(e,0,32)),n=BigInt(U(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return AO(t)}catch{throw new IO({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function SO(e){if(e.r!==void 0&&e.s!==void 0)return CO(e)}function CO(e){let t=typeof e==`string`?xO(e):e instanceof Uint8Array?bO(e):typeof e.r==`string`?TO(e):e.v?wO(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return yO(t),t}function wO(e){return{r:e.r,s:e.s,yParity:AO(e.v)}}function TO(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=AO(t)),typeof n!=`number`)throw new IO({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function EO(e){let[t,n,r]=e;return CO({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function DO(e){yO(e);let t=e.r,n=e.s;return VT(H(t,{size:32}),H(n,{size:32}),typeof e.yParity==`number`?H(jO(e.yParity),{size:1}):`0x`)}function OO(e){let{r:t,s:n,yParity:r}=e;return{r:H(t,{size:32}),s:H(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function kO(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:XT(H(t)),n===0n?`0x`:XT(H(n))]}function AO(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new LO({value:e})}function jO(e){if(e===0)return 27;if(e===1)return 28;throw new IO({value:e})}var MO=class extends V{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${YT(HT(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},NO=class extends V{constructor({signature:e}){super(`Signature \\`${LT(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},PO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},FO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},IO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},LO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};dE();function RO(e,t={}){return typeof e.chainId==`string`?zO(e):{...e,...t.signature}}function zO(e){let{address:t,chainId:n,nonce:r}=e,i=SO(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function BO(e){return e.map(zO)}function VO(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:H(n),nonce:H(r),...OO(i)}}function HO(e){return e.map(VO)}LE();let UO=new TextEncoder,WO=new TextDecoder,GO=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),KO={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function qO(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=GO[r>>18],i[t+1]=GO[r>>12&63],i[t+2]=GO[r>>6&63],i[t+3]=GO[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=WO.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function JO(e,t={}){return qO(_E(e),t)}function YO(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);UO.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(KO[r[e]]<<18)+(KO[r[e+1]]<<12)+(KO[r[e+2]]<<6)+KO[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function XO(e){return EE(YO(e))}let ZO={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},QO={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function $O(e,t={}){if(!e)return null;let n=SO(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=BO(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=QO[e.type]??e.type),n&&(r.v=jO(n.yParity)),r}function ek(e){return{address:e.address,amount:H(e.amount),index:H(e.index),validatorIndex:H(e.validatorIndex)}}var tk=o((()=>{dE()}));function nk(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:H(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:H(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:H(e.gasLimit)},...typeof e.number==`bigint`&&{number:H(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:H(e.prevRandao)},...typeof e.time==`bigint`&&{time:H(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(ek)}}}var rk=o((()=>{dE(),tk()}));lc(),LE(),dE();function ik(e){return iD(ak(e))}function ak(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return WE(new Js.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(HT(t).substring(2)))}function ok(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?aD(t,ik({payload:r,signature:a})):Js.verify(a,mE(r),qE(i),...n?[{prehash:!0,lowS:!0}]:[])}LE();function sk(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Pl.verify(i,n instanceof Uint8Array?n:gE(n),JE(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}dE();function ck(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=HO(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=H(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=H(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=H(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=H(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=H(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=H(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=H(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=H(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=ZO[e.type]||e.type),e.value!==void 0&&(t.value=H(e.value)),t}bT();let lk={wei:0,gwei:9,szabo:12,finney:15,ether:18};function uk(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function dk(e,t=`wei`){return uk(e,lk.gwei-lk[t])}bT();var fk=class extends V{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${dk(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},pk=class extends V{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},mk=class extends V{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},hk=class extends V{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${dk(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${dk(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};LE(),bT(),dE();function gk(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=gE(s);if(u.length<37||a!==void 0&&!vE(u.slice(0,32),BE(GT(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||WT(YO(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:sk({hash:!0,payload:pE(u,BE(_E(c),{as:`Bytes`})),publicKey:i,signature:o})}function _k(e){return gk(e)}function vk(e){let t=XO(e);return JSON.parse(t)}function yk(e){return JO(FT(e),{pad:!1,url:!0})}Object.freeze({status:`aborted`});function W(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var bk=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},xk=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};let Sk={};function Ck(e){return e&&Object.assign(Sk,e),Sk}function wk(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Tk(e,t){return typeof t==`bigint`?t.toString():t}function Ek(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Dk(e){return e==null}function Ok(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let kk=Symbol(`evaluating`);function Ak(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==kk)return r===void 0&&(r=kk,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let jk=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Mk(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Nk(e){if(Mk(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Mk(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Pk=new Set([`string`,`number`,`symbol`]);function Fk(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Ik(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Lk(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Rk(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function zk(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Bk(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Vk(e){return typeof e==`string`?e:e?.message}function Hk(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Vk(e.inst?._zod.def?.error?.(e))??Vk(t?.error?.(e))??Vk(n.customError?.(e))??Vk(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Uk(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Wk(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let Gk=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Tk,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Kk=W(`$ZodError`,Gk),qk=W(`$ZodError`,Gk,{Parent:Error}),Jk=(e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new bk;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Hk(e,a,Ck())));throw jk(t,i?.callee),t}return o.value})(qk),Yk=(e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Hk(e,a,Ck())));throw jk(t,i?.callee),t}return o.value})(qk),Xk=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new bk;return a.issues.length?{success:!1,error:new(e??Kk)(a.issues.map(e=>Hk(e,i,Ck())))}:{success:!0,data:a.value}})(qk),Zk=(e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Hk(e,i,Ck())))}:{success:!0,data:a.value}})(qk),Qk=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},$k=/^-?\\d+(?:\\.\\d+)?$/,eA=/^(?:true|false)$/i,tA=W(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),nA=W(`$ZodCheckMaxLength`,(e,t)=>{var n;tA.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Dk(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Uk(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),rA=W(`$ZodCheckMinLength`,(e,t)=>{var n;tA.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Dk(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Uk(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),iA=W(`$ZodCheckStringFormat`,(e,t)=>{var n,r;tA.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),aA=W(`$ZodCheckRegex`,(e,t)=>{iA.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),oA={major:4,minor:3,patch:6},sA=W(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=oA;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=zk(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new bk;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=zk(e,t))});else{if(e.issues.length===t)continue;r||=zk(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(zk(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new bk;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new bk;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ak(e,`~standard`,()=>({validate:t=>{try{let n=Xk(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Zk(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),cA=W(`$ZodString`,(e,t)=>{sA.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Qk(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),lA=W(`$ZodNumber`,(e,t)=>{sA.init(e,t),e._zod.pattern=e._zod.bag.pattern??$k,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),uA=W(`$ZodBoolean`,(e,t)=>{sA.init(e,t),e._zod.pattern=eA,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),dA=W(`$ZodUnknown`,(e,t)=>{sA.init(e,t),e._zod.parse=e=>e});function fA(e,t,n){e.issues.length&&t.issues.push(...Bk(n,e.issues)),t.value[n]=e.value}let pA=W(`$ZodArray`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>fA(t,n,e))):fA(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function mA(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...Bk(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function hA(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Rk(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function gA(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>mA(e,n,i,t,u))):mA(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let _A=W(`$ZodObject`,(e,t)=>{if(sA.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Ek(()=>hA(t));Ak(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Mk,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>mA(n,t,e,s,r))):mA(i,t,e,s,r)}return i?gA(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function vA(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!zk(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Hk(e,r,Ck())))}),t)}let yA=W(`$ZodUnion`,(e,t)=>{sA.init(e,t),Ak(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ak(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ak(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ak(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Ok(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>vA(t,i,e,a)):vA(s,i,e,a)}}),bA=W(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,yA.init(e,t);let n=e._zod.parse;Ak(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Ek(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Mk(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),xA=W(`$ZodRecord`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Nk(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...Bk(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...Bk(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&$k.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Hk(e,r,Ck())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Bk(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Bk(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),SA=W(`$ZodEnum`,(e,t)=>{sA.init(e,t);let n=wk(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Pk.has(typeof e)).map(e=>typeof e==`string`?Fk(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),CA=W(`$ZodLiteral`,(e,t)=>{if(sA.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Fk(e):e?Fk(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),wA=W(`$ZodTransform`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new xk(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new bk;return n.value=i,n}});function TA(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let EA=W(`$ZodOptional`,(e,t)=>{sA.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ak(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ak(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ok(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>TA(t,e.value)):TA(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),DA=W(`$ZodPipe`,(e,t)=>{sA.init(e,t),Ak(e._zod,`values`,()=>t.in._zod.values),Ak(e._zod,`optin`,()=>t.in._zod.optin),Ak(e._zod,`optout`,()=>t.out._zod.optout),Ak(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>OA(e,t.in,n)):OA(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>OA(e,t.out,n)):OA(r,t.out,n)}});function OA(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let kA=W(`$ZodCustom`,(e,t)=>{tA.init(e,t),sA.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>AA(t,n,r,e));AA(i,n,r,e)}});function AA(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Wk(e))}}function jA(e,t){return new e({type:`string`,...Lk(t)})}function MA(e,t){return new e({type:`number`,checks:[],...Lk(t)})}function NA(e,t){return new e({type:`boolean`,...Lk(t)})}function PA(e){return new e({type:`unknown`})}function FA(e,t){return new nA({check:`max_length`,...Lk(t),maximum:e})}function IA(e,t){return new rA({check:`min_length`,...Lk(t),minimum:e})}function LA(e,t){return new aA({check:`string_format`,format:`regex`,...Lk(t),pattern:e})}function RA(e,t,n){let r=Lk(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function zA(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Lk(n)})}let BA=W(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);sA.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Jk(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Xk(e,t,n),e.parseAsync=async(t,n)=>Yk(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Zk(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Ik(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),VA=W(`ZodMiniString`,(e,t)=>{cA.init(e,t),BA.init(e,t)});function HA(e){return jA(VA,e)}let UA=W(`ZodMiniNumber`,(e,t)=>{lA.init(e,t),BA.init(e,t)});function WA(e){return MA(UA,e)}let GA=W(`ZodMiniBoolean`,(e,t)=>{uA.init(e,t),BA.init(e,t)});function KA(e){return NA(GA,e)}let qA=W(`ZodMiniUnknown`,(e,t)=>{dA.init(e,t),BA.init(e,t)});function JA(){return PA(qA)}let YA=W(`ZodMiniArray`,(e,t)=>{pA.init(e,t),BA.init(e,t)});function XA(e,t){return new YA({type:`array`,element:e,...Lk(t)})}let ZA=W(`ZodMiniObject`,(e,t)=>{_A.init(e,t),BA.init(e,t),Ak(e,`shape`,()=>t.shape)});function QA(e,t){return new ZA({type:`object`,shape:e??{},...Lk(t)})}let $A=W(`ZodMiniUnion`,(e,t)=>{yA.init(e,t),BA.init(e,t)});function ej(e,t){return new $A({type:`union`,options:e,...Lk(t)})}let tj=W(`ZodMiniDiscriminatedUnion`,(e,t)=>{bA.init(e,t),BA.init(e,t)});function nj(e,t,n){return new tj({type:`union`,options:t,discriminator:e,...Lk(n)})}let rj=W(`ZodMiniRecord`,(e,t)=>{xA.init(e,t),BA.init(e,t)});function ij(e,t,n){return new rj({type:`record`,keyType:e,valueType:t,...Lk(n)})}let aj=W(`ZodMiniEnum`,(e,t)=>{SA.init(e,t),BA.init(e,t),e.options=Object.values(t.entries)});function oj(e,t){return new aj({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Lk(t)})}let sj=W(`ZodMiniLiteral`,(e,t)=>{CA.init(e,t),BA.init(e,t)});function cj(e,t){return new sj({type:`literal`,values:Array.isArray(e)?e:[e],...Lk(t)})}let lj=W(`ZodMiniTransform`,(e,t)=>{wA.init(e,t),BA.init(e,t)});function uj(e){return new lj({type:`transform`,transform:e})}let dj=W(`ZodMiniOptional`,(e,t)=>{EA.init(e,t),BA.init(e,t)});function G(e){return new dj({type:`optional`,innerType:e})}let fj=W(`ZodMiniPipe`,(e,t)=>{DA.init(e,t),BA.init(e,t)});function pj(e,t){return new fj({type:`pipe`,in:e,out:t})}let mj=W(`ZodMiniCustom`,(e,t)=>{kA.init(e,t),BA.init(e,t)});function hj(e,t){return RA(mj,e??(()=>!0),t)}function gj(e,t={}){return zA(mj,e,t)}function _j(){return HA().check(LA(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function vj(){return HA().check(LA(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function yj(){return HA().check(LA(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function bj(){return HA().check(LA(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let xj=QA({description:G(HA()),digest:G(HA().check(LA(/^sha-256=/,`Invalid digest format`))),expires:G(vj()),id:HA(),intent:HA(),method:HA(),opaque:G(ij(HA(),HA())),realm:HA(),request:ij(HA(),JA())});function Sj(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=l?Fj({...e,expires:u,...i&&{opaque:i}},{secretKey:l}):e.id;return xj.parse({id:d,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i&&{opaque:i}})}function Cj(e,t){let n=wj(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=Tj(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return Sj({...a,request:vk(r),...i&&{meta:vk(i)}},t)}function wj(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!Oj(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function Tj(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=Ej(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function Ej(e,t){if(e[t]===`\"`)return Dj(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function Dj(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function Oj(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function kj(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return Cj(n,t)}function Aj(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return kj(e.headers,t)}function jj(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return Mj(e.headers,t)}function Mj(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return Nj(n,t)}function Nj(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return Cj(e.slice(r,a).replace(/,\\s*$/,``),t)})}function Pj(e){return[e.realm,e.method,e.intent,yk(e.request),e.expires??``,e.digest??``,e.opaque?yk(e.opaque):``].join(`|`)}function Fj(e,t){let n=Pj(e);return qO(zE(_E(t.secretKey),_E(n),{as:`Bytes`}),{url:!0,pad:!1})}function Ij(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=Hj(n)}return t}function Lj(e,t){let n=Ij(e),r=Jj(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[Hj(e)]??1,index:t}));return{definition:r,entries:i,header:zj(i),keys:n}}function Rj(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>Kj(e,t))}function zj(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${Qj(n)}`}).join(`, `)}function Bj(e,t){return e.map((e,n)=>{let r=Uj(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function Vj(e,t,n){let r=new Map;for(let e of t){let t=Hj(e);r.has(t)||r.set(t,e)}let i=Bj(e.filter(e=>r.has(Hj(e))),n)[0];if(i)return{challenge:i,method:r.get(Hj(i))}}function Hj(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function Uj(e,t){let n;for(let r of t){if(!Wj(e,r))continue;let t={...r,specificity:Gj(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function Wj(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function Gj(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function Kj(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);$j(r,`method`),$j(i,`intent`);let a=1;for(let t of qj(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=Xj(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function qj(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function Jj(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>Hj(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=Yj(t,`payment preference \"${e}\"`)}return a}function Yj(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return Zj(e,t)}function Xj(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return Zj(Number(e),t)}function Zj(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function Qj(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function $j(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let eM=Symbol.for(`mppx.fetch.wrapper`),tM;function nM(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??Lj(i),s=cM(r),c=async(e,t)=>{let r=sM(e,t?.headers),c=r.has(`Accept-Payment`),l=dM(r,o),u=oM(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=jj(d),g=Vj(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g;_.expires&&Dw(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>uM(_,v,e??f)}):void 0)??await uM(_,v,f);return lM(y),s(u.input,{...m,headers:aM(u.headers,y)})};return c[eM]=s,c}function rM(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);tM||=globalThis.fetch,globalThis.fetch=nM({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(mM()?`same-origin`:`always`),fetch:globalThis.fetch})}function iM(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function aM(e,t){let n=iM(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function oM(e,t,n,r,i,a){let o=!!r&&!i&&fM(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function sM(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function cM(e){let t=e;for(;t[eM];)t=t[eM];return t}function lM(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function uM(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function dM(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:Rj(n),header:n}}catch{return t}}function fM(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=hM(e);return t===`same-origin`?mM()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>pM(n,e))}function pM(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function mM(){return globalThis.location!==void 0}function hM(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,mM()?globalThis.location.href:void 0)}var gM=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},_M=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function vM(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new gM;try{let e=XO(t[1]),n=JSON.parse(e);return{challenge:xj.parse({...n.challenge,...n.challenge.opaque!==void 0&&{opaque:typeof n.challenge.opaque==`string`?vk(n.challenge.opaque):n.challenge.opaque},request:vk(n.challenge.request)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new _M}}function yM(e){let{opaque:t,request:n,...r}=e.challenge,i={challenge:{...r,...t!==void 0&&{opaque:yk(t)},request:yk(n)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${JO(JSON.stringify(i),{pad:!1,url:!0})}`}function bM(e){return e}function xM(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}var SM,CM=o((()=>{SM=`1.2.3`})),wM,TM=o((()=>{CM(),wM=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${SM}`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function EM(e,t){return e.exec(t)?.groups}var DM,OM,kM,AM=o((()=>{DM=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,OM=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,kM=/^\\(.+?\\).*?$/}));function jM(e){let t=e.type;if(MM.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=jM(i),r<n-1&&(t+=`, `)}let r=EM(MM,e.type);return t+=`)${r?.array||``}`,jM({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var MM,NM=o((()=>{AM(),MM=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function PM(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=jM(i),r!==n-1&&(t+=`, `)}return t}var FM=o((()=>{NM()}));function IM(e){return e.type===`function`?`function ${e.name}(${PM(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${PM(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${PM(e.inputs)})`:e.type===`error`?`error ${e.name}(${PM(e.inputs)})`:e.type===`constructor`?`constructor(${PM(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var LM=o((()=>{FM()}));function RM(e){return ZM.test(e)}function zM(e){return EM(ZM,e)}function BM(e){return QM.test(e)}function VM(e){return EM(QM,e)}function HM(e){return $M.test(e)}function UM(e){return EM($M,e)}function WM(e){return eN.test(e)}function GM(e){return EM(eN,e)}function KM(e){return tN.test(e)}function qM(e){return EM(tN,e)}function JM(e){return nN.test(e)}function YM(e){return EM(nN,e)}function XM(e){return rN.test(e)}var ZM,QM,$M,eN,tN,nN,rN,iN,aN,oN=o((()=>{AM(),ZM=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,QM=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,$M=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,eN=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,tN=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,nN=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,rN=/^receive\\(\\) external payable$/,iN=new Set([`indexed`]),aN=new Set([`calldata`,`memory`,`storage`])})),sN,cN,lN=o((()=>{TM(),sN=class extends wM{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},cN=class extends wM{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),uN,dN,fN,pN,mN,hN=o((()=>{TM(),uN=class extends wM{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},dN=class extends wM{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},fN=class extends wM{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},pN=class extends wM{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},mN=class extends wM{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),gN,_N,vN,yN=o((()=>{TM(),gN=class extends wM{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},_N=class extends wM{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},vN=class extends wM{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),bN,xN=o((()=>{TM(),bN=class extends wM{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),SN,CN=o((()=>{TM(),SN=class extends wM{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function wN(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var TN,EN=o((()=>{TN=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]])}));function DN(e,t={}){if(HM(e))return ON(e,t);if(BM(e))return kN(e,t);if(RM(e))return AN(e,t);if(KM(e))return jN(e,t);if(JM(e))return MN(e);if(XM(e))return{type:`receive`,stateMutability:`payable`};throw new _N({signature:e})}function ON(e,t={}){let n=UM(e);if(!n)throw new gN({signature:e,type:`function`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{modifiers:aN,structs:t,type:`function`}));let o=[];if(n.returns){let e=PN(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(NN(e[n],{modifiers:aN,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function kN(e,t={}){let n=VM(e);if(!n)throw new gN({signature:e,type:`event`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{modifiers:iN,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function AN(e,t={}){let n=zM(e);if(!n)throw new gN({signature:e,type:`error`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function jN(e,t={}){let n=qM(e);if(!n)throw new gN({signature:e,type:`constructor`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function MN(e){let t=YM(e);if(!t)throw new gN({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function NN(e,t){let n=wN(e,t?.type,t?.structs);if(TN.has(n))return TN.get(n);let r=kM.test(e),i=EM(r?zN:RN,e);if(!i)throw new uN({param:e});if(i.name&&IN(i.name))throw new dN({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=PN(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(NN(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(BN.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!FN(c))throw new cN({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new fN({param:e,type:t?.type,modifier:i.modifier});if(aN.has(i.modifier)&&!LN(c,!!i.array))throw new pN({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return TN.set(n,u),u}function PN(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?PN(o,[...t,n.trim()]):PN(o,t,`${n}${i}`,r);case`(`:return PN(o,t,`${n}${i}`,r+1);case`)`:return PN(o,t,`${n}${i}`,r-1);default:return PN(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new SN({current:n,depth:r});return t.push(n.trim()),t}function FN(e){return e===`address`||e===`bool`||e===`function`||e===`string`||DM.test(e)||OM.test(e)}function IN(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||DM.test(e)||OM.test(e)||VN.test(e)}function LN(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var RN,zN,BN,VN,HN=o((()=>{AM(),lN(),hN(),yN(),CN(),EN(),oN(),RN=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,zN=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,BN=/^u?int$/,VN=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function UN(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!WM(n))continue;let i=GM(n);if(!i)throw new gN({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=NN(t,{type:`struct`});o.push(n)}if(!o.length)throw new vN({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=WN(a,t)}return r}function WN(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(kM.test(i.type))r.push(i);else{let e=EM(GN,i.type);if(!e?.type)throw new mN({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new bN({type:o});r.push({...i,type:`tuple${a??``}`,components:WN(t[o],t,new Set([...n,o]))})}else if(FN(o))r.push(i);else throw new sN({type:o})}}return r}var GN,KN=o((()=>{AM(),lN(),hN(),yN(),xN(),oN(),HN(),GN=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function qN(e){let t=UN(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];WM(r)||n.push(DN(r,t))}return n}var JN=o((()=>{oN(),KN(),HN()})),YN=o((()=>{TM(),LM(),NM(),FM(),JN(),lN(),oN(),KN(),HN(),hN(),yN(),CN(),xN()}));function XN(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function ZN(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new AP(e.type);return`${e.name}(${QN(e.inputs,{includeName:t})})`}function QN(e,{includeName:t=!1}={}){return e?e.map(e=>$N(e,{includeName:t})).join(t?`, `:`,`):``}function $N(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${QN(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var eP=o((()=>{jP()}));function K(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var tP=o((()=>{}));function nP(e){return K(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var rP=o((()=>{tP()})),iP,aP=o((()=>{iP=`2.47.6`}));function oP(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?oP(e.cause,t):t?null:e}var sP,q,J=o((()=>{aP(),sP={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${iP}`},q=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=sP.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...sP.version?[`Version: ${sP.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=iP}walk(e){return oP(this,e)}}})),cP,lP,uP,dP,fP,pP,mP,hP,gP,_P,vP,yP,bP,xP,SP,CP,wP,TP,EP,DP,OP,kP,AP,jP=o((()=>{eP(),rP(),J(),cP=class extends q{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},lP=class extends q{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},uP=class extends q{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${QN(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`AbiDecodingDataSizeTooSmallError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=t,this.size=n}},dP=class extends q{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},fP=class extends q{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},pP=class extends q{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${nP(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},mP=class extends q{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},hP=class extends q{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},gP=class extends q{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},_P=class extends q{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},vP=class extends q{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},yP=class extends q{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},bP=class extends q{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},xP=class extends q{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},SP=class extends q{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},CP=class extends q{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ZN(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${ZN(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},wP=class extends q{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},TP=class extends q{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${QN(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`DecodeLogDataMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=t,this.params=n,this.size=r}},EP=class extends q{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${ZN(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},DP=class extends q{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},OP=class extends q{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},kP=class extends q{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},AP=class extends q{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),MP,NP,PP,FP=o((()=>{J(),MP=class extends q{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},NP=class extends q{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},PP=class extends q{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function IP(e,{dir:t,size:n=32}={}){return typeof e==`string`?LP(e,{dir:t,size:n}):RP(e,{dir:t,size:n})}function LP(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new NP({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function RP(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new NP({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var zP=o((()=>{FP()})),BP,VP,HP,UP,WP,GP=o((()=>{J(),BP=class extends q{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},VP=class extends q{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},HP=class extends q{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},UP=class extends q{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},WP=class extends q{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function KP(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var qP=o((()=>{}));function JP(e,{size:t}){if(nP(e)>t)throw new WP({givenSize:nP(e),maxSize:t})}function Y(e,t={}){let{signed:n}=t;t.size&&JP(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function YP(e,t={}){let n=e;if(t.size&&(JP(n,{size:t.size}),n=KP(n)),KP(n)===`0x00`)return!1;if(KP(n)===`0x01`)return!0;throw new HP(n)}function XP(e,t={}){let n=Y(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new BP({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var ZP=o((()=>{GP(),rP(),qP()}));function QP(e,t={}){return typeof e==`number`||typeof e==`bigint`?X(e,t):typeof e==`string`?tF(e,t):typeof e==`boolean`?$P(e,t):eF(e,t)}function $P(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(JP(n,{size:t.size}),IP(n,{size:t.size})):n}function eF(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=nF[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(JP(r,{size:t.size}),IP(r,{dir:`right`,size:t.size})):r}function X(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new BP({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?IP(s,{size:r}):s}function tF(e,t={}){return eF(rF.encode(e),t)}var nF,rF,iF=o((()=>{GP(),zP(),ZP(),nF=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),rF=new TextEncoder}));function aF(e,t={}){return typeof e==`number`||typeof e==`bigint`?lF(e,t):typeof e==`boolean`?oF(e,t):K(e)?cF(e,t):uF(e,t)}function oF(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(JP(n,{size:t.size}),IP(n,{size:t.size})):n}function sF(e){if(e>=fF.zero&&e<=fF.nine)return e-fF.zero;if(e>=fF.A&&e<=fF.F)return e-(fF.A-10);if(e>=fF.a&&e<=fF.f)return e-(fF.a-10)}function cF(e,t={}){let n=e;t.size&&(JP(n,{size:t.size}),n=IP(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=sF(r.charCodeAt(t++)),i=sF(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new q(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function lF(e,t){return cF(X(e,t))}function uF(e,t={}){let n=dF.encode(e);return typeof t.size==`number`?(JP(n,{size:t.size}),IP(n,{dir:`right`,size:t.size})):n}var dF,fF,pF=o((()=>{J(),tP(),zP(),ZP(),iF(),dF=new TextEncoder,fF={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function mF(e,t){let n=t||`hex`,r=Tn(K(e,{strict:!1})?aF(e):e);return n===`bytes`?r:QP(r)}var hF=o((()=>{Dn(),tP(),pF(),iF()}));function gF(e){return _F(e)}var _F,vF=o((()=>{pF(),hF(),_F=e=>mF(aF(e))}));function yF(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new q(`Unable to normalize signature.`);return i}var bF=o((()=>{J()})),xF,SF=o((()=>{YN(),bF(),xF=e=>yF(typeof e==`string`?e:IM(e))}));function CF(e){return gF(xF(e))}var wF=o((()=>{vF(),SF()})),TF,EF=o((()=>{wF(),TF=CF})),DF,OF=o((()=>{J(),DF=class extends q{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),kF,AF=o((()=>{kF=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function jF(e,t){if(NF.has(`${e}.${t}`))return NF.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=mF(uF(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return NF.set(`${e}.${t}`,a),a}function MF(e,t){if(!FF(e,{strict:!1}))throw new DF({address:e});return jF(e,t)}var NF,PF=o((()=>{OF(),pF(),hF(),AF(),RF(),NF=new kF(8192)}));function FF(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(LF.has(r))return LF.get(r);let i=IF.test(e)?e.toLowerCase()===e?!0:n?jF(e)===e:!0:!1;return LF.set(r,i),i}var IF,LF,RF=o((()=>{AF(),PF(),IF=/^0x[a-fA-F0-9]{40}$/,LF=new kF(8192)}));function zF(e){return typeof e[0]==`string`?VF(e):BF(e)}function BF(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function VF(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var HF=o((()=>{}));function UF(e,t,n,{strict:r}={}){return K(e,{strict:!1})?qF(e,t,n,{strict:r}):KF(e,t,n,{strict:r})}function WF(e,t){if(typeof t==`number`&&t>0&&t>nP(e)-1)throw new MP({offset:t,position:`start`,size:nP(e)})}function GF(e,t,n){if(typeof t==`number`&&typeof n==`number`&&nP(e)!==n-t)throw new MP({offset:n,position:`end`,size:nP(e)})}function KF(e,t,n,{strict:r}={}){WF(e,t);let i=e.slice(t,n);return r&&GF(i,t,n),i}function qF(e,t,n,{strict:r}={}){WF(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&GF(i,t,n),i}var JF=o((()=>{FP(),tP(),rP()})),YF,XF,ZF=o((()=>{YF=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,XF=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/}));function QF(e,t){if(e.length!==t.length)throw new mP({expectedLength:e.length,givenLength:t.length});let n=tI($F({params:e,values:t}));return n.length===0?`0x`:n}function $F({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(eI({param:e[r],value:t[r]}));return n}function eI({param:e,value:t}){let n=lI(e.type);if(n){let[r,i]=n;return rI(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return cI(t,{param:e});if(e.type===`address`)return nI(t);if(e.type===`bool`)return aI(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=XF.exec(e.type)??[];return oI(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return iI(t,{param:e});if(e.type===`string`)return sI(t);throw new DP(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function tI(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=nP(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(X(t+i,{size:32})),r.push(s),i+=nP(s)):n.push(s)}return zF([...n,...r])}function nI(e){if(!FF(e))throw new DF({address:e});return{dynamic:!1,encoded:LP(e.toLowerCase())}}function rI(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new kP(e);if(!r&&e.length!==t)throw new fP({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=eI({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=tI(a);if(r){let t=X(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?zF([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:zF(a.map(({encoded:e})=>e))}}function iI(e,{param:t}){let[,n]=t.type.split(`bytes`),r=nP(e);if(!n){let t=e;return r%32!=0&&(t=LP(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:zF([LP(X(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new pP({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:LP(e,{dir:`right`})}}function aI(e){if(typeof e!=`boolean`)throw new q(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:LP($P(e))}}function oI(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new BP({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:X(e,{size:32,signed:t})}}function sI(e){let t=tF(e),n=Math.ceil(nP(t)/32),r=[];for(let e=0;e<n;e++)r.push(LP(UF(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:zF([LP(X(nP(t),{size:32})),...r])}}function cI(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=eI({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?tI(r):zF(r.map(({encoded:e})=>e))}}function lI(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var uI=o((()=>{jP(),OF(),J(),GP(),RF(),HF(),zP(),rP(),JF(),iF(),ZF()})),dI,fI=o((()=>{JF(),wF(),dI=e=>UF(CF(e),0,4)}));function pI(e){let{abi:t,args:n=[],name:r}=e,i=K(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?dI(e)===r:e.type===`event`?TF(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?mI(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=hI(e.inputs,o.inputs,n);if(t)throw new CP({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function mI(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return FF(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,r)=>n===`object`&&mI(Object.values(e)[r],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>mI(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function hI(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return hI(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&FF(n[r],{strict:!1}))return o}}var gI=o((()=>{jP(),tP(),RF(),EF(),fI()}));function _I(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var vI=o((()=>{}));function yI(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=pI({abi:t,args:n,name:r});if(!e)throw new bP(r,{docsPath:bI});i=e}if(i.type!==`function`)throw new bP(void 0,{docsPath:bI});return{abi:[i],functionName:dI(ZN(i))}}var bI,xI=o((()=>{jP(),fI(),eP(),gI(),bI=`/docs/contract/encodeFunctionData`}));function SI(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:yI(e),i=n[0];return VF([r,(`inputs`in i&&i.inputs?QF(i.inputs,t??[]):void 0)??`0x`])}var CI=o((()=>{HF(),uI(),xI()})),wI,TI,EI,DI=o((()=>{wI={1:\"An `assert` condition failed.\",17:`Arithmetic operation resulted in underflow or overflow.`,18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:`Attempted to convert to an invalid type.`,34:`Attempted to access a storage byte array that is incorrectly encoded.`,49:\"Performed `.pop()` on an empty array\",50:`Array index is out of bounds.`,65:`Allocated too much memory or created an array which is too large.`,81:`Attempted to call a zero-initialized variable of internal function type.`},TI={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},EI={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),OI,kI,AI,jI=o((()=>{J(),OI=class extends q{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},kI=class extends q{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},AI=class extends q{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function MI(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(NI);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var NI,PI=o((()=>{jI(),NI={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new AI({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new kI({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new OI({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new OI({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function FI(e,t={}){return t.size!==void 0&&JP(e,{size:t.size}),Y(eF(e,t),t)}function II(e,t={}){let n=e;if(t.size!==void 0&&(JP(n,{size:t.size}),n=KP(n)),n.length>1||n[0]>1)throw new VP(n);return!!n[0]}function LI(e,t={}){return t.size!==void 0&&JP(e,{size:t.size}),XP(eF(e,t),t)}function RI(e,t={}){let n=e;return t.size!==void 0&&(JP(n,{size:t.size}),n=KP(n,{dir:`right`})),new TextDecoder().decode(n)}var zI=o((()=>{GP(),qP(),ZP(),iF()}));function BI(e,t){let n=typeof t==`string`?cF(t):t,r=MI(n);if(nP(n)===0&&e.length>0)throw new dP;if(nP(t)&&nP(t)<32)throw new uP({data:typeof t==`string`?t:eF(t),params:e,size:nP(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=VI(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function VI(e,t,{staticPosition:n}){let r=lI(t.type);if(r){let[i,a]=r;return UI(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return qI(e,t,{staticPosition:n});if(t.type===`address`)return HI(e);if(t.type===`bool`)return WI(e);if(t.type.startsWith(`bytes`))return GI(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return KI(e,t);if(t.type===`string`)return JI(e,{staticPosition:n});throw new OP(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function HI(e){return[jF(eF(KF(e.readBytes(32),-20))),32]}function UI(e,t,{length:n,staticPosition:r}){if(!n){let n=r+LI(e.readBytes(ZI)),i=n+XI;e.setPosition(n);let a=LI(e.readBytes(XI)),o=YI(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=VI(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(YI(t)){let i=r+LI(e.readBytes(ZI)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=VI(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=VI(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function WI(e){return[II(e.readBytes(32),{size:32}),32]}function GI(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=LI(e.readBytes(32));e.setPosition(n+t);let r=LI(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[eF(i),32]}return[eF(e.readBytes(Number.parseInt(i,10),32)),32]}function KI(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?FI(i,{signed:n}):LI(i,{signed:n}),32]}function qI(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(YI(t)){let o=n+LI(e.readBytes(ZI));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=VI(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=VI(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function JI(e,{staticPosition:t}){let n=t+LI(e.readBytes(32));e.setPosition(n);let r=LI(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=RI(KP(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function YI(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(YI);let n=lI(e.type);return!!(n&&YI({...e,type:n[1]}))}var XI,ZI,QI=o((()=>{jP(),PF(),PI(),rP(),JF(),qP(),zI(),pF(),iF(),uI(),XI=32,ZI=32}));function $I(e){let{abi:t,data:n,cause:r}=e,i=UF(n,0,4);if(i===`0x`)throw new dP({cause:r});let a=[...t||[],TI,EI].find(e=>e.type===`error`&&i===dI(ZN(e)));if(!a)throw new _P(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?BI(a.inputs,UF(n,4)):void 0,errorName:a.name}}var eL=o((()=>{DI(),jP(),JF(),fI(),QI(),eP()})),tL,nL=o((()=>{tL=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function rL({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if(`name`in e&&`inputs`in e&&e.inputs)return`${n?e.name:``}(${e.inputs.map((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?tL(t[n]):t[n]}`).join(`, `)})`}var iL=o((()=>{nL()})),aL,oL,sL=o((()=>{aL={gwei:9,wei:18},oL={ether:-9,wei:9}}));function cL(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var lL=o((()=>{}));function uL(e,t=`wei`){return cL(e,aL[t])}var dL=o((()=>{sL(),lL()}));function fL(e,t=`wei`){return cL(e,oL[t])}var pL=o((()=>{sL(),lL()}));function mL(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function hL(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=mL(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=mL(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var gL,_L,vL=o((()=>{J(),gL=class extends q{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},_L=class extends q{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function yL(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var bL,xL,SL,CL,wL,TL,EL=o((()=>{dL(),pL(),J(),bL=class extends q{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},xL=class extends q{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,yL(e),`}`,``,`To infer the type, either provide:`,\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},SL=class extends q{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},CL=class extends q{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},wL=class extends q{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},TL=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=yL({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${uL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${fL(o)} gwei`,maxFeePerGas:s!==void 0&&`${fL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${fL(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),DL,OL,kL=o((()=>{DL=e=>e,OL=e=>e})),AL,jL,ML,NL,PL,FL,IL=o((()=>{vI(),DI(),eL(),eP(),iL(),gI(),dL(),pL(),jP(),J(),vL(),EL(),kL(),AL=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=yL({from:(t?_I(t):void 0)?.address,to:u,value:d!==void 0&&`${uL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${fL(o)} gwei`,maxFeePerGas:s!==void 0&&`${fL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${fL(c)} gwei`,nonce:l});f&&(p+=`\\n${hL(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},jL=class extends q{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=pI({abi:t,args:n,name:a}),c=s?rL({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?ZN(s,{includeName:!0}):void 0,u=yL({address:r&&DL(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),Object.defineProperty(this,`abi`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`args`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`contractAddress`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`formattedArgs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`functionName`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`sender`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},ML=class extends q{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=$I({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=wI[e]}else{let e=n?ZN(n,{includeName:!0}):void 0,t=n&&a?rL({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof _P&&(l=a.signature,s=[`Unable to decode signature \"${l}\" as it was not found on the provided ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`reason`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.raw=t,this.reason=c,this.signature=l}},NL=class extends q{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},PL=class extends q{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},FL=class extends q{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),LL,RL,zL,BL=o((()=>{nL(),J(),kL(),LL=class extends q{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${OL(a)}`,e&&`Request body: ${tL(e)}`].filter(Boolean),name:`HttpRequestError`}),Object.defineProperty(this,`body`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`headers`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`status`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=i,this.url=a}},RL=class extends q{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${OL(n)}`,`Request body: ${tL(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},zL=class extends q{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${OL(t)}`,`Request body: ${tL(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),VL,HL,UL,WL,GL,KL,qL,JL,YL,XL,ZL,QL,$L,eR,tR,nR,rR,iR,aR,oR,sR,cR,lR,uR,dR,fR,pR,mR,hR,gR,_R=o((()=>{J(),BL(),VL=-1,HL=class extends q{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof RL?e.code:t??VL}},UL=class extends HL{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},WL=class e extends HL{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(WL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),GL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(GL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),KL=class e extends HL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(KL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),qL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(qL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),JL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(JL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),YL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(YL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),XL=class e extends HL{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(XL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),ZL=class e extends HL{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(ZL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),QL=class e extends HL{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(QL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),$L=class e extends HL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty($L,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),eR=class e extends HL{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(eR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),tR=class e extends HL{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(tR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),nR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(nR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),rR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(rR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),iR=class e extends UL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(iR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),aR=class e extends UL{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(aR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),oR=class e extends UL{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(oR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),sR=class e extends UL{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(sR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),cR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(cR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),lR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(lR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),uR=class e extends UL{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(uR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),dR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(dR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),fR=class e extends UL{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(fR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),pR=class e extends UL{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(pR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),mR=class e extends UL{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(mR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),hR=class e extends UL{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(hR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),gR=class extends HL{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));jP(),J(),IL(),BL(),_R();function vR(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof FL?e:e instanceof q?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new jL(e instanceof dP?new NL({functionName:a,cause:e}):[3,JL.code].includes(c)&&(l||u||d||f)||c===YL.code&&u===`execution reverted`&&l?new ML({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof RL?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}PF(),hF();function yR(e){return jF(`0x${mF(`0x${e.substring(4)}`).substring(26)}`)}tP(),rP(),ZP(),iF();async function bR({hash:e,signature:t}){let n=K(e)?e:QP(e),{secp256k1:r}=await Promise.resolve().then(()=>(lc(),Ms));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=xR(Number(a??i));return new r.Signature(Y(e),Y(n)).addRecoveryBit(o)}let e=K(t)?t:QP(t);if(nP(e)!==65)throw Error(`invalid signature length`);let n=xR(XP(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function xR(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function SR({hash:e,signature:t}){return yR(await bR({hash:e,signature:t}))}J(),PI(),pF(),iF();function CR(e,t=`hex`){let n=wR(e),r=MI(new Uint8Array(n.length));return n.encode(r),t===`hex`?eF(r.bytes):r.bytes}function wR(e){return Array.isArray(e)?TR(e.map(e=>wR(e))):ER(e)}function TR(e){let t=e.reduce((e,t)=>e+t.length,0),n=DR(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function ER(e){let t=typeof e==`string`?cF(e):e,n=DR(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function DR(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new q(`Length is too large.`)}HF(),pF(),iF(),hF();function OR(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=mF(VF([`0x05`,CR([t?X(t):`0x`,i,n?X(n):`0x`])]));return r===`bytes`?cF(a):a}async function kR(e){let{authorization:t,signature:n}=e;return SR({hash:OR(t),signature:n??t})}dL(),pL(),J(),EL();var AR=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=yL({from:t?.address,to:u,value:d!==void 0&&`${uL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${fL(o)} gwei`,maxFeePerGas:s!==void 0&&`${fL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${fL(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},jR,MR,NR,PR,FR,IR,LR,RR,zR,BR,VR,HR,UR=o((()=>{pL(),J(),jR=class extends q{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(jR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(jR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),MR=class extends q{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${fL(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(MR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),NR=class extends q{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${fL(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(NR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/}),PR=class extends q{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(PR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),FR=class extends q{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(FR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),IR=class extends q{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(IR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),LR=class extends q{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(LR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),RR=class extends q{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(RR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),zR=class extends q{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(zR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),BR=class extends q{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(BR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),VR=class extends q{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${fL(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${fL(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(VR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),HR=class extends q{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function WR(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof q?e.walk(e=>e?.code===jR.code):e;return r instanceof q?new jR({cause:e,message:r.details}):jR.nodeMessage.test(n)?new jR({cause:e,message:e.details}):MR.nodeMessage.test(n)?new MR({cause:e,maxFeePerGas:t?.maxFeePerGas}):NR.nodeMessage.test(n)?new NR({cause:e,maxFeePerGas:t?.maxFeePerGas}):PR.nodeMessage.test(n)?new PR({cause:e,nonce:t?.nonce}):FR.nodeMessage.test(n)?new FR({cause:e,nonce:t?.nonce}):IR.nodeMessage.test(n)?new IR({cause:e,nonce:t?.nonce}):LR.nodeMessage.test(n)?new LR({cause:e}):RR.nodeMessage.test(n)?new RR({cause:e,gas:t?.gas}):zR.nodeMessage.test(n)?new zR({cause:e,gas:t?.gas}):BR.nodeMessage.test(n)?new BR({cause:e}):VR.nodeMessage.test(n)?new VR({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new HR({cause:e})}var GR=o((()=>{J(),UR()}));UR(),GR();function KR(e,{docsPath:t,...n}){return new AR((()=>{let t=WR(e,n);return t instanceof HR?e:t})(),{docsPath:t,...n})}function qR(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var JR=o((()=>{}));function YR(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var XR=o((()=>{}));function ZR(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=QR(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>eF(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=X(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=X(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=X(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=X(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=X(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=X(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=$R[e.type]),e.value!==void 0&&(n.value=X(e.value)),n}function QR(e){return e.map(e=>({address:e.address,r:e.r?X(BigInt(e.r)):e.r,s:e.s?X(BigInt(e.s)):e.s,chainId:X(e.chainId),nonce:X(e.nonce),...e.yParity===void 0?{}:{yParity:X(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:X(e.v)}:{}}))}var $R,ez,tz=o((()=>{iF(),XR(),$R={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},ez=YR(`transactionRequest`,ZR)}));function nz(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new PP({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new PP({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function rz(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=X(t)),n!==void 0&&(o.nonce=X(n)),r!==void 0&&(o.state=nz(r)),i!==void 0){if(o.state)throw new _L;o.stateDiff=nz(i)}return o}function iz(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!FF(n,{strict:!1}))throw new DF({address:n});if(t[n])throw new gL({address:n});t[n]=rz(r)}return t}var az=o((()=>{OF(),FP(),vL(),RF(),iF()})),oz,sz=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),oz=2n**256n-1n}));function cz(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?_I(t):void 0;if(a&&!FF(a.address))throw new DF({address:a.address});if(i&&!FF(i))throw new DF({address:i});if(n&&n>oz)throw new MR({maxFeePerGas:n});if(r&&n&&r>n)throw new VR({maxFeePerGas:n,maxPriorityFeePerGas:r})}var lz=o((()=>{vI(),sz(),OF(),UR(),RF()}));pL(),J();var uz=class extends q{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},dz=class extends q{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},fz=class extends q{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${fL(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};J();var pz=class extends q{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};ZP(),XR();let mz={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function hz(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?XP(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?XP(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?mz[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=_z(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let gz=YR(`transaction`,hz);function _z(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function vz(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:hz(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}iF();async function yz(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:X(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new pz({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||vz)(s,`getBlock`)}async function bz(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}ZP();async function xz(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await XN(e,yz,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?Y(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):XN(e,yz,`getBlock`)({}),XN(e,bz,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new dz;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function Sz(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new uz;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await XN(e,yz,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new dz;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await xz(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await XN(e,bz,`getGasPrice`)({}))}}ZP(),iF();async function Cz(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return XP(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?X(r):n]},{dedupe:!!r}))}pF(),iF();function wz(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>cF(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>eF(e))}pF(),iF();function Tz(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>cF(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>cF(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>eF(e))}tP(),pF(),iF();function Ez(e,t){let n=t||`hex`,r=Hn(K(e,{strict:!1})?aF(e):e);return n===`bytes`?r:QP(r)}iF();function Dz(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Ez(t,`bytes`);return i.set([n],0),r===`bytes`?i:eF(i)}function Oz(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Dz({commitment:e,to:r,version:n}));return i}let kz=4096,Az=32*kz;Az*6-1-1*kz*6,J();var jz=class extends q{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Mz=class extends q{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},Nz=class extends q{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Pz=class extends q{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};PI(),rP(),pF(),iF();function Fz(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?cF(e.data):e.data,r=nP(n);if(!r)throw new Mz;if(r>761855)throw new jz({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=MI(new Uint8Array(Az)),t=0;for(;t<kz;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>eF(e.bytes))}function Iz(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Fz({data:t,to:r}),a=e.commitments??wz({blobs:i,kzg:n,to:r}),o=e.proofs??Tz({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}EL();function Lz(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new xL({transaction:e})}UR(),EL(),GR();function Rz(e,{docsPath:t,...n}){return new TL((()=>{let t=WR(e,n);return t instanceof HR?e:t})(),{docsPath:t,...n})}ZP();async function zz(e){return XP(await e.request({method:`eth_chainId`},{dedupe:!0}))}vI(),JR(),tz(),lz();async function Bz(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=_I(n),r=a?a.id:await XN(e,zz,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();cz(t);let x=a?.formatters?.transactionRequest?.format,S=(x||ZR)({...qR(y,{format:x}),account:n?_I(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||hz)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await XN(e,yz,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new uz;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw Rz(n,{...t,chain:e.chain})}}vI(),AF(),lz();let Vz=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Hz=new Map,Uz=new kF(128);async function Wz(e,t){let n=t;n.account??=e.account,n.parameters??=Vz;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await XN(e,zz,`getChainId`)({}),c):n.chainId)}let u=r&&_I(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||Uz.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await XN(e,Bz,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return Uz.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&Uz.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await XN(e,yz,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await XN(e,Cz,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=wz({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Oz({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Iz({blobs:p,commitments:e,proofs:Tz({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=Lz(n)}catch{let t=Hz.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Hz.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await Sz(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new fz({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new dz;if(n.gasPrice===void 0){let{gasPrice:t}=await Sz(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await XN(e,Gz,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),cz(n),delete n.parameters,n}vI(),J(),iF(),JR(),tz(),az(),lz();async function Gz(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?_I(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await kR({authorization:t.authorizationList[0]}).catch(()=>{throw new q(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await Wz(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?X(u):void 0)||d,ee=iz(b);cz(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||ZR)({...qR(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw KR(n,{...t,account:i,chain:e.chain})}}function Kz(e,t){if(!FF(e,{strict:!1}))throw new DF({address:e});if(!FF(t,{strict:!1}))throw new DF({address:t});return e.toLowerCase()===t.toLowerCase()}var qz=o((()=>{OF(),RF()}));function Jz(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}jP(),jI(),rP(),EF(),QI(),eP();let Yz=`/docs/contract/decodeEventLog`;function Xz(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new vP({docsPath:Yz});let c=t.find(e=>e.type===`event`&&o===TF(ZN(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new yP(o,{docsPath:Yz});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new EP({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=Zz({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=BI(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof uP||e instanceof kI?new TP({abiItem:c,data:n,params:g,size:nP(n)}):e}else if(a)throw new TP({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Zz({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(BI([e],t)||[])[0]}qz(),pF(),hF(),EF();function Qz(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:TF(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Jz(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=Xz({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Xz({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!$z({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function $z(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?Kz(t,n):e.type===`string`||e.type===`bytes`?mF(aF(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function eB(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=pI({abi:t,args:n,name:r});if(!e)throw new bP(r,{docsPath:tB});a=e}if(a.type!==`function`)throw new bP(void 0,{docsPath:tB});if(!a.outputs)throw new xP(a.name,{docsPath:tB});let o=BI(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var tB,nB=o((()=>{jP(),QI(),gI(),tB=`/docs/contract/decodeFunctionResult`})),rB,iB,aB,oB,sB,cB=o((()=>{rB=[{inputs:[{components:[{name:`target`,type:`address`},{name:`allowFailure`,type:`bool`},{name:`callData`,type:`bytes`}],name:`calls`,type:`tuple[]`}],name:`aggregate3`,outputs:[{components:[{name:`success`,type:`bool`},{name:`returnData`,type:`bytes`}],name:`returnData`,type:`tuple[]`}],stateMutability:`view`,type:`function`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],iB=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],aB=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...aB],[...aB],oB=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],sB=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),lB=o((()=>{})),uB,dB,fB,pB,mB=o((()=>{uB=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,dB=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,fB=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,pB=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),hB,gB,_B,vB,yB,bB=o((()=>{J(),hB=class extends q{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},gB=class extends q{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},_B=class extends q{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},vB=class extends q{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},yB=class extends q{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function xB(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new cP({docsPath:SB});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new lP({docsPath:SB});return VF([r,QF(i.inputs,n)])}var SB,CB=o((()=>{jP(),HF(),uI(),SB=`/docs/contract/encodeDeployData`}));function wB({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new hB({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new hB({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var TB=o((()=>{bB()}));function EB(e,{docsPath:t,...n}){return new AL((()=>{let t=WR(e,n);return t instanceof HR?e:t})(),{docsPath:t,...n})}var DB=o((()=>{IL(),UR(),GR()}));function OB(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var kB=o((()=>{}));function AB({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>jB.delete(t),s=()=>c().map(({args:e})=>e),c=()=>jB.get(t)||[],l=e=>jB.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=OB();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var jB,MB=o((()=>{kB(),jB=new Map})),NB,PB,FB,IB=o((()=>{nL(),J(),kL(),NB=class extends q{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${OL(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},PB=class extends q{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${OL(t)}`,`Response: ${tL(e)}`],name:`OffchainLookupResponseMalformedError`})}},FB=class extends q{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function LB(e){let{abi:t,data:n}=e,r=UF(n,0,4),i=t.find(e=>e.type===`function`&&r===dI(ZN(e)));if(!i)throw new SP(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?BI(i.inputs,UF(n,4)):void 0}}var RB=o((()=>{jP(),JF(),fI(),QI(),eP()}));function zB(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=pI({abi:t,args:r,name:n});if(!e)throw new gP(n,{docsPath:BB});i=e}if(i.type!==`error`)throw new gP(void 0,{docsPath:BB});let a=dI(ZN(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new hP(i.name,{docsPath:BB});o=QF(i.inputs,r)}return VF([a,o])}var BB,VB=o((()=>{jP(),HF(),fI(),uI(),eP(),gI(),BB=`/docs/contract/encodeErrorResult`}));function HB(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=pI({abi:t,name:n});if(!e)throw new bP(n,{docsPath:UB});i=e}if(i.type!==`function`)throw new bP(void 0,{docsPath:UB});if(!i.outputs)throw new xP(i.name,{docsPath:UB});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new kP(r)})();return QF(i.outputs,a)}var UB,WB=o((()=>{jP(),uI(),gI(),UB=`/docs/contract/encodeFunctionResult`}));async function GB(e){let{data:t,ccipRequest:n}=e,{args:[r]}=LB({abi:iB,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await GB({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=KB(e)}})),HB({abi:iB,functionName:`query`,result:[i,a]})}function KB(e){return e.name===`HttpRequestError`&&e.status?zB({abi:iB,errorName:`HttpError`,args:[e.status,e.shortMessage]}):zB({abi:[TI],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var qB=o((()=>{cB(),DI(),RB(),VB(),WB()})),JB=c({ccipRequest:()=>XB,offchainLookup:()=>YB,offchainLookupAbiItem:()=>QB,offchainLookupSignature:()=>ZB});async function YB(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=$I({data:r,abi:[QB]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:XB;try{if(!Kz(i,o))throw new FB({sender:o,to:i});let{data:r}=await eV(e,{blockNumber:t,blockTag:n,data:zF([l,QF([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await GB({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new NB({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function XB({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new LL({body:s,details:i?.error?tL(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!K(i)){r=new PB({result:i,url:a});continue}return i}catch(e){r=new LL({body:s,details:e.message,url:a})}}throw r}var ZB,QB,$B=o((()=>{oV(),IB(),BL(),eL(),uI(),qz(),HF(),tP(),qB(),nL(),ZB=`0x556f1830`,QB={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function eV(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?_I(n):void 0;if(u&&(f||p))throw new q(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new q(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?rV({code:u,data:d}):te?iV({data:d,factory:f,factoryData:p,to:b}):d;try{cz(t);let n=(typeof a==`bigint`?X(a):void 0)||o,u=l?nk(l):void 0,d=iz(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||ZR)({...qR(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&tV({request:p})&&!d&&!u)try{return await nV(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof vB)&&!(e instanceof hB))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=aV(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>($B(),JB));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new PL({factory:f}):EB(n,{...t,account:C,chain:e.chain})}}function tV({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function nV(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return wB({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new vB})(),u=(typeof a==`bigint`?X(a):void 0)||o,{schedule:d}=AB({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=SI({abi:rB,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:rV({code:pB,data:r})}:{to:l,data:r}},u]});return eB({abi:rB,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new FL({data:f});return f===`0x`?{data:void 0}:{data:f}}function rV(e){let{code:t,data:n}=e;return xB({abi:qN([`constructor(bytes, bytes)`]),bytecode:uB,args:[t,n]})}function iV(e){let{data:t,factory:n,factoryData:r,to:i}=e;return xB({abi:qN([`constructor(address, bytes, address, bytes)`]),bytecode:dB,args:[i,t,n,r]})}function aV(e){if(!(e instanceof q))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var oV=o((()=>{YN(),rk(),vI(),cB(),lB(),mB(),J(),bB(),IL(),nB(),CB(),CI(),TB(),iF(),DB(),JR(),tz(),MB(),az(),lz()}));nB(),CI(),oV();async function sV(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=SI({abi:n,args:i,functionName:a});try{let{data:t}=await XN(e,eV,`call`)({...o,data:s,to:r});return eB({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw vR(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let cV=new Map,lV=new Map,uV=0;function dV(e,t,n){let r=++uV,i=()=>cV.get(e)||[],a=()=>{let t=i();cV.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=lV.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(cV.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&lV.set(e,l),o}async function fV(e){return new Promise(t=>setTimeout(t,e))}function pV(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await fV(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await fV(r),s())};s()})(),a}J();var mV=class extends q{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},hV=class extends q{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};bB();function gV({chain:e,currentChainId:t}){if(!e)throw new _B;if(t!==e.id)throw new gB({chain:e,currentChainId:t})}async function _V(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}vI(),J(),HF(),JR(),tz(),AF(),lz();let vV=new kF(128);async function yV(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new mV({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?_I(n):null;try{cz(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await kR({authorization:o[0]}).catch(()=>{throw new q(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await XN(e,zz,`getChainId`)({}),r&&gV({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||ZR)({...qR(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?zF([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=vV.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(vV.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(vV.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await XN(e,Wz,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?zF([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...Vz,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await XN(e,_V,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new hV({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new hV({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof hV?e:Rz(e,{...t,account:y,chain:t.chain||void 0})}}vI(),CI();async function bV(e,t){return bV.internal(e,yV,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new mV({docsPath:`/docs/contract/writeContract`});let u=a?_I(a):null,d=SI({abi:i,args:s,functionName:c});try{return await XN(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw vR(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(bV||={}),J();var xV=class extends q{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function SV(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await fV(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}ZP(),XR();let CV={\"0x0\":`reverted`,\"0x1\":`success`};function wV(e,t){let n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(e=>Jz(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?XP(e.transactionIndex):null,status:e.status?CV[e.status]:null,type:e.type?mz[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let TV=YR(`transactionReceipt`,wV);vI(),J(),_R(),CI(),HF(),ZP(),iF();let EV=X(0,{size:32});async function DV(e,t){let{account:n=e.account,chain:r=e.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:s,version:c=`2.0.0`}=t,l=n?_I(n):null,u=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(u=typeof e.dataSuffix==`string`?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});let d=t.calls.map(e=>{let t=e,n=t.abi?SI({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?zF([n,t.dataSuffix]):n,to:t.to,value:t.value?X(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:X(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new cR(new q(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new mR(new q(e,{details:e}))}let t=[];for(let n of d){let i=yV(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?Y(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:zF([...n.map(e=>e.status===`fulfilled`?e.value:EV),X(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Rz(n,{...t,account:l,chain:t.chain})}}JF(),qP(),ZP();async function OV(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=KP(qF(t,-64,-32)),r=qF(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>EV.slice(2)===t?void 0:e.request({method:`eth_getTransactionReceipt`,params:[`0x${t}`]},{dedupe:!0}))),a=i.some(e=>e===null)?100:i.every(e=>e?.status===`0x1`)?200:i.every(e=>e?.status===`0x0`)?500:600;return{atomic:!1,chainId:XP(n),receipts:i.filter(Boolean),status:a,version:`2.0.0`}}return e.request({method:`wallet_getCallsStatus`,params:[t]})}let{atomic:r=!1,chainId:i,receipts:a,version:o=`2.0.0`,...s}=await n(t.id),[c,l]=(()=>{let e=s.status;return e>=100&&e<200?[`pending`,e]:e>=200&&e<300?[`success`,e]:e>=300&&e<700?[`failure`,e]:e===`CONFIRMED`?[`success`,200]:e===`PENDING`?[`pending`,100]:[void 0,e]})();return{...s,atomic:r,chainId:i?XP(i):void 0,receipts:a?.map(e=>({...e,blockNumber:Y(e.blockNumber),gasUsed:Y(e.gasUsed),status:CV[e.status]}))??[],statusCode:l,status:c,version:o}}J(),kB(),nL();async function kV(e,t){let{id:n,pollingInterval:r=e.pollingInterval,status:i=({statusCode:e})=>e===200||e>=300,retryCount:a=4,retryDelay:o=({count:e})=>~~(1<<e)*200,timeout:s=6e4,throwOnFailure:c=!1}=t,l=tL([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=OB(),p,m=dV(l,{resolve:d,reject:f},t=>{let s=pV(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await SV(async()=>{let t=await XN(e,OV,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new xV(t);return t},{retryCount:a,delay:o});if(!i(s))return;r(()=>t.resolve(s))}catch(e){r(()=>t.reject(e))}},{interval:r,emitOnBegin:!0});return s});return p=s?setTimeout(()=>{m(),clearTimeout(p),f(new AV({id:n}))},s):void 0,await u}var AV=class extends q{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let jV=256,MV;function NV(e=11){if(!MV||jV+e>256*2){MV=``,jV=0;for(let e=0;e<256;e++)MV+=(256+Math.random()*256|0).toString(16).substring(1)}return MV.substring(jV,jV+++e)}vI();function PV(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?_I(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:NV(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}iF();async function FV(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:X(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}sz(),OF(),J(),bB(),UR(),RF(),rP(),JF(),ZP();function IV(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!FF(n))throw new DF({address:n});if(t<0)throw new yB({chainId:t})}RV(e)}function LV(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Mz;for(let e of t){let t=nP(e),n=XP(UF(e,0,1));if(t!==32)throw new Nz({hash:e,size:t});if(n!==1)throw new Pz({hash:e,version:n})}}RV(e)}function RV(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new yB({chainId:t});if(i&&!FF(i))throw new DF({address:i});if(r&&r>oz)throw new MR({maxFeePerGas:r});if(n&&r&&n>r)throw new VR({maxFeePerGas:r,maxPriorityFeePerGas:n})}function zV(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new yB({chainId:t});if(a&&!FF(a))throw new DF({address:a});if(n||i)throw new q(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>oz)throw new MR({maxFeePerGas:r})}function BV(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!FF(a))throw new DF({address:a});if(t!==void 0&&t<=0)throw new yB({chainId:t});if(n||i)throw new q(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>oz)throw new MR({maxFeePerGas:r})}OF(),EL(),RF();function VV(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new wL({storageKey:i[e]});if(!FF(r,{strict:!1}))throw new DF({address:r});t.push([r,i])}return t}EL(),HF(),qP(),iF();function HV(e,t){let n=Lz(e);return n===`eip1559`?GV(e,t):n===`eip2930`?KV(e,t):n===`eip4844`?WV(e,t):n===`eip7702`?UV(e,t):qV(e,t)}function UV(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;IV(e);let f=VV(u),p=YV(n);return VF([`0x04`,CR([X(r),a?X(a):`0x`,l?X(l):`0x`,c?X(c):`0x`,i?X(i):`0x`,o??`0x`,s?X(s):`0x`,d??`0x`,f,p,...JV(e,t)])])}function WV(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;LV(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>eF(e)),n=e.kzg,r=wz({blobs:t,kzg:n});f===void 0&&(f=Oz({commitments:r})),p===void 0&&(p=Iz({blobs:t,commitments:r,proofs:Tz({blobs:t,commitments:r,kzg:n})}))}let m=VV(u),h=[X(n),i?X(i):`0x`,l?X(l):`0x`,c?X(c):`0x`,r?X(r):`0x`,a??`0x`,o?X(o):`0x`,d??`0x`,m,s?X(s):`0x`,f??[],...JV(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return VF([`0x03`,CR(p?[h,g,_,v]:h)])}function GV(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;RV(e);let d=VV(l);return VF([`0x02`,CR([X(n),i?X(i):`0x`,c?X(c):`0x`,s?X(s):`0x`,r?X(r):`0x`,a??`0x`,o?X(o):`0x`,u??`0x`,d,...JV(e,t)])])}function KV(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;zV(e);let u=VV(c);return VF([`0x01`,CR([X(n),a?X(a):`0x`,l?X(l):`0x`,r?X(r):`0x`,o??`0x`,s?X(s):`0x`,i??`0x`,u,...JV(e,t)])])}function qV(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;BV(e);let l=[a?X(a):`0x`,c?X(c):`0x`,r?X(r):`0x`,o??`0x`,s?X(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new bL({v:t.v});return e})(),r=KP(t.r),i=KP(t.s);l=[...l,X(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,X(n),`0x`,`0x`]);return CR(l)}function JV(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=KP(n.r),o=KP(n.s);return[typeof i==`number`?i?X(1):`0x`:r===0n?`0x`:r===1n?X(1):r===27n?`0x`:X(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}iF();function YV(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?QP(e):`0x`,a,r?QP(r):`0x`,...JV({},i)])}return t}PF(),qz();async function XV({address:e,authorization:t,signature:n}){return Kz(MF(e),await kR({authorization:t,signature:n}))}AF();let ZV=new kF(8192);function QV(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(ZV.get(n))return ZV.get(n);let r=e().finally(()=>ZV.delete(n));return ZV.set(n,r),r}J(),BL(),_R(),iF(),nL();function $V(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new $L(Error(`method not supported`),{method:l});return QV(()=>SV(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case WL.code:throw new WL(t);case GL.code:throw new GL(t);case KL.code:throw new KL(t,{method:n.method});case qL.code:throw new qL(t);case JL.code:throw new JL(t);case YL.code:throw new YL(t);case XL.code:throw new XL(t);case ZL.code:throw new ZL(t);case QL.code:throw new QL(t);case $L.code:throw new $L(t,{method:n.method});case eR.code:throw new eR(t);case tR.code:throw new tR(t);case nR.code:throw new nR(t);case rR.code:throw new rR(t);case iR.code:throw new iR(t);case aR.code:throw new aR(t);case oR.code:throw new oR(t);case sR.code:throw new sR(t);case cR.code:throw new cR(t);case lR.code:throw new lR(t);case uR.code:throw new uR(t);case dR.code:throw new dR(t);case fR.code:throw new fR(t);case pR.code:throw new pR(t);case mR.code:throw new mR(t);case 5e3:throw new nR(t);case hR.code:throw new hR(t);default:throw e instanceof q?e:new gR(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof LL){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>eH(e)}),{enabled:i,id:i?tF(`${c}.${tL(n)}`):void 0})}}function eH(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===eR.code||e.code===JL.code:e instanceof LL&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function tH(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function nH(){return{}}J(),GP(),PI(),pF(),iF();function rH(e,t=`hex`){return iH(MI((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new UP(e);return cF(e)}return e})(),{recursiveReadLimit:1/0}),t)}function iH(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?eF(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=aH(e,n,128),i=e.readBytes(r);return t===`hex`?eF(i):i}return oH(e,aH(e,n,192),t)}function aH(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new q(`Invalid RLP prefix`)}function oH(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(iH(e,n));return i}tP(),rP();function sH(e){return K(e)&&nP(e)===32}function cH(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function lH(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let uH=lH();BL(),nL();function dH(e,t={}){let{url:n,headers:r}=fH(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await cH(async({signal:e})=>{let t={...l,body:tL(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??uH.take(),...e})):{jsonrpc:`2.0`,id:i.id??uH.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new zL({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new LL({body:i,details:tL(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof LL||e instanceof zL?e:new LL({body:i,cause:e,url:n})}}}}function fH(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}nL(),J();var pH=class extends q{constructor({domain:e}){super(`Invalid domain \"${tL(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},mH=class extends q{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},hH=class extends q{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};jP(),OF(),RF(),rP(),iF(),ZF(),nL();function gH(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{let n={...t};for(let t of e){let{name:e,type:r}=t;r===`address`&&(n[e]=n[e].toLowerCase())}return n};return tL({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function _H(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(XF);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;X(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!FF(o))throw new DF({address:o});let c=r.match(YF);if(c){let[e,t]=c;if(t&&nP(o)!==Number.parseInt(t,10))throw new wP({expectedSize:Number.parseInt(t,10),givenSize:nP(o)})}let l=i[r];l&&(yH(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new pH({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new mH({primaryType:r,types:i})}function vH({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function yH(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new hH({type:e})}bT(),dE();let bH=ZD(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function xH(e){if(typeof e==`string`){if(U(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new wH(e)}else yO(e.authorization)}function SH(e){xH(e);let t=$T(U(e,-64,-32)),n=U(e,-t-64,-64),r=U(e,0,-t-64),[i,a,o]=JD(bH,n);return{authorization:RO({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function CH(e){try{return xH(e),!0}catch{return!1}}var wH=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};EL(),JF(),ZP();function TH(e){let t=qF(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&XP(t)>=192)return`legacy`;throw new SL({serializedType:t})}OF(),EL(),RF(),tP(),zP(),qP(),ZP();function EH(e){let t=TH(e);return t===`eip1559`?kH(e):t===`eip2930`?AH(e):t===`eip4844`?OH(e):t===`eip7702`?DH(e):jH(e)}function DH(e){let t=MH(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new CL({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:XP(n),type:`eip7702`};return K(s)&&s!==`0x`&&(h.to=s),K(o)&&o!==`0x`&&(h.gas=Y(o)),K(l)&&l!==`0x`&&(h.data=l),K(r)&&(h.nonce=r===`0x`?0:XP(r)),K(c)&&c!==`0x`&&(h.value=Y(c)),K(a)&&a!==`0x`&&(h.maxFeePerGas=Y(a)),K(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=Y(i)),u.length!==0&&u!==`0x`&&(h.accessList=NH(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=PH(d)),IV(h),{...t.length===13?FH(t):void 0,...h}}function OH(e){let t=MH(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new CL({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:XP(a),to:u,type:`eip4844`};return K(l)&&l!==`0x`&&(S.gas=Y(l)),K(f)&&f!==`0x`&&(S.data=f),K(o)&&(S.nonce=o===`0x`?0:XP(o)),K(d)&&d!==`0x`&&(S.value=Y(d)),K(m)&&m!==`0x`&&(S.maxFeePerBlobGas=Y(m)),K(c)&&c!==`0x`&&(S.maxFeePerGas=Y(c)),K(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=Y(s)),p.length!==0&&p!==`0x`&&(S.accessList=NH(p)),y&&b&&x&&(S.sidecars=Iz({blobs:y,commitments:b,proofs:x})),LV(S),{...r.length===14?FH(r):void 0,...S}}function kH(e){let t=MH(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new CL({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:XP(n),type:`eip1559`};return K(s)&&s!==`0x`&&(m.to=s),K(o)&&o!==`0x`&&(m.gas=Y(o)),K(l)&&l!==`0x`&&(m.data=l),K(r)&&(m.nonce=r===`0x`?0:XP(r)),K(c)&&c!==`0x`&&(m.value=Y(c)),K(a)&&a!==`0x`&&(m.maxFeePerGas=Y(a)),K(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=Y(i)),u.length!==0&&u!==`0x`&&(m.accessList=NH(u)),RV(m),{...t.length===12?FH(t):void 0,...m}}function AH(e){let t=MH(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new CL({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:XP(n),type:`eip2930`};return K(o)&&o!==`0x`&&(p.to=o),K(a)&&a!==`0x`&&(p.gas=Y(a)),K(c)&&c!==`0x`&&(p.data=c),K(r)&&(p.nonce=r===`0x`?0:XP(r)),K(s)&&s!==`0x`&&(p.value=Y(s)),K(i)&&i!==`0x`&&(p.gasPrice=Y(i)),l.length!==0&&l!==`0x`&&(p.accessList=NH(l)),zV(p),{...t.length===11?FH(t):void 0,...p}}function jH(e){let t=rH(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new CL({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(K(a)&&a!==`0x`&&(d.to=a),K(i)&&i!==`0x`&&(d.gas=Y(i)),K(s)&&s!==`0x`&&(d.data=s),K(n)&&(d.nonce=n===`0x`?0:XP(n)),K(o)&&o!==`0x`&&(d.value=Y(o)),K(r)&&r!==`0x`&&(d.gasPrice=Y(r)),BV(d),t.length===6)return d;let f=K(c)&&c!==`0x`?Y(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new bL({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function MH(e){return rH(`0x${e.slice(4)}`,`hex`)}function NH(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!FF(r,{strict:!1}))throw new DF({address:r});t.push({address:r,storageKeys:i.map(e=>sH(e)?e:KP(e))})}return t}function PH(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:XP(r),nonce:a===`0x`?0:XP(a),...FH([o,s,c])})}return t}function FH(e){let t=e.slice(-3),n=t[0]===`0x`||Y(t[0])===0n?27n:28n;return{r:LP(t[1],{size:32}),s:LP(t[2],{size:32}),v:n,yParity:n===27n?0:1}}J();var IH=class extends q{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function LH(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new IH({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,`0`);return BigInt(`${i?`-`:``}${n}${r}`)}bT(),dE();function RH(e){if(U(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new VH(e)}function zH(e){let{data:t,signature:n,to:r}=e;return VT(YD(ZD(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function BH(e){try{return RH(e),!0}catch{return!1}}var VH=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};lc(),ZP(),pF();function HH({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Js.Signature(Y(e),Y(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:cF(o)}cB(),mB(),IL(),CB(),CI(),PF(),qz(),HF(),tP(),ZP(),iF(),oV();async function UH(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return K(e)?e:typeof e==`object`&&`r`in e&&`s`in e?HH(e):eF(e)})();try{if(s===`eoa`)try{if(Kz(MF(n),await SR({hash:i,signature:c})))return!0}catch{}return CH(c)?await WH(e,{...t,multicallAddress:o,signature:c}):await GH(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Kz(MF(n),await SR({hash:i,signature:c})))return!0}catch{}if(e instanceof qH)return!1;throw e}}async function WH(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=SH(t.signature);if(await FV(e,{address:n,blockNumber:r,blockTag:i})===VF([`0xef0100`,s.address]))return await KH(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:X(s.r,{size:32}),s:X(s.s,{size:32}),yParity:s.yParity};if(!await XV({address:n,authorization:d}))throw new qH;let f=await XN(e,sV,`readContract`)({...o?{address:o}:{code:pB},authorizationList:[d],abi:rB,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:SI({abi:oB,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new qH}async function GH(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||BH(o)?o:zH({data:i,signature:o,to:r}))(),u=s?{to:s,data:SI({abi:sB,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:xB({abi:sB,args:[n,a,l],bytecode:fB}),...c},{data:d}=await XN(e,eV,`call`)(u).catch(e=>{throw e instanceof AL?new qH:e});if(YP(d??`0x0`))return!0;throw new qH}async function KH(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await XN(e,sV,`readContract`)({address:n,abi:oB,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof jL?new qH:e})).startsWith(`0x1626ba7e`))return!0;throw new qH}var qH=class extends Error{};async function JH(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await XN(e,DV,`sendCalls`)(t);return await XN(e,kV,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}vI(),iF(),tz(),lz();async function YH(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new mV({docsPath:`/docs/actions/wallet/signTransaction`});let a=_I(n);cz({account:a,...t});let o=await XN(e,zz,`getChainId`)({});r!==null&&gV({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||ZR;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:X(o),from:a.address}]},{retryCount:0})}vI();async function XH(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new mV({docsPath:`/docs/actions/wallet/signTypedData`});let o=_I(n),s={EIP712Domain:vH({domain:r}),...t.types};if(_H({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=gH({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function ZH({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=NV();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:$V(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}J();var QH=class extends q{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};BL(),MB();function $H(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new QH;let b=dH(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return ZH({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=AB({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new RL({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}bT(),dE(),zT();let eU=`0x01`,tU=`0x02`,nU=`0x03`,rU=`0x04`,iU=`0x7777777777777777777777777777777777777777777777777777777777777777`;function aU(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:aU({...e,signature:t.inner}):iD(oU(e))}function oU(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return ak({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return oU({payload:t,signature:n.inner})}}function sU(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?U(e,0,-YT(iU)):e;if(YT(t)===65){let e=xO(t);return yO(e),{signature:e,type:`secp256k1`}}let n=U(t,0,1),r=U(t,1),i=YT(r);if(n===eU){if(i!==129)throw new hU({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:ZT(U(r,64,96)),y:ZT(U(r,96,128))},prehash:$T(U(r,128,129))!==0,signature:{r:ZT(U(r,0,32)),s:ZT(U(r,32,64))},type:`p256`}}if(n===tU){if(i<128)throw new hU({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=U(r,0,e),a,o;for(let t=37;t<e;t++){let e=eE(U(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=U(n,0,t),o=e;break}catch{}}if(!a||!o)throw new hU({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:ZT(U(r,e+64,e+96)),y:ZT(U(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:ZT(U(r,e,e+32)),s:ZT(U(r,e+32,e+64))},type:`webAuthn`}}if(n===nU||n===rU)return{userAddress:U(r,0,20),inner:sU(U(r,20)),type:`keychain`,version:n===rU?`v2`:`v1`};throw new hU({reason:`Unknown signature type identifier: ${n}. Expected ${eU} (P256), ${tU} (WebAuthn), ${nU} (Keychain V1), or ${rU} (Keychain V2)`,serialized:t})}function cU(e,t){if(typeof e==`string`)return sU(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=uU(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:iD(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:iD(ak({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function lU(e){if(e.type===`secp256k1`)return{signature:TO(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:ZT(e.pubKeyX),y:ZT(e.pubKeyY)},signature:{r:ZT(e.r),s:ZT(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=YT(t),r,i;for(let e=37;e<n;e++){let n=eE(U(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=U(t,0,e),i=n;break}catch{}}if(!r||!i)throw new hU({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:ZT(e.pubKeyX),y:ZT(e.pubKeyY)},signature:{r:ZT(e.r),s:ZT(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:lU(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new mU({envelope:e})}function uU(e){if(typeof e!=`object`||!e)throw new mU({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new mU({envelope:e})}function dU(e,t={}){let n=uU(e);if(n===`secp256k1`)return VT(DO(e.signature),t.magic?iU:`0x`);if(n===`p256`){let n=e;return VT(eU,H(n.signature.r,{size:32}),H(n.signature.s,{size:32}),H(n.publicKey.x,{size:32}),H(n.publicKey.y,{size:32}),H(+!!n.prehash,{size:1}),t.magic?iU:`0x`)}if(n===`webAuthn`){let n=e;return VT(tU,VT(n.metadata.authenticatorData,GT(n.metadata.clientDataJSON)),H(n.signature.r,{size:32}),H(n.signature.s,{size:32}),H(n.publicKey.x,{size:32}),H(n.publicKey.y,{size:32}),t.magic?iU:`0x`)}if(n===`keychain`){let n=e;return VT(n.version===`v1`?nU:rU,n.userAddress,dU(n.inner),t.magic?iU:`0x`)}throw new mU({envelope:e})}function fU(e){let t=uU(e);if(t===`secp256k1`)return{...OO(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:H(t.publicKey.x,{size:32}),pubKeyY:H(t.publicKey.y,{size:32}),r:H(t.signature.r,{size:32}),s:H(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=VT(t.metadata.authenticatorData,GT(t.metadata.clientDataJSON));return{pubKeyX:H(t.publicKey.x,{size:32}),pubKeyY:H(t.publicKey.y,{size:32}),r:H(t.signature.r,{size:32}),s:H(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:fU(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new mU({envelope:e})}function pU(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return iD(t.publicKey)})();if(!r)return!1;let i=cU(e);if(i.type===`secp256k1`)return r?ok({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return aD(iD(i.publicKey),r)?sk({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return aD(iD(i.publicKey),r)?_k({challenge:HT(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new gU(`Unable to verify signature envelope of type \"${i.type}\".`)}var mU=class extends V{constructor({envelope:e}){super(`Unable to coerce value (\\`${LT(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},hU=class extends V{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},gU=class extends V{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};bT(),dE();function _U(e){return e.startsWith(`tempo`)?vU(e).address:e}function vU(e){if(!e.startsWith(`tempox`))throw new yU({address:e});let t=e.slice(6);return BT(t,{strict:!0}),{address:nD(t)}}var yU=class extends V{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};dE();function bU(e,t={}){if(typeof e.chainId==`string`)return xU(e);let n={...e,address:_U(e.address)};return t.signature?{...n,signature:t.signature}:n}function xU(e){let{address:t,chainId:n,nonce:r}=e,i=lU(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function SU(e){return e.map(e=>xU(e))}function CU(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=sU(i)),bU(a)}function wU(e){let t=[];for(let n of e)t.push(CU(n));return t}function TU(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:H(n),nonce:H(r),signature:fU(i)}}function EU(e){return e.map(e=>TU(e))}function DU(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?dU(e.signature):void 0;return[n?H(n):`0x`,t,r?H(r):`0x`,...i?[i]:[]]}function OU(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(DU(n));return t}dE();function kU(e,t={}){if(`keyId`in e)return AU(e);let n=e,r={...n,address:_U(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:_U(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:_U(e.address),selector:zU(e.selector),...e.recipients?{recipients:e.recipients.map(e=>_U(e))}:{}}))}:{}};return t.signature?{...r,signature:cU(t.signature)}:r}function AU(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=lU(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:RU(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:ZT(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&LU(e.period)>0?{period:LU(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function jU(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:LU(o)||void 0,type:l,chainId:r===`0x`?0n:ZT(r),...o===void 0?{}:{expiry:LU(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:IU(n),...r===void 0?{}:{period:LU(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=sU(n)),kU(u)}function MU(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:zU(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:H(r),expiry:typeof i==`number`?H(i):null,keyId:_U(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:H(t),...n?{period:FU(n)}:{}})),signature:fU(s),...c?{allowedCalls:c}:{}}}function NU(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?dU(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,PU(e.limit)];return e.period&&e.period>0&&t.push(FU(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([zU(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[PU(n),s,t,i!=null&&i!==0||c||l?FU(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function PU(e){return e===0n?`0x`:H(e)}function FU(e){return e===0?`0x`:H(e)}function IU(e){return e===`0x`?0n:BigInt(e)}function LU(e){return e===`0x`?0:$T(e)}function RU(e){return typeof e==`string`?e:Array.isArray(e)?WT(new Uint8Array(e)):e}function zU(e){if(e)return e.startsWith(`0x`)?e:mD(e)}dE();function BU(e){if(typeof e==`string`){let t=_U(e);return tD(t),t}return VT(`0x20c0`,H(e,{size:18}))}dE();let VU={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function HU(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:RE(GT(VU[e]??e))}let UU={...ZO,tempo:`0x76`},WU={...QO,\"0x76\":`tempo`};function GU(e,t={}){if(!e)return null;let n=$O(e);return n.type=WU[e.type],e.aaAuthorizationList&&(n.authorizationList=SU(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=lU(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=AU(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=TO(e.feePayerSignature),n.feePayerSignature.v=jO(n.feePayerSignature.yParity)),n}dE();function KU(e){let t=ck({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=EU(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?_U(e.to):e.to,value:e.value?H(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?_U(e.to):void 0,value:e.value?H(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=BU(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=MU(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=H(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=H(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return JT(6);if(typeof e.nonceKey==`bigint`)return H(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=UU.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}bT(),dE();let qU=`tempo`;function JU(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new tW;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new nW({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&tD(e.to,{strict:!1});if(n<=0)throw new pk({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new fk({feeCap:r});if(i&&r&&i>r)throw new hk({maxFeePerGas:r,maxPriorityFeePerGas:i})}function YU(e){let t=cO(U(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new mk({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:qU});let y={chainId:Number(n),type:qU};tE(a)&&a!==`0x`&&(y.gas=BigInt(a)),tE(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),tE(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),tE(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),tE(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),tE(u)&&u!==`0x`&&(y.validBefore=Number(u)),tE(d)&&d!==`0x`&&(y.validAfter=Number(d)),tE(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=aO(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=wU(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||oD(p)?(y.feePayerSignature=null,oD(p)&&(y.from=p)):y.feePayerSignature=EO(p)),_&&(y.keyAuthorization=jU(_));let b=v?sU(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=aU({payload:QU(XU(y)),signature:b,root:!0})}catch{}return JU(y),y}function XU(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?YU(e):e;return i.from&&=_U(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:_U(e.to)}:{}})),JU(i),{...i,...r?{signature:cU(r)}:{},...n?{feePayerSignature:CO(n)}:{},type:`tempo`}}function ZU(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;JU(e);let h=oO(n),g=t.signature||e.signature,_=OU(r),v=i.map(e=>[e.to?_U(e.to):`0x`,e.value?H(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=cU(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return iD(t.publicKey);if(t.type===`secp256k1`)return ik({payload:QU(XU(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?kO(n):`0x`})(),x=[H(a),f?H(f):`0x`,d?H(d):`0x`,s?H(s):`0x`,v,h,u?H(u):`0x`,l?H(l):`0x`,typeof p==`number`?H(p):`0x`,typeof m==`number`?H(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?BU(o):`0x`,b,_,...c?[NU(c)]:[],...g?[dU(cU(g))]:[]];return VT(t.format===`feePayer`?`0x78`:`0x76`,mO(x))}function QU(e,t={}){let n=$U(e,{presign:!0});return t.from?RE(VT(`0x04`,n,_U(t.from))):n}function $U(e,t={}){return RE(ZU({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function eW(e,t){let n=_U(t.sender);return RE(ZU({...e,signature:void 0},{sender:n,format:`feePayer`}))}var tW=class extends V{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},nW=class extends V{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};dE();function rW(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:Lz(e)}function iW(e){try{return rW(e)===`tempo`}catch{return!1}}function aW(e){let t=U(e,0,1);return t===`0x76`||t===`0x78`?sW(e):EH(e)}async function oW(e,t){if(!iW(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return HV(e,{r:H(n,{size:32}),s:H(r,{size:32}),yParity:i})}return HV(e,t)}if(rW(e)===`tempo`)return cW(e,t);throw Error(`Unsupported transaction type`)}function sW(e){let{feePayerSignature:t,nonce:n,...r}=YU(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:H(t.r,{size:32}),s:H(t.s,{size:32}),yParity:t.yParity}}}async function cW(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return cU({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=XU(c,{signature:n}),r=eW(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return ik({payload:QU(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return ZU(t,{feePayerSignature:CO(await e.feePayer.sign({hash:r}))})}return i===!0?n?ZU(c,{format:`feePayer`,sender:e.from,signature:n}):ZU(c,{feePayerSignature:null}):ZU({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}dE(),vI(),tz();function lW(e){if(!iW(e))return hz(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=GU(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:H(t.r,{size:32}),s:H(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:UU[i.type],type:i.type}}function uW(e){return wV(e)}function dW(e,t){let n=e,r=n.account?_I(n.account):void 0;if(!iW(n))return ZR(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=KU({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?_I(n.feePayer):n.feePayer}:{}}}let fW=new Map;async function pW(e){fW.set(e,(fW.get(e)??0)+1),await Promise.resolve();let t=(fW.get(e)??0)>1;return queueMicrotask(()=>{let t=fW.get(e)??0;t<=1?fW.delete(e):fW.set(e,t-1)}),t}sz(),tz();let mW=tH({blockTime:1e3,extendSchema:nH(),formatters:{transaction:gz({exclude:[`aaAuthorizationList`],format:lW}),transactionReceipt:TV({format:uW}),transactionRequest:ez({format:dW})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await pW(e):!1})()?(n.nonceKey=oz,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>oW(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=sU(i);if(a.type!==`keychain`){let i=await FV(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return pU(a,{address:n,payload:r})}}return await XN(e,UH,`verifyHash`)({...t,chain:null})},id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),Z=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],hW=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]}],gW=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}],_W=`0xdec0000000000000000000000000000000000000`;function Q(e){return{...e,data:SI(e),to:e.address}}dE(),vI();async function vW(e,t){return vW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return Q({address:_W,abi:hW,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(vW||={});async function yW(e,t){return yW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return Q({address:_W,abi:hW,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(yW||={});async function bW(e,t){return bW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return Q({address:_W,abi:hW,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(bW||={});async function xW(e,t){return xW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return Q({address:_W,abi:hW,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(xW||={});async function SW(e,t){let{account:n=e.account,token:r,...i}=t,a=n?_I(n).address:void 0;if(!a)throw Error(`account is required.`);return sV(e,{...i,...SW.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return Q({address:_W,abi:hW,args:[t,n],functionName:`balanceOf`})}e.call=t})(SW||={});async function CW(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return sV(e,{...a,...CW.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return Q({address:_W,abi:hW,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(CW||={});async function wW(e,t){let{orderId:n,...r}=t;return sV(e,{...r,...wW.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return Q({address:_W,abi:hW,args:[t],functionName:`getOrder`})}e.call=t})(wW||={});async function TW(e,t){let{base:n,quote:r,...i}=t;return sV(e,{...i,...TW.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return Q({address:_W,abi:hW,args:[MW(t,n)],functionName:`books`})}e.call=t})(TW||={});async function EW(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await sV(e,{...a,...EW.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return Q({address:_W,abi:hW,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(EW||={});async function DW(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return sV(e,{...a,...DW.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return Q({address:_W,abi:hW,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(DW||={});async function OW(e,t){return OW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return Q({address:_W,abi:hW,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(OW||={});async function kW(e,t){return kW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return Q({address:_W,abi:hW,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=Qz({abi:hW,logs:e,eventName:`OrderPlaced`,strict:!0}).find(e=>e.args.isFlipOrder);if(!t)throw Error(\"`OrderPlaced` event (flip order) not found.\");return t}e.extractEvent=r})(kW||={});async function AW(e,t){return AW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return Q({address:_W,abi:hW,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(AW||={});async function jW(e,t){return jW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return Q({address:_W,abi:hW,functionName:`withdraw`,args:[t,n]})}e.call=n})(jW||={});function MW(e,t){return RE(VT(e,t))}dE(),vI(),CI();async function NW(e,t){let{token:n,...r}=t;return NW.inner(bV,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(NW||={});async function PW(e,t){return PW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(PW||={});async function FW(e,t){return FW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,KT(n,32)]}:{functionName:`burn`,args:[t]};return Q({address:BU(r),abi:Z,...i})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(FW||={});async function IW(e,t){return IW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return Q({address:BU(t),abi:Z,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(IW||={});async function LW(e,t){return LW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?_I(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=JT(32)}=e;return Q({address:`0x20fc000000000000000000000000000000000000`,abi:gW,args:[t,n,r,BU(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=Qz({abi:gW,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(LW||={});async function RW(e,t){let{account:n=e.account}=t,r=n?_I(n).address:void 0;if(!r)throw Error(`account is required.`);return sV(e,{...t,...RW.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`allowance`,args:[t,n]})}e.call=t})(RW||={});async function zW(e,t){let{account:n=e.account,...r}=t,i=n?_I(n).address:void 0;if(!i)throw Error(`account is required.`);return sV(e,{...r,...zW.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return Q({address:BU(n),abi:Z,functionName:`balanceOf`,args:[t]})}e.call=t})(zW||={});async function BW(e,t){return sV(e,{...t,...BW.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return Q({address:BU(n),abi:Z,functionName:`getRoleAdmin`,args:[HU(t)]})}e.call=t})(BW||={});async function VW(e,t){let{account:n=e.account}=t,r=n?_I(n).address:void 0;if(!r)throw Error(`account is required.`);return sV(e,{...t,...VW.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`hasRole`,args:[t,HU(n)]})}e.call=t})(VW||={});async function HW(e,t){return HW.inner(yV,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:SI(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=HU(r);return Q({address:BU(t),abi:Z,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=Qz({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(HW||={});async function UW(e,t){return UW.inner(bV,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,KT(r,32)]}:{functionName:`mint`,args:[t,n]};return Q({address:BU(i),abi:Z,...a})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(UW||={});async function WW(e,t){return WW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:BU(t),abi:Z,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(WW||={});async function GW(e,t){return GW.inner(yV,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:SI(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=HU(n);return Q({address:BU(t),abi:Z,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=Qz({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(GW||={});async function KW(e,t){return KW.inner(yV,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:SI(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=HU(r);return Q({address:BU(t),abi:Z,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=Qz({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(KW||={});async function qW(e,t){return qW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return Q({address:BU(t),abi:Z,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(qW||={});async function JW(e,t){return JW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=HU(n),a=HU(r);return Q({address:BU(t),abi:Z,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(JW||={});async function YW(e,t){return YW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,KT(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,KT(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return Q({address:BU(i),abi:Z,...o})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(YW||={});async function XW(e,t){return XW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:BU(t),abi:Z,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(XW||={});async function ZW(e,t){return ZW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return Q({address:BU(t),abi:Z,functionName:`setNextQuoteToken`,args:[BU(n)]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(ZW||={});async function QW(e,t){return QW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:BU(t),abi:Z,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(QW||={});function $W(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return ZH({key:$W.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(aW(o).feePayerSignature===null){if(r===`sign-and-broadcast`)return a.request({method:e,params:t},n);{let t=await a.request({method:`eth_signRawTransaction`,params:[o]},n);return i.request({method:e,params:[t]},n)}}}return await i.request({method:e,params:t},n)},type:$W.type})}}function eG(e={}){let{account:t}=e;return(e,{account:n}={})=>{let r=n??t;if(!r){if(!e.account)throw Error(\"No `account` provided. Pass `account` to parameters or context.\");return e.account}return _I(r)}}function tG(e){let{chain:t,feePayerUrl:n,getClient:r,rpcUrl:i}=e;return r?!t?.serializers&&!n?r:async e=>{let i=await r(e);if(n&&i.transport.key!==`feePayer`){let e=i.transport.url;if(e){let t=PV({chain:i.chain,transport:$W($H(e),$H(n))});Object.assign(i,{transport:t.transport,request:t.request})}}return!t?.serializers||i.chain?.serializers?.transaction?i:Object.assign({},i,{chain:{...t,...i.chain,formatters:i.chain?.formatters??t.formatters,prepareTransactionRequest:i.chain?.prepareTransactionRequest??t.prepareTransactionRequest,serializers:i.chain?.serializers?.transaction?i.chain.serializers:t.serializers}})}:({chainId:e})=>{if(!i)throw Error(\"No `rpcUrl` provided.\");let r=e||Number(Object.keys(i)[0]),a=i[r];if(!a)throw Error(`No \\`rpcUrl\\` configured for \\`chainId\\` (${r}).`);let o=n?$W($H(a),$H(n)):$H(a);return PV({chain:{...t,id:r},transport:o})}}let nG=U(RE(_E(`mpp`),{as:`Hex`}),0,4);function rG(e){return QT(U(RE(_E(e),{as:`Hex`}),0,10))}function iG(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(QT(nG),0),i[4]=1,i.set(rG(t),5),n&&i.set(rG(n),15),i.set(aG(r),25),WT(i)}function aG(e){return QT(U(RE(_E(e),{as:`Hex`}),0,7))}function oG(e,t){return e.toLowerCase()===t.toLowerCase()}let sG={mainnet:4217,testnet:42431},cG={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};sG.mainnet,cG.usdc,sG.testnet,cG.pathUsd;let lG={[sG.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[sG.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},uG={[sG.mainnet]:`https://rpc.tempo.xyz`,[sG.testnet]:`https://rpc.moderato.tempo.xyz`},dG=[cG.pathUsd,cG.usdc];async function fG(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!oG(e,i)),c=await Promise.allSettled([sV(e,zW.call({account:n,token:i})),...s.map(t=>sV(e,zW.call({account:n,token:t})))]),l=c[0];if(!(l.status===`fulfilled`&&l.value>=r)){for(let t=0;t<s.length;t++){let n=c[t+1];if(n.status!==`fulfilled`)continue;let a=n.value;if(a<=0n)continue;let l=s[t];try{let t=await CW(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[NW.call({token:l,spender:_W,amount:e}),vW.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new mG({currency:i})}}function pG(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>oG(e,t)))]:t,slippage:e.slippage??1}:!1}var mG=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function hG(e){let t=BigInt(e.amount),n=e.methodDetails?.splits??[],r=n.reduce((e,t)=>e+BigInt(t.amount),0n);if(r>=t)throw Error(`Invalid charge request: split total must be less than total amount.`);let i=t-r;if(i<=0n)throw Error(`Invalid charge request: primary transfer amount must be positive.`);return[{amount:i.toString(),memo:e.methodDetails?.memo,recipient:e.recipient},...n.map(e=>({amount:e.amount,memo:e.memo,recipient:e.recipient}))]}let gG={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function _G(e){return{name:`MPP`,version:`2`,chainId:e}}function vG(e,t){return{challengeId:e,realm:t}}function yG(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let bG=[`push`,`pull`],xG=QA({amount:_j(),memo:G(yj()),recipient:pj(HA(),uj(e=>e))}),SG=bM({name:`tempo`,intent:`charge`,schema:{credential:{payload:nj(`type`,[QA({hash:yj(),type:cj(`hash`)}),QA({signature:bj(),type:cj(`transaction`)}),QA({signature:bj(),type:cj(`proof`)})])},request:pj(QA({amount:_j(),chainId:G(WA()),currency:HA(),decimals:WA(),description:G(HA()),externalId:G(HA()),feePayer:G(pj(ej([KA(),hj()]),uj(e=>typeof e==`object`?!0:e))),memo:G(yj()),recipient:G(HA()),splits:G(XA(xG).check(IA(1),FA(10))),supportedModes:G(XA(oj(bG)).check(IA(1)))}).check(gj(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=LH(e,t),i=n.reduce((e,n)=>e+LH(n.amount,t),0n);return n.every(e=>LH(e.amount,t)>0n)&&i<r},`Invalid splits`)),uj(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:LH(e,n).toString(),...t!==void 0||r!==void 0||i!==void 0||a!==void 0||o!==void 0?{methodDetails:{...t!==void 0&&{chainId:t},...r!==void 0&&{feePayer:r},...i!==void 0&&{memo:i},...a!==void 0&&{splits:a.map(e=>({...e,amount:LH(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),CG=bM({name:`tempo`,intent:`session`,schema:{credential:{payload:nj(`action`,[QA({action:cj(`open`),authorizedSigner:G(HA()),channelId:yj(),cumulativeAmount:_j(),signature:bj(),transaction:bj(),type:cj(`transaction`)}),QA({action:cj(`topUp`),additionalDeposit:_j(),channelId:yj(),transaction:bj(),type:cj(`transaction`)}),QA({action:cj(`voucher`),channelId:yj(),cumulativeAmount:_j(),signature:bj()}),QA({action:cj(`close`),channelId:yj(),cumulativeAmount:_j(),signature:bj()})])},request:pj(QA({amount:_j(),chainId:G(WA()),channelId:G(yj()),currency:HA(),decimals:WA(),escrowContract:G(HA()),feePayer:G(pj(ej([KA(),hj()]),uj(e=>typeof e==`object`?!0:e))),minVoucherDelta:G(_j()),recipient:G(HA()),suggestedDeposit:G(_j()),unitType:HA()}).check(gj(({amount:e,decimals:t})=>LH(e,t)>0n,`Session amount must be greater than 0`)),uj(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:LH(e,r).toString(),...s?{suggestedDeposit:LH(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:LH(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function wG(e={}){let{clientId:t}=e,n=tG({chain:mW,getClient:e.getClient,rpcUrl:uG}),r=eG({account:e.account});return xM(SG,{context:QA({account:G(hj()),autoSwap:G(hj()),mode:G(oj(bG))}),async createCredential({challenge:i,context:a}){let o=i.request.methodDetails?.chainId,s=await n({chainId:o}),c=r(s,a),{request:l}=i,{amount:u,methodDetails:d}=l;if(BigInt(u)===0n)return yM({challenge:i,payload:{signature:await XH(s,{account:c,domain:_G(o),types:gG,primaryType:`Proof`,message:vG(i.id,i.realm)}),type:`proof`},source:yG({address:c.address,chainId:o})});let f=l.currency;if(e.expectedRecipients){let t=new Set(e.expectedRecipients.map(e=>e.toLowerCase())),n=d?.splits;if(n){for(let e of n)if(!t.has(e.recipient.toLowerCase()))throw Error(`Unexpected split recipient: ${e.recipient}`)}}let p=d?.supportedModes??[`pull`,`push`],m=(()=>{let t=a?.mode??e.mode;if(t){if(!p.includes(t))throw Error(`Challenge does not support ${t} mode.`);return t}let n=c.type===`json-rpc`?`push`:`pull`;return p.includes(n)?n:p[0]})(),h=d?.memo?d.memo:iG({challengeId:i.id,clientId:t,serverId:i.realm}),g=hG({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>YW.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=pG(a?.autoSwap??e.autoSwap,dG),v=[...(_?await fG(s,{account:c.address,amountOut:BigInt(u),tokenOut:f,tokenIn:_.tokenIn,slippage:_.slippage}):void 0)??[],...g],y=(()=>{let e=Math.floor(Date.now()/1e3)+25;if(!i.expires)return e;let t=Math.floor(new Date(i.expires).getTime()/1e3);return Math.min(e,t)})();if(m===`push`){let{receipts:e}=await JH(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return yM({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Wz(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,yM({challenge:i,payload:{signature:await YH(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function TG(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let EG={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function DG(e,t,n,r,i,a){let o=await XH(e,{account:t,domain:TG(r,i),types:EG,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=cU(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return DO(e.inner.signature)}catch{}return o}function OG(e){return RE(YD(ZD([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let kG=[{type:`function`,name:`CLOSE_GRACE_PERIOD`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`VOUCHER_TYPEHASH`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`channels`,inputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`close`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`computeChannelId`,inputs:[{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`domainSeparator`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`eip712Domain`,inputs:[],outputs:[{name:`fields`,type:`bytes1`,internalType:`bytes1`},{name:`name`,type:`string`,internalType:`string`},{name:`version`,type:`string`,internalType:`string`},{name:`chainId`,type:`uint256`,internalType:`uint256`},{name:`verifyingContract`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`extensions`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`view`},{type:`function`,name:`getChannel`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`tuple`,internalType:`struct TempoStreamChannel.Channel`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getChannelsBatch`,inputs:[{name:`channelIds`,type:`bytes32[]`,internalType:`bytes32[]`}],outputs:[{name:`channelStates`,type:`tuple[]`,internalType:`struct TempoStreamChannel.Channel[]`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getVoucherDigest`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`open`,inputs:[{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`requestClose`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settle`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`topUp`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`additionalDeposit`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ChannelClosed`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`settledToPayee`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`refundedToPayer`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`ChannelExpired`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`ChannelOpened`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`token`,type:`address`,indexed:!1,internalType:`address`},{name:`authorizedSigner`,type:`address`,indexed:!1,internalType:`address`},{name:`salt`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`deposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`CloseRequestCancelled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`CloseRequested`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`closeGraceEnd`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`cumulativeAmount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`deltaPaid`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newSettled`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TopUp`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`additionalDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`error`,name:`AmountExceedsDeposit`,inputs:[]},{type:`error`,name:`AmountNotIncreasing`,inputs:[]},{type:`error`,name:`ChannelAlreadyExists`,inputs:[]},{type:`error`,name:`ChannelFinalized`,inputs:[]},{type:`error`,name:`ChannelNotFound`,inputs:[]},{type:`error`,name:`CloseNotReady`,inputs:[]},{type:`error`,name:`DepositOverflow`,inputs:[]},{type:`error`,name:`InvalidPayee`,inputs:[]},{type:`error`,name:`InvalidSignature`,inputs:[]},{type:`error`,name:`NotPayee`,inputs:[]},{type:`error`,name:`NotPayer`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]}];async function AG(e,t,n){return sV(e,{address:t,abi:kG,functionName:`getChannel`,args:[n]})}pI({abi:kG,name:`open`}),pI({abi:kG,name:`topUp`});function jG(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??lG[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function MG(e,t,n,r){return yM({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function NG(e,t,n,r,i,a,o){let s=await DG(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function PG(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=JT(32),f=OG({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=SI({abi:Z,functionName:`approve`,args:[r,o]}),m=SI({abi:kG,functionName:`open`,args:[i,a,o,d,u]}),h=await Wz(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await YH(e,h),_=await DG(e,t,{channelId:f,cumulativeAmount:s},r,c,n.authorizedSigner);return{entry:{channelId:f,salt:d,cumulativeAmount:s,escrowContract:r,chainId:c,opened:!0},payload:{action:`open`,type:`transaction`,channelId:f,transaction:g,authorizedSigner:u,cumulativeAmount:s.toString(),signature:_}}}async function FG(e,t,n,r){try{let i=await AG(e,t,n);if(i.deposit>0n&&!i.finalized)return{channelId:n,salt:`0x`,cumulativeAmount:i.settled,escrowContract:t,chainId:r,opened:!0}}catch{}}let IG=QA({account:G(hj()),action:G(oj([`open`,`topUp`,`voucher`,`close`])),channelId:G(HA()),cumulativeAmount:G(_j()),cumulativeAmountRaw:G(HA()),transaction:G(HA()),authorizedSigner:G(HA()),additionalDeposit:G(_j()),additionalDepositRaw:G(HA()),depositRaw:G(HA())});function LG(e={}){let{decimals:t=6}=e,n=tG({chain:mW,getClient:e.getClient,rpcUrl:uG}),r=eG({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:LH(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return jG(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return LH(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),w=u(v,y,_),te=s.get(w);if(!te){let e=p?.channelId??m?.channelId;if(e){let n=await FG(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?LH(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(w,n),c.set(n.channelId,w),o.set(n.channelId,_),te=n,l(te)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(te?.opened)te.cumulativeAmount+=b,ne=await NG(g,f,te.channelId,te.cumulativeAmount,_,h,C),l(te);else{let e=await PG(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(w,e.entry),c.set(e.entry.channelId,w),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return MG(r,ne,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?LH(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?LH(a.additionalDeposit,t):void 0,x=d(e,u,v);o.set(v,x);let S;switch(p){case`open`:{if(!h)throw Error(`transaction required for open action`);if(y===void 0)throw Error(`cumulativeAmount required for open action`);let e=await DG(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`open`,type:`transaction`,channelId:v,transaction:h,authorizedSigner:_??r.address,cumulativeAmount:y.toString(),signature:e};break}case`topUp`:if(!h)throw Error(`transaction required for topUp action`);if(b===void 0)throw Error(`additionalDeposit required for topUp action`);S={action:`topUp`,type:`transaction`,channelId:v,transaction:h,additionalDeposit:b.toString()};break;case`voucher`:{if(y===void 0)throw Error(`cumulativeAmount required for voucher action`);S=await NG(f,r,v,y,x,u,_);let e=c.get(v);if(e){let t=s.get(e);t&&(t.cumulativeAmount=t.cumulativeAmount>y?t.cumulativeAmount:y,l(t))}break}case`close`:{if(y===void 0)throw Error(`cumulativeAmount required for close action`);let e=await DG(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`close`,channelId:v,cumulativeAmount:y.toString(),signature:e};let t=c.get(v);if(t){let e=s.get(t);e&&(e.opened=!1,e.cumulativeAmount=e.cumulativeAmount>y?e.cumulativeAmount:y,l(e))}break}}return MG(e,S,u,r)}return xM(CG,{context:IG,async createCredential({challenge:t,context:i}){let o=r(await n({chainId:t.request.methodDetails?.chainId??0}),i);if(!i?.action&&(e.deposit!==void 0||a!==void 0))return f(t,o,i);if(i?.action)return p(t,o,i);throw Error(\"No `action` in context and no `deposit` or `maxDeposit` configured. Either provide context with action/channelId/cumulativeAmount, or configure `deposit`/`maxDeposit` for auto-management.\")}})}function RG(e){let t=XO(e);return JSON.parse(t)}function zG(e){let t=`message`,n=[];for(let r of e.split(`\n`))r.startsWith(`event: `)?t=r.slice(7).trim():r.startsWith(`data: `)?n.push(r.slice(6)):r===`data:`&&n.push(``);if(n.length===0)return null;let r=n.join(`\n`);switch(t){case`message`:return{type:`message`,data:r};case`payment-need-voucher`:return{type:`payment-need-voucher`,data:JSON.parse(r)};case`payment-receipt`:return{type:`payment-receipt`,data:JSON.parse(r)};default:return{type:`message`,data:r}}}function BG(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function VG(){return JSON.stringify({mpp:`payment-close-request`})}function HG(e){try{let t=JSON.parse(e);return t.mpp===`authorization`&&typeof t.authorization==`string`?{mpp:`authorization`,authorization:t.authorization}:t.mpp===`message`&&typeof t.data==`string`?{mpp:`message`,data:t.data}:t.mpp===`payment-close-request`?{mpp:`payment-close-request`}:t.mpp===`payment-close-ready`&&UG(t.data)?{mpp:`payment-close-ready`,data:t.data}:t.mpp===`payment-error`&&typeof t.status==`number`&&typeof t.message==`string`?{mpp:`payment-error`,status:t.status,message:t.message}:t.mpp===`payment-need-voucher`&&WG(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&UG(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function UG(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function WG(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let GG={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function KG(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:LH(e.maxDeposit,e.decimals??6),i=null,a=null,o=null,s=0n,c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=0n,g=0n,_=LG({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=nM({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);re(t),re(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function C(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function w(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function ne(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function re(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ie(e){let t=e.headers.get(`Payment-Receipt`),n=t?RG(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ae(e,t){return o=e,ie(await v(e,t))}function oe(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=GG.CLOSED,r=null}if(e===`open`&&(i=GG.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available — call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ae,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ae(e,{...s,headers:{...iM(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=zG(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);re(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let ne=jj(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!ne)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=ne;let ie=await _.createCredential({challenge:ne,context:{}});d=null,c=ne,h=0n,g=BigInt(ne.request.amount);let ae=vM(ie);l=ae.payload.channelId;let se=new n(v,f);u=se;let ce=oe(se),le=e=>{w(Error(e)),te(Error(e)),(se.readyState===GG.CONNECTING||se.readyState===GG.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===ne.id&&e.channelId===l,de=new Promise((e,t)=>{let n=()=>{se.removeEventListener(`error`,r),ce.emit(`open`,{type:`open`}),e()},r=()=>{se.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};se.addEventListener(`open`,n,{once:!0}),se.addEventListener(`error`,r,{once:!0})});return se.addEventListener(`close`,e=>{u===se&&(u=null),c===ne&&(c=null),l===ae.payload.channelId&&(l=null),p=null,w(Error(`WebSocket closed before the payment flow completed.`)),te(Error(`WebSocket closed before the payment flow completed.`)),ce.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),se.addEventListener(`error`,()=>{ce.emit(`error`,{type:`error`})}),se.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=HG(t);if(!n){ce.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,ce.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!ue(n.data)){le(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){le(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),C(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:w(Error(n.message)),te(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){le(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){le(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ne,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(BG(r));break}case`payment-receipt`:if(!ue(n.data)){le(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){le(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{w(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(BG(ie)),await x(),ce.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===GG.OPEN){let t=d??await(async()=>(u.send(VG()),S()))(),r=BigInt(t.spent);if(r>(i.cumulativeAmount>s?i.cumulativeAmount:s))throw Error(`close-ready spent exceeds local voucher state`);let a=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:r.toString()}}),o=r.toString();p=o;try{let t=x(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(BG(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(ne(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return re(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?RG(m):void 0}}}function qG(e={}){return[wG(e),LG(e)]}(function(e){e.charge=wG,e.session=KG})(qG||={});function JG(e){return e}function YG(){return JG({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return jj(e)},getChallenge(e){return Aj(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function XG(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=YG()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=Lj(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=nM(l);return n&&rM(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=Vj(r,o,ZG(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a;c.expires&&Dw(c.expires,c.id);let u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function ZG(e,t){return t?typeof t==`string`?Rj(t):t:e}rt(),O(),Rr();let QG=`0x01`,$G=`0x02`,eK=`0x03`,tK=`0x04`,nK=`0x7777777777777777777777777777777777777777777777777777777777777777`;function rK(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:rK({...e,signature:t.inner}):ea(iK(e))}function iK(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return pl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return iK({payload:t,signature:n.inner})}}function aK(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?D(e,0,-Jr(nK)):e;if(Jr(t)===65){let e=fc(t);return uc(e),{signature:e,type:`secp256k1`}}let n=D(t,0,1),r=D(t,1),i=Jr(r);if(n===QG){if(i!==129)throw new pK({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:Xr(D(r,64,96)),y:Xr(D(r,96,128))},prehash:Zr(D(r,128,129))!==0,signature:{r:Xr(D(r,0,32)),s:Xr(D(r,32,64))},type:`p256`}}if(n===$G){if(i<128)throw new pK({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=D(r,0,e),a,o;for(let t=37;t<e;t++){let e=Qr(D(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=D(n,0,t),o=e;break}catch{}}if(!a||!o)throw new pK({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:Xr(D(r,e+64,e+96)),y:Xr(D(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:Xr(D(r,e,e+32)),s:Xr(D(r,e+32,e+64))},type:`webAuthn`}}if(n===eK||n===tK)return{userAddress:D(r,0,20),inner:aK(D(r,20)),type:`keychain`,version:n===tK?`v2`:`v1`};throw new pK({reason:`Unknown signature type identifier: ${n}. Expected ${QG} (P256), ${$G} (WebAuthn), ${eK} (Keychain V1), or ${tK} (Keychain V2)`,serialized:t})}function oK(e,t){if(typeof e==`string`)return aK(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=cK(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:ea(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:ea(pl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function sK(e){if(e.type===`secp256k1`)return{signature:gc(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Jr(t),r,i;for(let e=37;e<n;e++){let n=Qr(D(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=D(t,0,e),i=n;break}catch{}}if(!r||!i)throw new pK({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:sK(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new fK({envelope:e})}function cK(e){if(typeof e!=`object`||!e)throw new fK({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new fK({envelope:e})}function lK(e,t={}){let n=cK(e);if(n===`secp256k1`)return Br(vc(e.signature),t.magic?nK:`0x`);if(n===`p256`){let n=e;return Br(QG,E(n.signature.r,{size:32}),E(n.signature.s,{size:32}),E(n.publicKey.x,{size:32}),E(n.publicKey.y,{size:32}),E(+!!n.prehash,{size:1}),t.magic?nK:`0x`)}if(n===`webAuthn`){let n=e;return Br($G,Br(n.metadata.authenticatorData,Wr(n.metadata.clientDataJSON)),E(n.signature.r,{size:32}),E(n.signature.s,{size:32}),E(n.publicKey.x,{size:32}),E(n.publicKey.y,{size:32}),t.magic?nK:`0x`)}if(n===`keychain`){let n=e;return Br(n.version===`v1`?eK:tK,n.userAddress,lK(n.inner),t.magic?nK:`0x`)}throw new fK({envelope:e})}function uK(e){let t=cK(e);if(t===`secp256k1`)return{...yc(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:E(t.publicKey.x,{size:32}),pubKeyY:E(t.publicKey.y,{size:32}),r:E(t.signature.r,{size:32}),s:E(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=Br(t.metadata.authenticatorData,Wr(t.metadata.clientDataJSON));return{pubKeyX:E(t.publicKey.x,{size:32}),pubKeyY:E(t.publicKey.y,{size:32}),r:E(t.signature.r,{size:32}),s:E(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:uK(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new fK({envelope:e})}function dK(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return ea(t.publicKey)})();if(!r)return!1;let i=oK(e);if(i.type===`secp256k1`)return r?hl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return ta(ea(i.publicKey),r)?Ll({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return ta(ea(i.publicKey),r)?zu({challenge:Vr(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new mK(`Unable to verify signature envelope of type \"${i.type}\".`)}var fK=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Ir(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},pK=class extends T{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},mK=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};rt(),O();function hK(e){return e.startsWith(`tempo`)?gK(e).address:e}function gK(e){if(!e.startsWith(`tempox`))throw new _K({address:e});let t=e.slice(6);return zr(t,{strict:!0}),{address:Qi(t)}}var _K=class extends T{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};O();function vK(e,t={}){if(typeof e.chainId==`string`)return yK(e);let n={...e,address:hK(e.address)};return t.signature?{...n,signature:t.signature}:n}function yK(e){let{address:t,chainId:n,nonce:r}=e,i=sK(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function bK(e){return e.map(e=>yK(e))}function xK(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=aK(i)),vK(a)}function SK(e){let t=[];for(let n of e)t.push(xK(n));return t}function CK(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:E(n),nonce:E(r),signature:uK(i)}}function wK(e){return e.map(e=>CK(e))}function TK(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?lK(e.signature):void 0;return[n?E(n):`0x`,t,r?E(r):`0x`,...i?[i]:[]]}function EK(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(TK(n));return t}O();function DK(e,t={}){if(`keyId`in e)return OK(e);let n=e,r={...n,address:hK(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:hK(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:hK(e.address),selector:zK(e.selector),...e.recipients?{recipients:e.recipients.map(e=>hK(e))}:{}}))}:{}};return t.signature?{...r,signature:oK(t.signature)}:r}function OK(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=sK(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:RK(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:Xr(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&LK(e.period)>0?{period:LK(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function kK(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:LK(o)||void 0,type:l,chainId:r===`0x`?0n:Xr(r),...o===void 0?{}:{expiry:LK(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:IK(n),...r===void 0?{}:{period:LK(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=aK(n)),DK(u)}function AK(e){return jK(e)}function jK(e){let[t]=NK(e);return Fi(fo(t))}function MK(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:zK(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:E(r),expiry:typeof i==`number`?E(i):null,keyId:hK(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:E(t),...n?{period:FK(n)}:{}})),signature:uK(s),...c?{allowedCalls:c}:{}}}function NK(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?lK(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,PK(e.limit)];return e.period&&e.period>0&&t.push(FK(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([zK(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[PK(n),s,t,i!=null&&i!==0||c||l?FK(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function PK(e){return e===0n?`0x`:E(e)}function FK(e){return e===0?`0x`:E(e)}function IK(e){return e===`0x`?0n:BigInt(e)}function LK(e){return e===`0x`?0:Zr(e)}function RK(e){return typeof e==`string`?e:Array.isArray(e)?Ur(new Uint8Array(e)):e}function zK(e){if(e)return e.startsWith(`0x`)?e:ua(e)}O();let BK=`0x20c0`;function VK(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):HK(e)}function HK(e){let t=hK(e);if(!t.toLowerCase().startsWith(BK))throw Error(`invalid tip20 address.`);return Xr(D(t,6))}function UK(e){if(typeof e==`string`){let t=hK(e);return Zi(t),t}return Br(BK,E(e,{size:18}))}O();let WK={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function GK(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Fi(Wr(WK[e]??e))}let KK={...Vc,tempo:`0x76`},qK={...Hc,\"0x76\":`tempo`};function JK(e,t={}){if(!e)return null;let n=Uc(e);return n.type=qK[e.type],e.aaAuthorizationList&&(n.authorizationList=bK(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=sK(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=OK(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=gc(e.feePayerSignature),n.feePayerSignature.v=Sc(n.feePayerSignature.yParity)),n}O();function YK(e){let t=xu({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=wK(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?hK(e.to):e.to,value:e.value?E(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?hK(e.to):void 0,value:e.value?E(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=UK(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=MK(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=E(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=E(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return qr(6);if(typeof e.nonceKey==`bigint`)return E(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=KK.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}rt(),O();let XK=`tempo`;function ZK(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new iq;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new aq({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&Zi(e.to,{strict:!1});if(n<=0)throw new Eu({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Tu({feeCap:r});if(i&&r&&i>r)throw new Ou({maxFeePerGas:r,maxPriorityFeePerGas:i})}function QK(e){let t=ao(D(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new Du({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:XK});let y={chainId:Number(n),type:XK};$r(a)&&a!==`0x`&&(y.gas=BigInt(a)),$r(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),$r(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),$r(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),$r(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),$r(u)&&u!==`0x`&&(y.validBefore=Number(u)),$r(d)&&d!==`0x`&&(y.validAfter=Number(d)),$r(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=no(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=SK(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||na(p)?(y.feePayerSignature=null,na(p)&&(y.from=p)):y.feePayerSignature=_c(p)),_&&(y.keyAuthorization=kK(_));let b=v?aK(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=rK({payload:tq($K(y)),signature:b,root:!0})}catch{}return ZK(y),y}function $K(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?QK(e):e;return i.from&&=hK(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:hK(e.to)}:{}})),ZK(i),{...i,...r?{signature:oK(r)}:{},...n?{feePayerSignature:mc(n)}:{},type:`tempo`}}function eq(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;ZK(e);let h=ro(n),g=t.signature||e.signature,_=EK(r),v=i.map(e=>[e.to?hK(e.to):`0x`,e.value?E(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=oK(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return ea(t.publicKey);if(t.type===`secp256k1`)return fl({payload:tq($K(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?bc(n):`0x`})(),x=[E(a),f?E(f):`0x`,d?E(d):`0x`,s?E(s):`0x`,v,h,u?E(u):`0x`,l?E(l):`0x`,typeof p==`number`?E(p):`0x`,typeof m==`number`?E(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?UK(o):`0x`,b,_,...c?[NK(c)]:[],...g?[lK(oK(g))]:[]];return Br(t.format===`feePayer`?`0x78`:`0x76`,fo(x))}function tq(e,t={}){let n=nq(e,{presign:!0});return t.from?Fi(Br(`0x04`,n,hK(t.from))):n}function nq(e,t={}){return Fi(eq({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function rq(e,t){let n=hK(t.sender);return Fi(eq({...e,signature:void 0},{sender:n,format:`feePayer`}))}var iq=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},aq=class extends T{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};O();function oq(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:av(e)}function sq(e){try{return oq(e)===`tempo`}catch{return!1}}function cq(e){let t=D(e,0,1);return t===`0x76`||t===`0x78`?uq(e):Kb(e)}async function lq(e,t){if(!sq(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return $y(e,{r:E(n,{size:32}),s:E(r,{size:32}),yParity:i})}return $y(e,t)}if(oq(e)===`tempo`)return dq(e,t);throw Error(`Unsupported transaction type`)}function uq(e){let{feePayerSignature:t,nonce:n,...r}=QK(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:E(t.r,{size:32}),s:E(t.s,{size:32}),yParity:t.yParity}}}async function dq(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return oK({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=$K(c,{signature:n}),r=rq(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return fl({payload:tq(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return eq(t,{feePayerSignature:mc(await e.feePayer.sign({hash:r}))})}return i===!0?n?eq(c,{format:`feePayer`,sender:e.from,signature:n}):eq(c,{feePayerSignature:null}):eq({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}O(),Bm(),C_();function fq(e){if(!sq(e))return L_(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=JK(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:E(t.r,{size:32}),s:E(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:KK[i.type],type:i.type}}function pq(e){return By(e)}function mq(e,t){let n=e,r=n.account?zm(n.account):void 0;if(!sq(n))return y_(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=YK({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?zm(n.feePayer):n.feePayer}:{}}}let hq=new Map;async function gq(e){hq.set(e,(hq.get(e)??0)+1),await Promise.resolve();let t=(hq.get(e)??0)>1;return queueMicrotask(()=>{let t=hq.get(e)??0;t<=1?hq.delete(e):hq.set(e,t-1)}),t}k_(),C_();let _q={blockTime:1e3,extendSchema:pb(),formatters:{transaction:R_({exclude:[`aaAuthorizationList`],format:fq}),transactionReceipt:Vy({format:pq}),transactionRequest:S_({format:mq})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await gq(e):!1})()?(n.nonceKey=O_,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>lq(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=aK(i);if(a.type!==`keychain`){let i=await Ky(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return dK(a,{address:n,payload:r})}}return await _f(e,cx,`verifyHash`)({...t,chain:null})}},vq=fb({..._q,id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),yq=fb({..._q,id:31318,name:`Tempo Devnet`,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.devnet.tempo.xyz`}},nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.devnet.tempoxyz.dev`],webSocket:[`wss://rpc.devnet.tempoxyz.dev`]}}}),bq=fb({..._q,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),xq=fb({..._q,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),$=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],Sq=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];O(),Bm(),Lp();function Cq(e){let{access:t}=e;return t?jq(e):Aq(e)}function wq(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Fl({privateKey:e});return Cq({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Lu({...t,challenge:n,rpId:r,origin:i});return lK({metadata:a,signature:Il({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function Tq(e,t={}){let{access:n,internal_version:r}=t,i=Fl({privateKey:e});return Cq({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return lK({signature:Il({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function Eq(e,t={}){let{access:n,internal_version:r}=t;return Cq({access:n,internal_version:r,keyType:`secp256k1`,publicKey:dl({privateKey:e}),async sign(t){let{hash:n}=t;return vc(ml({payload:n,privateKey:e}))}})}function Dq(e,t={}){let{id:n}=e,r=Hi(e.publicKey);return Cq({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Ru({...t,challenge:e,credentialId:n});return lK({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function Oq(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return Cq({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return lK({signature:await Vu({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function kq(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??ea(e.publicKey),o=Wi(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Ip(Br(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?lK(oK({userAddress:n,inner:oK(o),type:`keychain`,version:i})):t===`secp256k1`?o:Br(o,nK)}return{address:Qi(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=oK(await s({hash:Xg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:E(a,{size:32}),s:E(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Tb(t)})},async signTransaction(e,t){let{serializer:n=lq}=t??{};return await n(e,oK(await s({hash:Ip(await n(e))})))},async signTypedData(e){return await s({hash:Mb(e)})},publicKey:o,source:r,type:`local`}}function Aq(e){let t=kq(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return DK({address:o,chainId:r,expiry:i,limits:a,signature:oK(await t.sign({hash:AK({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function jq(e){let{access:t}=e,{address:n}=zm(t);return{...kq({...e,parentAddress:n}),accessKeyAddress:ea(e.publicKey),source:`accessKey`}}function Mq(e){return{...e,data:Wm(e),to:e.address}}O(),Bm(),Gm();async function Nq(e,t){let{token:n,...r}=t;return Nq.inner(Ly,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(Nq||={});async function Pq(e,t){return Pq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(Pq||={});async function Fq(e,t){return Fq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Gr(n,32)]}:{functionName:`burn`,args:[t]};return Mq({address:UK(r),abi:$,...i})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(Fq||={});async function Iq(e,t){return Iq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return Mq({address:UK(t),abi:$,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(Iq||={});async function Lq(e,t){return Lq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?zm(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=qr(32)}=e;return Mq({address:`0x20fc000000000000000000000000000000000000`,abi:Sq,args:[t,n,r,UK(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=bv({abi:Sq,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(Lq||={});async function Rq(e,t){let{account:n=e.account}=t,r=n?zm(n).address:void 0;if(!r)throw Error(`account is required.`);return ky(e,{...t,...Rq.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`allowance`,args:[t,n]})}e.call=t})(Rq||={});async function zq(e,t){let{account:n=e.account,...r}=t,i=n?zm(n).address:void 0;if(!i)throw Error(`account is required.`);return ky(e,{...r,...zq.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return Mq({address:UK(n),abi:$,functionName:`balanceOf`,args:[t]})}e.call=t})(zq||={});async function Bq(e,t){let{token:n,...r}=t,i=UK(n),a=$;return VK(n)===HK(`0x20c0000000000000000000000000000000000000`)?nx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):nx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function Vq(e,t){return ky(e,{...t,...Vq.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return Mq({address:UK(n),abi:$,functionName:`getRoleAdmin`,args:[GK(t)]})}e.call=t})(Vq||={});async function Hq(e,t){let{account:n=e.account}=t,r=n?zm(n).address:void 0;if(!r)throw Error(`account is required.`);return ky(e,{...t,...Hq.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`hasRole`,args:[t,GK(n)]})}e.call=t})(Hq||={});async function Uq(e,t){return Uq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=GK(r);return Mq({address:UK(t),abi:$,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Uq||={});async function Wq(e,t){return Wq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Gr(r,32)]}:{functionName:`mint`,args:[t,n]};return Mq({address:UK(i),abi:$,...a})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(Wq||={});async function Gq(e,t){return Gq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Mq({address:UK(t),abi:$,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(Gq||={});async function Kq(e,t){return Kq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=GK(n);return Mq({address:UK(t),abi:$,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Kq||={});async function qq(e,t){return qq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=GK(r);return Mq({address:UK(t),abi:$,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(qq||={});async function Jq(e,t){return Jq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return Mq({address:UK(t),abi:$,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(Jq||={});async function Yq(e,t){return Yq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=GK(n),a=GK(r);return Mq({address:UK(t),abi:$,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(Yq||={});async function Xq(e,t){return Xq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Gr(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Gr(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return Mq({address:UK(i),abi:$,...o})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(Xq||={});async function Zq(e,t){return Zq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Mq({address:UK(t),abi:$,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(Zq||={});async function Qq(e,t){return Qq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return Mq({address:UK(t),abi:$,functionName:`setNextQuoteToken`,args:[UK(n)]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(Qq||={});async function $q(e,t){return $q.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Mq({address:UK(t),abi:$,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})($q||={});function eJ(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress,{accessKeys:i}=n.getState();return i.find(e=>e.address?.toLowerCase()===r.toLowerCase())?.keyAuthorization}async function tJ(e={}){let{account:t}=e,n=await Bu();return{accessKey:Oq(n,t?{access:t}:void 0),keyPair:n}}function nJ(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.filter(e=>e.address?.toLowerCase()!==r?.toLowerCase())}))}function rJ(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.map(e=>e.address.toLowerCase()===r.toLowerCase()?{...e,keyAuthorization:void 0}:e)}))}function iJ(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o={address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,scopes:n.scopes},s=i?{...o,privateKey:i}:r?{...o,keyPair:r}:{...o};a.setState(e=>({accessKeys:[s,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function aJ(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new nu({message:`Account \"${n}\" not found.`}):new iu({message:`No active account.`});if(t){let t=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(t){if(t.expiry&&t.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(e=>e!==t)});else if(cJ(t,e))return oJ(t)}}return sJ(l,{signable:r})}function oJ(e){if(`keyPair`in e&&e.keyPair)return Oq(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return Eq(e.privateKey,{access:e.access});case`p256`:return Tq(e.privateKey,{access:e.access})}throw new nu({message:`External access key cannot be hydrated for signing.`})}function sJ(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new nu({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return Eq(e.privateKey);case`p256`:return Tq(e.privateKey);case`webCrypto`:return Oq(e.keyPair);case`webAuthn`:return Dq(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return wq(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new nu({message:`Unknown key type.`})}}function cJ(e,t){return!t.calls||!e.scopes?!0:t.calls.every(t=>{if(!t.to)return!1;let n=t.to.toLowerCase(),r=t.data?.slice(0,10).toLowerCase();return e.scopes.some(e=>e.address.toLowerCase()===n?e.selector?r===(e.selector.startsWith(`0x`)&&e.selector.length===10?e.selector:to(e.selector)).toLowerCase():!0:!1)})}function lJ(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function uJ(e={}){let{dialog:t=x()?re():ne(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`,theme:o}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),lJ({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=vu();function c(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new tu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new tu({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let l=hu({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:bw});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await tJ();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){iJ({address:e,keyAuthorization:OK(t),keyPair:n,store:i})}async function f(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=eJ(n,{store:i});try{let e=await t(n,r??void 0);return rJ(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),nJ(n,{store:i});return}}let p=t({host:n,store:i,theme:o}),m=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);p?.syncRequests(t),t.length===0&&p?.close()});return{cleanup(){m(),p?.destroy()},actions:{async createAccount(e,t){let n=await u(e.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Xx(fw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await u(e?.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Xx(fw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await l.request(t)},async signTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=await fv(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async signTypedData(e,t){return await l.request(t)},async sendTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await fv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async sendTransactionSync(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await fv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[Xx(fw.authorizeAccessKey,r?r.request:t)]});return r&&d(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await l.request(t)},async deposit(e,t){return await l.request(t)},async send(e,t){return await l.request({...t,params:[Xx(gw.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let dJ=new Map;function fJ(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return mJ(r);if(r?.url)return mJ(r.url)}})(),s=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,c=e??a.getState().chainId,l=`${c}:${i?`p`:``}:${r===!1?`no-fp`:o??``}:${s}`,u=dJ.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=gx(),r=i?pJ(i,t):t;u=Gy({chain:e,transport:o?hJ(r,o,s):r,pollingInterval:1e3}),dJ.set(l,u)}return u}function pJ(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function mJ(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function hJ(e,t,n){return r=>{let i=e(r),a=gx(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=cq(t);if(`feePayerSignature`in n&&n.feePayerSignature===null){let n=await a.request({method:`eth_signRawTransaction`,params:[t]});return await i.request({method:e,params:[n]})}}}return await i.request({method:e,params:t})}}}}function gJ(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(gJ.cache.get(n))return gJ.cache.get(n);let r=e().finally(()=>gJ.cache.delete(n));return gJ.cache.set(n,r),r}gJ.cache=new Map;function _J(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function vJ(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=_J(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let yJ;function bJ(){return yJ||=vJ(`keyval-store`,`keyval`),yJ}function xJ(e,t=bJ()){return t(`readonly`,t=>_J(t.get(e)))}function SJ(e,t,n=bJ()){return n(`readwrite`,n=>(n.put(t,e),_J(n.transaction)))}function CJ(e,t=bJ()){return t(`readwrite`,t=>(t.delete(e),_J(t.transaction)))}function wJ(e,t={}){let n=`${t.key??`tempo`}.`;return{getItem:t=>e.getItem(`${n}${t}`),setItem:(t,r)=>e.setItem(`${n}${t}`,r),removeItem:t=>e.removeItem(`${n}${t}`)}}function TJ(e={}){let t=typeof indexedDB<`u`?vJ(`tempo`,`store`):void 0;return wJ({async getItem(e){let n=await xJ(e,t);return n===null?null:n},async setItem(e,n){await SJ(e,n,t)},async removeItem(e){await CJ(e,t)}},e)}function EJ(e={}){let t=new Map;return wJ({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let DJ=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)};function OJ(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}let kJ=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return kJ(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return kJ(t)(e)}}}},AJ=(e,t)=>(n,r,i)=>{let a={storage:OJ(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return kJ(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},jJ=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},MJ=(e=>e?jJ(e):jJ);function NJ(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?TJ({key:`tempo`}):EJ({key:`tempo`})}=e;return MJ(DJ(AJ(()=>({accessKeys:[],accounts:[],activeAccount:0,chainId:t,requestQueue:[]}),{merge(e,t){let n=e;return{...n,...t,accounts:n.accounts?.map(e=>t.accounts.find(t=>t.address.toLowerCase()===e.address.toLowerCase())??e)??t.accounts,accessKeys:n.accessKeys??t.accessKeys,chainId:n.chainId??t.chainId}},name:`store`,partialize:e=>({accounts:n&&e.accounts.length>n?e.accounts.slice(0,n):e.accounts,activeAccount:e.activeAccount,...r?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:i,version:0})))}async function PJ(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function FJ(e,t){let n=Jx(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new ru({message:`Unsupported method \"${t?.method}\".`}):new eu(-32602,`Invalid params: ${IJ(n.error.issues)}`)}return{...t,_decoded:n.data}}function IJ(e){return e.flatMap(e=>e.code===`invalid_union`&&e.errors.length>0?e.errors.flatMap(t=>t.map(t=>`${[...e.path,...t.path].join(`.`)}: ${t.code===`invalid_union`&&t.errors.length>0?IJ([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let LJ=new Set;function RJ(e={}){let{adapter:t=uJ(),chains:n=[vq,xq,yq],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?TJ():EJ()}=e,s=(()=>{if(e.feePayer)return typeof e.feePayer==`string`?{precedence:`fee-payer-first`,url:e.feePayer}:{precedence:e.feePayer.precedence??`fee-payer-first`,url:e.feePayer.url}})(),c=NJ({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>aJ({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return fJ(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:s?.precedence}})(),store:c})}let f=t({getAccount:l,getClient:d,storage:o,store:c}),{actions:p}=f,m=mu();c.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>m.emit(`accountsChanged`,c.getState().accounts.map(e=>e.address))),c.subscribe(e=>e.chainId,e=>m.emit(`chainChanged`,E(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:E(c.getState().chainId)}):m.emit(`disconnect`,new iu)});function h(){if(c.getState().accounts.length===0)throw new iu({message:`No accounts connected.`})}function g(e){if(!f.persistAccounts)return e;let t=[...e];for(let e of c.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function _(e){if(e===!1)return!1;let t=typeof e==`string`?e:s?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let v=Object.assign(hu({...m,async request({method:t,params:r}){return await PJ(c),gJ(async()=>{let i;try{i=FJ(Sw,{method:t,params:r})}catch(e){if(!(e instanceof ru))throw e;return await fJ(void 0,{chains:n,store:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=c.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return E(c.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await p.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return c.setState({accounts:g(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=_(t.feePayer),a=e=>{let t=d({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return l({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=eJ(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...MK(n)}});return rJ(e,{store:c}),r}catch{return nJ(e,{store:c}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.signTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_sendTransactionSync`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransactionSync({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_signTypedData_v4`:{h();let[e,t]=i._decoded.params;return await p.signTypedData({address:e,data:t},i)}case`personal_sign`:{h();let[e,t]=i._decoded.params;return await p.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{h();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=_(t?.feePayer??(s?!0:void 0)),l={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=Br(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[Xx(YC,l)]}),Gr(E(c.getState().chainId),32),BJ);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[Xx(YC,l)]}),d=u.transactionHash,f=E(c.getState().chainId),m=Br(d,Gr(f,32),BJ);return{atomic:!0,capabilities:{sync:a},chainId:f,id:m,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=c.getState(),a=e?.account??t[r]?.address;if(!a)throw new iu({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new Zl({message:\"`tokens` is required.\"});let s=fJ(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([zq(s,{account:a,token:e}),Bq(s,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:E(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(BJ.slice(2)))throw Error(\"`id` not supported\");zr(e);let t=D(e,0,32),r=E(Number(D(e,32,64))),a=await fJ(Number(r),{chains:n,store:c}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=c.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new nu({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(E(e.id))):n,o={};for(let e of a)o[E(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??qr(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new ru({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await p.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(h(),!p.revokeAccessKey)throw new ru({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await p.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!p.deposit)throw new ru({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new ru({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new cu({message:`Chain ${e} not configured.`});await p.switchChain?.({chainId:e}),c.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Ir({method:t,params:r})})}},{schema:bw}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return fJ(t,{chains:n,feePayer:r,provider:u,store:c})},store:c});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;LJ.has(e)||(LJ.add(e),Cw({info:{icon:t.icon??zJ,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&XG({methods:[qG({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let zJ=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,BJ=Fi(Wr(`TEMPO_5792`)),VJ={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},HJ={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},UJ={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var WJ=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let GJ={accent:new WJ(`accent`),background:new WJ(`background`),border:new WJ(`border`),foreground:new WJ(`foreground`),muted:new WJ(`muted`),negative:new WJ(`negative`),positive:new WJ(`positive`),surface:new WJ(`surface`),fontFamily:new WJ(`font-family`),fontSizeBase:new WJ(`font-size-base`),radius:new WJ(`radius`),spacingUnit:new WJ(`spacing-unit`)};String.raw`<style>\n *,\n ::after,\n ::before,\n ::backdrop,\n ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n border-color: ${GJ.border};\n }\n html,\n :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n vertical-align: middle;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea,\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type='button'], [type='reset'], [type='submit']),\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n }\n</style>`;async function KJ(e){let t=new URL(location.href);t.searchParams.set(HJ.serviceWorker,``);let n=await navigator.serviceWorker.register(t.pathname+t.search),r=await new Promise(e=>{let t=n.installing??n.waiting??n.active;if(t?.state===`activated`)return e(t);let r=t??n;r.addEventListener(`statechange`,function t(){let i=n.active;i?.state===`activated`&&(r.removeEventListener(`statechange`,t),e(i))})});await new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>t(),r.postMessage({credential:e},[n.port2])}),location.reload()}function qJ(e){let t=document.getElementById(VJ.data),n=IT(t.textContent),r=t.getAttribute(UJ.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(UJ.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(UJ.challengeId),o=a?(i.removeAttribute(UJ.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(VJ.error)?.remove();return}let t=document.getElementById(VJ.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=VJ.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:KJ,vars:GJ}}let JJ=qJ(`tempo`),YJ=String.raw,XJ=document.createElement(`style`);XJ.textContent=YJ`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${JJ.vars.spacingUnit} * 8);\n }\n button {\n background: ${JJ.vars.accent};\n border-radius: ${JJ.vars.radius};\n color: ${JJ.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${JJ.vars.spacingUnit} * 4) calc(${JJ.vars.spacingUnit} * 8);\n width: 100%;\n }\n button:hover:not(:disabled) {\n opacity: 0.85;\n }\n button:disabled {\n cursor: default;\n opacity: 0.5;\n }\n button svg {\n display: inline;\n fill: currentColor;\n height: 0.85em;\n transform: translateY(0.05em);\n vertical-align: baseline;\n width: auto;\n }\n`,JJ.root.append(XJ);let ZJ=RJ({testnet:JJ.challenge.request.methodDetails?.chainId===xq.id||JJ.challenge.request.methodDetails?.chainId===bq.id}),QJ=document.createElement(`button`);QJ.innerHTML=`${JJ.text.pay===`Pay`?`Continue with`:JJ.text.pay} <svg aria-label=\"Tempo\" viewBox=\"0 0 107 25\" role=\"img\"><path d=\"M8.10464 23.7163H1.82475L7.64513 5.79356H0.201172L1.82475 0.540352H22.5637L20.9401 5.79356H13.8944L8.10464 23.7163Z\"></path><path d=\"M31.474 23.7163H16.5861L24.0607 0.540352H38.8873L37.4782 4.95923H28.8701L27.3078 9.93433H35.6402L34.231 14.2914H25.8681L24.3057 19.2974H32.8525L31.474 23.7163Z\"></path><path d=\"M38.2124 23.7163H33.2192L40.7244 0.540352H49.0567L48.781 13.0245L56.8989 0.540352H66.0277L58.5531 23.7163H52.3039L57.3584 7.86395L46.9736 23.7163H43.267L43.4201 7.80214L38.2124 23.7163Z\"></path><path d=\"M73.057 4.83563L70.6369 12.3137H71.3108C72.8425 12.3137 74.1189 11.9532 75.14 11.2322C76.1612 10.4906 76.8249 9.43991 77.1312 8.08025C77.3967 6.90601 77.2538 6.07167 76.7023 5.57725C76.1509 5.08284 75.2319 4.83563 73.9453 4.83563H73.057ZM66.9915 23.7163H60.7116L68.1862 0.540352H75.814C77.5703 0.540352 79.0816 0.828764 80.3478 1.40559C81.6344 1.96181 82.5738 2.76524 83.166 3.81588C83.7787 4.84592 83.9829 6.05107 83.7787 7.43133C83.5132 9.2442 82.8189 10.8408 81.6956 12.221C80.5724 13.6013 79.1122 14.6725 77.315 15.4347C75.5383 16.1764 73.5471 16.5472 71.3415 16.5472H69.289L66.9915 23.7163Z\"></path><path d=\"M98.747 22.233C96.664 23.4691 94.4481 24.0871 92.0996 24.0871H92.0383C89.9552 24.0871 88.1989 23.6236 86.7693 22.6965C85.3602 21.7489 84.3493 20.4717 83.7366 18.8648C83.1443 17.2579 83.0014 15.4966 83.3077 13.5807C83.6957 11.1704 84.5841 8.94549 85.9728 6.90601C87.3616 4.86653 89.0975 3.23906 91.1805 2.02361C93.2636 0.808164 95.4897 0.200439 97.8587 0.200439H97.9199C100.085 0.200439 101.872 0.663958 103.281 1.591C104.71 2.51803 105.701 3.78498 106.252 5.39185C106.824 6.97811 106.947 8.76008 106.62 10.7378C106.232 13.0657 105.343 15.2596 103.955 17.3197C102.566 19.3592 100.83 20.997 98.747 22.233ZM90.0777 18.2468C90.6292 19.2974 91.589 19.8227 92.9573 19.8227H93.0186C94.1418 19.8227 95.1833 19.4004 96.1432 18.5558C97.1235 17.6905 97.9506 16.5369 98.6245 15.0948C99.3189 13.6528 99.8294 12.0459 100.156 10.2742C100.463 8.54377 100.34 7.15322 99.7886 6.10257C99.2372 5.03133 98.2875 4.49571 96.9397 4.49571H96.8784C95.8369 4.49571 94.826 4.92833 93.8457 5.79356C92.8858 6.6588 92.0485 7.82274 91.3337 9.2854C90.6189 10.7481 90.0982 12.3343 89.7714 14.0442C89.4446 15.7747 89.5468 17.1755 90.0777 18.2468Z\"></path></svg>`,QJ.onclick=async()=>{try{JJ.error(),QJ.disabled=!0;let e=await(async()=>{let e=await ZJ.request({method:`eth_accounts`});return e.length>0?e.at(0):(await ZJ.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await qG({account:e,getClient:e=>{let t=e.chainId??JJ.challenge.request.methodDetails?.chainId;return Gy({chain:[...ZJ?.chains??[],xq,bq].find(e=>e.id===t),transport:mx(ZJ)})}})[0].createCredential({challenge:JJ.challenge,context:{}});await JJ.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;JJ.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{QJ.disabled=!1}},JJ.root.appendChild(QJ)})();</script>"
2
+ 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(vi(e)>t)throw new ji({givenSize:vi(e),maxSize:t})}function Cr(e,t){if(typeof t==`number`&&t>0&&t>vi(e)-1)throw new Mi({offset:t,position:`start`,size:vi(e)})}function wr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&vi(e)!==n-t)throw new Mi({offset:n,position:`end`,size:vi(e)})}function Tr(e){if(e>=Or.zero&&e<=Or.nine)return e-Or.zero;if(e>=Or.A&&e<=Or.F)return e-(Or.A-10);if(e>=Or.a&&e<=Or.f)return e-(Or.a-10)}function Er(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Ni({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function Dr(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var Or,kr=o((()=>{Pi(),Or={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ar(e,t){if(Jr(e)>t)throw new oi({givenSize:Jr(e),maxSize:t})}function jr(e,t){if(typeof t==`number`&&t>0&&t>Jr(e)-1)throw new si({offset:t,position:`start`,size:Jr(e)})}function Mr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Jr(e)!==n-t)throw new si({offset:n,position:`end`,size:Jr(e)})}function Nr(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new ci({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Pr(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var Fr=o((()=>{O()}));function Ir(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Lr:n,n)}var Lr,Rr=o((()=>{Lr=`#__bigint`}));function zr(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new ri(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new ii(e)}function Br(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function Vr(e){return e instanceof Uint8Array?Ur(e):Array.isArray(e)?Ur(new Uint8Array(e)):e}function Hr(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ar(n,t.size),Gr(n,t.size)):n}function Ur(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=ti[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ar(r,t.size),Kr(r,t.size)):r}function E(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ni({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Gr(s,r):s}function Wr(e,t={}){return Ur(ei.encode(e),t)}function Gr(e,t){return Nr(e,{dir:`left`,size:t})}function Kr(e,t){return Nr(e,{dir:`right`,size:t})}function qr(e){return Ur(_i(e))}function D(e,t,n,r={}){let{strict:i}=r;jr(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Mr(a,t,n),a}function Jr(e){return Math.ceil((e.length-2)/2)}function Yr(e){return Pr(e,{dir:`left`})}function Xr(e,t={}){let{signed:n}=t;t.size&&Ar(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Zr(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:Xr(e,t))}function Qr(e,t={}){let{size:n}=t,r=pi(e);return n&&(Sr(r,n),r=Ti(r)),new TextDecoder().decode(r)}function $r(e,t={}){let{strict:n=!1}=t;try{return zr(e,{strict:n}),!0}catch{return!1}}var ei,ti,ni,ri,ii,ai,oi,si,ci,O=o((()=>{Pi(),rt(),kr(),Fr(),Rr(),ei=new TextEncoder,ti=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ni=class extends T{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},ri=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Ir(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},ii=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},ai=class extends T{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},oi=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},si=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},ci=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function li(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new Ai(e)}function ui(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function di(e){return e instanceof Uint8Array?e:typeof e==`string`?pi(e):fi(e)}function fi(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function pi(e,t={}){let{size:n}=t,r=e;n&&(Ar(e,n),r=Kr(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=Tr(i.charCodeAt(t++)),r=Tr(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new T(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function mi(e,t={}){let{size:n}=t,r=Oi.encode(e);return typeof n==`number`?(Sr(r,n),gi(r,n)):r}function hi(e,t){return rr(e,t)}function gi(e,t){return Er(e,{dir:`right`,size:t})}function _i(e){return crypto.getRandomValues(new Uint8Array(e))}function vi(e){return e.length}function yi(e,t,n,r={}){let{strict:i}=r;Cr(e,t);let a=e.slice(t,n);return i&&wr(a,t,n),a}function bi(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Xr(Ur(e,t),t)}function xi(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(Sr(r,n),r=wi(r)),r.length>1||r[0]>1)throw new ki(r);return!!r[0]}function Si(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Zr(Ur(e,t),t)}function Ci(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(Sr(r,n),r=Ti(r)),Di.decode(r)}function wi(e){return Dr(e,{dir:`left`})}function Ti(e){return Dr(e,{dir:`right`})}function Ei(e){try{return li(e),!0}catch{return!1}}var Di,Oi,ki,Ai,ji,Mi,Ni,Pi=o((()=>{xr(),rt(),O(),kr(),Fr(),Rr(),Di=new TextDecoder,Oi=new TextEncoder,ki=class extends T{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},Ai=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Ir(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},ji=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Mi=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Ni=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));Dn(),Pi(),O();function Fi(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(di(e));return n===`Bytes`?r:Ur(r)}function Ii(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(di(e));return n===`Bytes`?r:Ur(r)}function Li(e){return $r(e)&&Jr(e)===32}let Ri={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;Pi(),rt(),O(),Rr();function zi(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new Ki({prefix:r,cause:new Ji});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Ki({prefix:r,cause:new qi});return}throw new Gi({publicKey:e})}function Bi(e){let t=(()=>{if($r(e))return Hi(e);if(Ei(e))return Vi(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return zi(t),t}function Vi(e){return Hi(Ur(e))}function Hi(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Yi({publicKey:e});return e.length===130?{prefix:4,x:BigInt(D(e,0,32)),y:BigInt(D(e,32,64))}:e.length===132?{prefix:Number(D(e,0,1)),x:BigInt(D(e,1,33)),y:BigInt(D(e,33,65))}:{prefix:Number(D(e,0,1)),x:BigInt(D(e,1,33))}}function Ui(e,t={}){return pi(Wi(e,t))}function Wi(e,t={}){zi(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return Br(a?E(n,{size:1}):`0x`,E(r,{size:32}),typeof i==`bigint`?E(i,{size:32}):`0x`)}var Gi=class extends T{constructor({publicKey:e}){super(`Value \\`${Ir(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},Ki=class extends T{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},qi=class extends T{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},Ji=class extends T{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Yi=class extends T{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Jr(Vr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Pi(),rt();let Xi=/^0x[a-fA-F0-9]{40}$/;function Zi(e,t={}){let{strict:n=!0}=t;if(!Xi.test(e))throw new ra({address:e,cause:new ia});if(n){if(e.toLowerCase()===e)return;if(Qi(e)!==e)throw new ra({address:e,cause:new aa})}}function Qi(e){if(Ri.has(e))return Ri.get(e);Zi(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Fi(mi(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Ri.set(e,i),i}function $i(e,t={}){let{checksum:n=!1}=t;return Zi(e),n?Qi(e):e}function ea(e,t={}){return $i(`0x${Fi(`0x${Wi(e).slice(4)}`).substring(26)}`,t)}function ta(e,t){return Zi(e,{strict:!1}),Zi(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function na(e,t={}){let{strict:n=!0}=t??{};try{return Zi(e,{strict:n}),!0}catch{return!1}}var ra=class extends T{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},ia=class extends T{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},aa=class extends T{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};rt();function oa(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new T(`Unable to normalize signature.`);return i}function sa(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return na(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>sa(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>sa(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ca(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ca(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&na(n[r],{strict:!1}))return o}}rt(),O();function la(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=$r(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?ua(e)===D(t,0,4):e.type===`event`?fa(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ma({name:t});if(o.length===1)return{...o[0],...i?{hash:fa(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:fa(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?sa(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ca(e.inputs,s.inputs,r);if(t)throw new pa({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new ma({name:t});return{...c,...i?{hash:fa(c)}:{}}}function ua(...e){return D(fa((()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})()),0,4)}function da(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})();return oa(typeof t==`string`?t:ye(t))}function fa(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Fi(Wr(da(t)))}var pa=class extends T{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${oa(ye(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${oa(ye(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},ma=class extends T{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let ha=/^(.*)\\[([0-9]*)\\]$/,ga=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,_a=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let va=2n**256n-1n;Pi(),rt(),O();function ya(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=La(t.type);if(a){let[n,o]=a;return xa(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return Ta(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return ba(e,{checksum:r});if(t.type===`bool`)return Sa(e);if(t.type.startsWith(`bytes`))return Ca(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return wa(e,t);if(t.type===`string`)return Ea(e,{staticPosition:i});throw new eo(t.type)}function ba(e,t={}){let{checksum:n=!1}=t;return[(e=>n?Qi(e):e)(Ur(yi(e.readBytes(32),-20))),32]}function xa(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Si(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Si(e.readBytes(32)),s=Ra(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=ya(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ra(t)){let n=a+Si(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=ya(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=ya(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function Sa(e){return[xi(e.readBytes(32),{size:32}),32]}function Ca(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Si(e.readBytes(32));e.setPosition(n+t);let r=Si(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Ur(i),32]}return[Ur(e.readBytes(Number.parseInt(i,10),32)),32]}function wa(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?bi(i,{signed:n}):Si(i,{signed:n}),32]}function Ta(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(Ra(t)){let n=i+Si(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=ya(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=ya(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function Ea(e,{staticPosition:t}){let n=t+Si(e.readBytes(32));e.setPosition(n);let r=Si(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Ci(wi(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Da({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(Oa({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function Oa({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=La(r.type);if(i){let[t,a]=i;return ja(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Ia(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return Aa(n,{checksum:e});if(r.type===`bool`)return Na(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=_a.exec(r.type)??[];return Pa(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return Ma(n,{type:r.type});if(r.type===`string`)return Fa(n);throw new eo(r.type)}function ka(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Jr(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(E(t+i,{size:32})),r.push(s),i+=Jr(s)):n.push(s)}return Br(...n,...r)}function Aa(e,t){let{checksum:n=!1}=t;return Zi(e,{strict:n}),{dynamic:!1,encoded:Gr(e.toLowerCase())}}function ja(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new $a(e);if(!a&&e.length!==r)throw new Xa({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=Oa({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ka(s);if(a){let t=E(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?Br(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Br(...s.map(({encoded:e})=>e))}}function Ma(e,{type:t}){let[,n]=t.split(`bytes`),r=Jr(e);if(!n){let t=e;return r%32!=0&&(t=Kr(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:Br(Gr(E(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Za({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Kr(e)}}function Na(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Gr(Hr(e))}}function Pa(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new ni({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:E(e,{size:32,signed:t})}}function Fa(e){let t=Wr(e),n=Math.ceil(Jr(t)/32),r=[];for(let e=0;e<n;e++)r.push(Kr(D(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:Br(Kr(E(Jr(t),{size:32})),...r)}}function Ia(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=Oa({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ka(a):Br(...a.map(({encoded:e})=>e))}}function La(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ra(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ra);let n=La(e.type);return!!(n&&Ra({...e,type:n[1]}))}rt();let za={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Ua({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Ha({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Va({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Va({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Ba(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(za);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Va=class extends T{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Ha=class extends T{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Ua=class extends T{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Pi(),rt(),O();function Wa(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?pi(t):t,o=Ba(a);if(vi(a)===0&&e.length>0)throw new Ya;if(vi(a)&&vi(a)<32)throw new Ja({data:typeof t==`string`?t:Ur(t),parameters:e,size:vi(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=ya(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Ga(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Qa({expectedLength:e.length,givenLength:t.length});let i=ka(Da({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ka(e,t){if(e.length!==t.length)throw new Qa({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(Ka.encode(i,a))}return Br(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return Zi(e),Gr(e.toLowerCase(),r?32:0)}if(e===`string`)return Wr(n);if(e===`bytes`)return n;if(e===`bool`)return Gr(Hr(n),r?32:1);let i=e.match(_a);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return E(n,{size:r?32:o,signed:t===`int`})}let a=e.match(ga);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Za({expectedSize:Number.parseInt(t,10),value:n});return Kr(n,r?32:0)}let o=e.match(ha);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:Br(...i)}throw new eo(e)}e.encode=t})(Ka||={});function qa(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Ze(e):e}var Ja=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${ve(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Ya=class extends T{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Xa=class extends T{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},Za=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Jr(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Qa=class extends T{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},$a=class extends T{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},eo=class extends T{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function to(e){return ua(e)}rt(),O();function no(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&Zi(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Li(e)?e:Yr(e))})}return t}function ro(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Jr(r[e])!==32)throw new io({storageKey:r[e]});n&&Zi(n,{strict:!1}),t.push([n,r])}return t}var io=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Jr(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};Pi(),rt(),O();function ao(e){return oo(e,`Hex`)}function oo(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return so(Ba((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new ai(e);return pi(e)}return e})(),{recursiveReadLimit:1/0}),n)}function so(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?Ur(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=co(e,n,128),i=e.readBytes(r);return t===`Hex`?Ur(i):i}return lo(e,co(e,n,192),t)}function co(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new T(`Invalid RLP prefix`)}function lo(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(so(e,n));return i}function uo(e,t){let{as:n}=t,r=po(e),i=Ba(new Uint8Array(r.length));return r.encode(i),n===`Hex`?Ur(i.bytes):i.bytes}function fo(e,t={}){let{as:n=`Hex`}=t;return uo(e,{as:n})}function po(e){return Array.isArray(e)?mo(e.map(e=>po(e))):ho(e)}function mo(e){let t=e.reduce((e,t)=>e+t.length,0),n=go(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function ho(e){let t=typeof e==`string`?pi(e):e,n=go(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function go(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new T(`Length is too large.`)}function _o(e,t){let n=e%t;return n>=No?n:t+n}function vo(e,t,n){let r=e;for(;t-- >No;)r*=r,r%=n;return r}function yo(e,t){if(e===No)throw Error(`invert: expected non-zero number`);if(t<=No)throw Error(`invert: expected positive modulus, got `+t);let n=_o(e,t),r=t,i=No,a=Po,o=Po,s=No;for(;n!==No;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==Po)throw Error(`invert: does not exist`);return _o(i,t)}function bo(e,t){let n=(e.ORDER+Po)/Lo,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function xo(e,t){let n=(e.ORDER-Ro)/zo,r=e.mul(t,Fo),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Fo),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function So(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Po,n=0;for(;t%Fo===No;)t/=Fo,n++;let r=Fo,i=ko(e);for(;Do(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return bo;let a=i.pow(r,t),o=(t+Po)/Fo;return function(e,r){if(e.is0(r))return r;if(Do(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=Po<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function Co(e){return e%Lo===Io?bo:e%zo===Ro?xo:So(e)}function wo(e){return lr(e,Bo.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function To(e,t,n){if(n<No)throw Error(`invalid exponent, negatives unsupported`);if(n===No)return e.ONE;if(n===Po)return t;let r=e.ONE,i=t;for(;n>No;)n&Po&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Po;return r}function Eo(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function Do(e,t){let n=(e.ORDER-Po)/Fo,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function Oo(e,t){t!==void 0&&st(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function ko(e,t,n=!1,r={}){if(e<=No)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Oo(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:_r(i),ZERO:No,ONE:Po,create:t=>_o(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return No<=t&&t<e},is0:e=>e===No,isOdd:e=>(e&Po)===Po,neg:t=>_o(-t,e),eql:(e,t)=>e===t,sqr:t=>_o(t*t,e),add:(t,n)=>_o(t+n,e),sub:(t,n)=>_o(t-n,e),mul:(t,n)=>_o(t*n,e),pow:(e,t)=>To(s,e,t),div:(t,n)=>_o(t*yo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>yo(t,e),sqrt:r.sqrt||(t=>(o||=Co(e),o(s,t))),toBytes:e=>n?er(e,a):$n(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Qn(e):Zn(e)},invertBatch:e=>Eo(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Ao(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function jo(e){let t=Ao(e);return t+Math.ceil(t/2)}function Mo(e,t,n=!1){let r=e.length,i=Ao(t),a=jo(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=_o(n?Qn(e):Zn(e),t-Po)+Po;return n?er(o,i):$n(o,i)}var No,Po,Fo,Io,Lo,Ro,zo,Bo,Vo=o((()=>{Dt(),xr(),No=BigInt(0),Po=BigInt(1),Fo=BigInt(2),Io=BigInt(3),Lo=BigInt(4),Ro=BigInt(5),zo=BigInt(8),Bo=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Ho(e,t){let n=t.negate();return e?n:t}function Uo(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Wo(e,t){Uo(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:_r(e),maxNumber:i,shiftBy:BigInt(e)}}function Go(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=$o);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function Ko(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function qo(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function Jo(e){return ts.get(e)||1}function Yo(e,t){return{constTimeNegate:Ho,hasPrecomputes(e){return Jo(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>Qo;)n&$o&&(r=r.add(i)),i=i.double(),n>>=$o;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Wo(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Wo(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Go(i,e,s);i=t,c?o=o.add(Ho(u,r[d])):a=a.add(Ho(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Wo(n,t);for(let e=0;e<o.windows&&i!==Qo;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=Go(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=es.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&es.set(t,n(r))),r},wNAFCached(e,t,n){let r=Jo(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Jo(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Uo(n,t),ts.set(e,n),es.delete(e)}}}function Xo(e,t,n,r){Ko(n,e),qo(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=sr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=_r(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function Zo(e){return wo(e.Fp),lr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Oo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Qo,$o,es,ts,ns=o((()=>{Vo(),xr(),Qo=BigInt(0),$o=BigInt(1),es=new WeakMap,ts=new WeakMap}));function rs(e){e.lowS!==void 0&&Gn(`lowS`,e.lowS),e.prehash!==void 0&&Gn(`prehash`,e.prehash)}function is(e){let t=Zo(e);lr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function as(e,t){return Jn($n(e,t))}function os(e){let t=is(e),{Fp:n}=t,r=ko(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return nr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,gs),_s),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return ar(e,ms,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Un(e)&&(e=Jn(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Zn(tr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=_o(o,a)),or(`private key`,o,ms,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=ur((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=ur(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Eo(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(tr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Xo(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,gs),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,gs),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;or(`scalar`,e,ps,i);let a=h.ZERO;if(e===ps)return a;if(this.is0()||e===ms)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>ps||l>ps;)s&ms&&(u=u.add(f)),l&ms&&(d=d.add(f)),f=f.double(),s>>=ms,l>>=ms;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;or(`scalar`,e,ms,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===ps||t===ms||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===ms)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===ms?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Gn(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Gn(`isCompressed`,e),Jn(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=Yo(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function ss(e){let t=Zo(e);return lr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function cs(e){let t=ss(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return _o(e,r)}function l(e){return yo(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=os({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=nr;return Gn(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Zn(i);if(!ar(e,ms,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&ms)===ms;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>ms}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Zn(e.slice(t,n));class _{constructor(e,t,n){or(`r`,e,ms,r),or(`s`,t,ms,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=tr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=fs.toSig(tr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(tr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+as(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return fs.hexFromSig(this)}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){let e=i;return as(this.r,e)+as(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=jo(t.n);return Mo(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=tr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Zn(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=_r(a);function w(e){return or(`num < 2^`+a,e,ps,C),$n(e,i)}function te(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=tr(`msgHash`,e),rs(i),f&&(e=tr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[w(y),w(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(tr(`extraEntropy`,e))}let x=nr(...b),C=v;function te(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===ps)return;let a=c(n*c(C+i*y));if(a===ps)return;let o=(r.x===i?0:2)|Number(r.y&ms),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:te}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=te(e,n,r),o=t;return cr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=tr(`msgHash`,n),r=tr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(rs(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Un(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof fs.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),C=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return C?c(C.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function ls(e,t){let n=e.ORDER,r=ps;for(let e=n-ms;e%hs===ps;e/=hs)r+=ms;let i=r,a=hs<<i-ms-ms,o=a*hs,s=(n-ms)/o,c=(s-ms)/hs,l=o-ms,u=a,d=e.pow(t,s),f=e.pow(t,(s+ms)/hs),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>ms;t--){let n=t-hs;n=hs<<n-ms;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%_s===gs){let n=(e.ORDER-gs)/_s,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function us(e,t){if(wo(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=ls(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=Eo(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var ds,fs,ps,ms,hs,gs,_s,vs=o((()=>{ns(),Vo(),xr(),ds=class extends Error{constructor(e=``){super(e)}},fs={Err:ds,_tlv:{encode:(e,t)=>{let{Err:n}=fs;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Kn(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Kn(i.length/2|128):``;return Kn(e)+a+i+t},decode(e,t){let{Err:n}=fs,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=fs;if(e<ps)throw new t(`integer: negative integers are not allowed`);let n=Kn(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=fs;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Zn(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=fs,i=tr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=fs,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},ps=BigInt(0),ms=BigInt(1),hs=BigInt(2),gs=BigInt(3),_s=BigInt(4)}));function ys(e){return{hash:e,hmac:(t,...n)=>kt(e,t,bt(...n)),randomBytes:Ct}}function bs(e,t){let n=t=>cs({...e,...ys(t)});return{...n(t),create:n}}var xs=o((()=>{At(),Dt(),vs()}));function Ss(e,t){if(ws(e),ws(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function Cs(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function ws(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Ts(e,t,n,r){Wn(e),Wn(t),ws(n),t.length>255&&(t=r(nr(ir(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=nr(t,Ss(t.length,1)),c=Ss(0,a),l=Ss(n,2),u=Array(o),d=r(nr(c,e,l,Ss(0,1),s));u[0]=r(nr(d,Ss(1,1),s));for(let e=1;e<=o;e++)u[e]=r(nr(Cs(d,u[e-1]),Ss(e+1,1),s));return nr(...u).slice(0,n)}function Es(e,t,n,r,i){if(Wn(e),Wn(t),ws(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(ir(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(Ss(n,2)).update(t).update(Ss(t.length,1)).digest()}function Ds(e,t,n){lr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Wn(e),ws(t);let l=typeof c==`string`?ir(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Ts(e,l,f,o);else if(s===`xof`)p=Es(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=_o(As(p.subarray(i,i+d)),r)}m[e]=t}return m}function Os(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=Eo(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function ks(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=Ds(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(Ds(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var As,js=o((()=>{Vo(),xr(),As=Zn})),Ms=c({encodeToCurve:()=>cc,hashToCurve:()=>sc,schnorr:()=>rc,secp256k1:()=>Js,secp256k1_hasher:()=>oc});function Ns(e){let t=Vs,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=vo(vo(vo(u,n,t)*u%t,n,t)*u%t,Gs,t)*l%t,f=vo(d,i,t)*d%t,p=vo(f,a,t)*f%t,m=vo(p,s,t)*p%t,h=vo(vo(vo(vo(vo(vo(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Gs,t);if(!qs.eql(qs.sqr(h),e))throw Error(`Cannot find square root`);return h}function Ps(e,...t){let n=Ys[e];if(n===void 0){let t=Rn(Uint8Array.from(e,e=>e.charCodeAt(0)));n=nr(t,t),Ys[e]=n}return Rn(nr(n,...t))}function Fs(e){let t=Js.utils.normPrivateKeyToScalar(e),n=ec.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:$s(-t),bytes:Xs(n)}}function Is(e){or(`x`,e,Ws,Vs);let t=Ns(Qs(Qs(e*e)*e+BigInt(7)));t%Gs!==Us&&(t=Qs(-t));let n=new ec(e,t,Ws);return n.assertValidity(),n}function Ls(...e){return $s(nc(Ps(`BIP0340/challenge`,...e)))}function Rs(e){return Fs(e).bytes}function zs(e,t,n=Ct(32)){let r=tr(`message`,e),{bytes:i,scalar:a}=Fs(t),o=$s(nc(Ps(`BIP0340/nonce`,Zs(a^nc(Ps(`BIP0340/aux`,tr(`auxRand`,n,32)))),i,r)));if(o===Us)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Fs(o),l=Ls(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Zs($s(c+l*a)),32),!Bs(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Bs(e,t,n){let r=tr(`signature`,e,64),i=tr(`message`,t),a=tr(`publicKey`,n,32);try{let e=Is(nc(a)),t=nc(r.subarray(0,32));if(!ar(t,Ws,Vs))return!1;let n=nc(r.subarray(32,64));if(!ar(n,Ws,Hs))return!1;let o=tc(e,n,$s(-Ls(Zs(t),Xs(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Vs,Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs,Zs,Qs,$s,ec,tc,nc,rc,ic,ac,oc,sc,cc,lc=o((()=>{Vn(),Dt(),xs(),js(),Vo(),xr(),vs(),Vs=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Hs=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Us=BigInt(0),Ws=BigInt(1),Gs=BigInt(2),Ks=(e,t)=>(e+t/Gs)/t,qs=ko(Vs,void 0,void 0,{sqrt:Ns}),Js=bs({a:Us,b:BigInt(7),Fp:qs,n:Hs,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Hs,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Ws*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=Ks(a*e,t),c=Ks(-r*e,t),l=_o(e-s*n-c*i,t),u=_o(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Rn),Ys={},Xs=e=>e.toRawBytes(!0).slice(1),Zs=e=>$n(e,32),Qs=e=>_o(e,Vs),$s=e=>_o(e,Hs),ec=Js.ProjectivePoint,tc=(e,t,n)=>ec.BASE.multiplyAndAddUnsafe(e,t,n),nc=Zn,rc={getPublicKey:Rs,sign:zs,verify:Bs,utils:{randomPrivateKey:Js.utils.randomPrivateKey,lift_x:Is,pointToBytes:Xs,numberToBytesBE:$n,bytesToNumberBE:Zn,taggedHash:Ps,mod:_o}},ic=Os(qs,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),ac=us(qs,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:qs.create(BigInt(`-11`))}),oc=ks(Js.ProjectivePoint,e=>{let{x:t,y:n}=ac(qs.create(e[0]));return ic(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:qs.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),sc=oc.hashToCurve,cc=oc.encodeToCurve}));rt(),O(),Rr();function uc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new wc({signature:e});if(e.r<0n||e.r>va)throw new Tc({value:e.r});if(e.s<0n||e.s>va)throw new Ec({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Dc({value:e.yParity})}function dc(e){return fc(Ur(e))}function fc(e){if(e.length!==130&&e.length!==132)throw new Cc({signature:e});let t=BigInt(D(e,0,32)),n=BigInt(D(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return xc(t)}catch{throw new Dc({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function pc(e){if(e.r!==void 0&&e.s!==void 0)return mc(e)}function mc(e){let t=typeof e==`string`?fc(e):e instanceof Uint8Array?dc(e):typeof e.r==`string`?gc(e):e.v?hc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return uc(t),t}function hc(e){return{r:e.r,s:e.s,yParity:xc(e.v)}}function gc(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=xc(t)),typeof n!=`number`)throw new Dc({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function _c(e){let[t,n,r]=e;return mc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function vc(e){uc(e);let t=e.r,n=e.s;return Br(E(t,{size:32}),E(n,{size:32}),typeof e.yParity==`number`?E(Sc(e.yParity),{size:1}):`0x`)}function yc(e){let{r:t,s:n,yParity:r}=e;return{r:E(t,{size:32}),s:E(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function bc(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Yr(E(t)),n===0n?`0x`:Yr(E(n))]}function xc(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Oc({value:e})}function Sc(e){if(e===0)return 27;if(e===1)return 28;throw new Dc({value:e})}var Cc=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Jr(Vr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},wc=class extends T{constructor({signature:e}){super(`Signature \\`${Ir(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Tc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Ec=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Dc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},Oc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};O();function kc(e,t={}){return typeof e.chainId==`string`?Ac(e):{...e,...t.signature}}function Ac(e){let{address:t,chainId:n,nonce:r}=e,i=pc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function jc(e){return e.map(Ac)}function Mc(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:E(n),nonce:E(r),...yc(i)}}function Nc(e){return e.map(Mc)}Pi();let Pc=new TextEncoder,Fc=new TextDecoder,Ic=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Lc={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function Rc(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=Ic[r>>18],i[t+1]=Ic[r>>12&63],i[t+2]=Ic[r>>6&63],i[t+3]=Ic[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Fc.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function zc(e,t={}){return Rc(pi(e),t)}function Bc(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Pc.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Lc[r[e]]<<18)+(Lc[r[e+1]]<<12)+(Lc[r[e+2]]<<6)+Lc[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}let Vc={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Hc={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Uc(e,t={}){if(!e)return null;let n=pc(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=jc(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Hc[e.type]??e.type),n&&(r.v=Sc(n.yParity)),r}function Wc(e){return{address:e.address,amount:E(e.amount),index:E(e.index),validatorIndex:E(e.validatorIndex)}}var Gc=o((()=>{O()}));function Kc(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:E(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:E(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:E(e.gasLimit)},...typeof e.number==`bigint`&&{number:E(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:E(e.prevRandao)},...typeof e.time==`bigint`&&{time:E(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Wc)}}}var qc=o((()=>{O(),Gc()}));Pi(),rt(),O();function Jc(e,t={}){let{as:n=`Hex`}=t,r=cl(e),i=Ba(new Uint8Array(r.length));return r.encode(i),n===`Hex`?Ur(i.bytes):i.bytes}var Yc=class extends T{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},Xc=class extends T{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},Zc=class extends T{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},Qc=class extends T{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},$c=class extends T{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},el=class extends T{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},tl=class extends T{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},nl=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},rl=class extends T{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},il=class extends T{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},al=class extends T{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},ol=class extends T{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},sl=class extends T{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function cl(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return cl.number(e);if(typeof e==`bigint`)throw new tl;if(typeof e==`string`)return cl.string(e);if(Array.isArray(e))return cl.array(e);if(e instanceof Uint8Array)return cl.byteString(e);if(e instanceof ArrayBuffer)return cl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return cl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return cl.map(e);if(typeof e==`object`)return cl.object(e);throw new nl({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new rl({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new rl({number:e.toString(10)})}e.number=t;function n(e){let t=mi(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new il({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new al({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new sl({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new ol({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new ol({size:i})}e.map=o})(cl||={});function ll(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return ll.readUnsignedInteger(e,r);case 1:return ll.readNegativeInteger(e,r);case 2:return ll.readByteString(e,r);case 3:return ll.readTextString(e,r);case 4:return ll.readArray(e,r);case 5:return ll.readMap(e,r);case 6:throw new Qc({tag:r});case 7:return ll.readSimpleOrFloat(e,r);default:throw new Yc({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new Zc:new Xc({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new $c({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new $c({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Ci(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new el({value:t});return}throw new Xc({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(ll||={}),rt();function ul(e){let t=Ui(e),n=t.slice(1,33),r=t.slice(33,65);return Jc(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}lc(),Pi(),O();function dl(e){let{privateKey:t}=e;return Bi(Js.ProjectivePoint.fromPrivateKey(Vr(t).slice(2)))}function fl(e){return ea(pl(e))}function pl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Bi(new Js.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(Vr(t).substring(2)))}function ml(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Js.sign(di(r),di(i),{extraEntropy:typeof t==`boolean`?t:Vr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function hl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?ta(t,fl({payload:r,signature:a})):Js.verify(a,di(r),Ui(i),...n?[{prehash:!0,lowS:!0}]:[])}Vn(),xs(),js(),Vo(),vs();let gl=ko(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),_l=gl.create(BigInt(`-3`)),vl=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),yl=bs({a:_l,b:vl,Fp:gl,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Rn),bl=yl,xl=us(gl,{A:_l,B:vl,Z:gl.create(BigInt(`-10`))}),Sl=ks(bl.ProjectivePoint,e=>xl(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:gl.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),Cl=ko(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),wl=Cl.create(BigInt(`-3`)),Tl=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),El=bs({a:wl,b:Tl,Fp:Cl,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Bn),Dl=us(Cl,{A:wl,B:Tl,Z:Cl.create(BigInt(`-12`))});ks(El.ProjectivePoint,e=>Dl(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Cl.ORDER,m:1,k:192,expand:`xmd`,hash:Bn});let Ol=ko(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),kl=Ol.create(BigInt(`-3`)),Al=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),jl=bs({a:kl,b:Al,Fp:Ol,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},zn),Ml=us(Ol,{A:kl,B:Al,Z:Ol.create(BigInt(`-4`))});ks(jl.ProjectivePoint,e=>Ml(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Ol.ORDER,m:1,k:256,expand:`xmd`,hash:zn});let Nl=yl,Pl=yl;Sl.hashToCurve,Sl.encodeToCurve,Pi(),O();function Fl(e){let{privateKey:t}=e;return Bi(Pl.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):Ur(t).slice(2)))}function Il(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Pl.sign(r instanceof Uint8Array?r:pi(r),i instanceof Uint8Array?i:pi(i),{extraEntropy:typeof t==`boolean`?t:Vr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Ll(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Pl.verify(i,n instanceof Uint8Array?n:pi(n),Wi(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Rl=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function zl(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Bl(r.error);return r.result}function Bl(e){let t=e;if(t instanceof Error&&!(`code`in t))return new Ql({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===Ql.code?new Ql(t):n===Hl.code?new Hl(t):n===Zl.code?new Zl(t):n===Yl.code?new Yl(t):n===ql.code?new ql(t):n===Xl.code?new Xl(t):n===Kl.code?new Kl(t):n===$l.code?new $l(t):n===Ul.code?new Ul(t):n===Wl.code?new Wl(t):n===Gl.code?new Gl(t):n===Jl.code?new Jl(t):new Ql({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Vl=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},Hl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(Hl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Ul=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(Ul,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Wl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(Wl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Gl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(Gl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Kl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(Kl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ql=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Jl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(Jl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Yl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(Yl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var Xl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty(Xl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var Zl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(Zl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var Ql=class e extends Vl{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(Ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var $l=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty($l,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),rt();var eu=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},tu=class extends eu{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var nu=class extends eu{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var ru=class extends eu{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(ru,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var iu=class extends eu{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var au=class extends eu{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var ou=class extends eu{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var su=class extends eu{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(su,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var cu=class extends eu{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty(cu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var lu=class extends eu{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var uu=class extends eu{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var du=class extends eu{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var fu=class extends eu{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var pu=class extends eu{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function mu(){let e=new Rl.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function hu(e,t={}){if(!e)throw new _u;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?zl(n):n}catch(e){throw gu(e)}}}}function gu(e){let t=Bl(e);if(t instanceof Ql){if(!t.data)return t;let{code:e}=t.data;if(e===iu.code)return new iu(t);if(e===au.code)return new au(t);if(e===tu.code)return new tu(t);if(e===nu.code)return new nu(t);if(e===ru.code)return new ru(t);if(e===ou.code)return new ou(t);if(e===fu.code)return new fu(t);if(e===pu.code)return new pu(t);if(e===du.code)return new du(t);if(e===uu.code)return new uu(t);if(e===lu.code)return new lu(t);if(e===cu.code)return new cu(t);if(e===su.code)return new su(t)}return t}var _u=class extends T{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function vu(e={}){let t=e.id??0;return{prepare(e){return yu({id:t++,...e})},get id(){return t}}}function yu(e){return{...e,jsonrpc:`2.0`}}function bu(){return null}O();function xu(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Nc(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=E(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=E(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=E(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=E(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=E(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=E(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=E(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=E(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Vc[e.type]||e.type),e.value!==void 0&&(t.value=E(e.value)),t}rt();let Su={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Cu(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function wu(e,t=`wei`){return Cu(e,Su.gwei-Su[t])}rt();var Tu=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${wu(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},Eu=class extends T{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},Du=class extends T{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},Ou=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${wu(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${wu(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function ku(e){let t=Nl.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}O();function Au(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=Br(Ii(Wr(r)),E(n,{size:1}),E(i,{size:4}));if(!t)return a;let o=Ur(new Uint8Array(16)),s=Ur(t.id);return Br(a,o,E(t.id.length,{size:2}),s,ul(t.publicKey))}function ju(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:zc(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Pi(),rt(),O();function Mu(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:Bc(e),type:`public-key`})):[{id:Bc(t),type:`public-key`}]}:{},challenge:pi(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Nu(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Au({flag:i,rpId:o,signCount:s}),u=ju({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ii(Wr(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:Br(l,d)}}async function Pu(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Mu(n);try{let e=await t(r);if(!e)throw new Fu;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=ku(o);return{id:s,metadata:{authenticatorData:Ur(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Fu({cause:e})}}var Fu=class extends T{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function Iu(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=pi(s);if(u.length<37||a!==void 0&&!hi(u.slice(0,32),Ii(Wr(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||Ur(Bc(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Ll({hash:!0,payload:ui(u,Ii(mi(c),{as:`Bytes`})),publicKey:i,signature:o})}let Lu=Nu;async function Ru(e){return Pu(e)}function zu(e){return Iu(e)}Pi();async function Bu(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=Bi(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Vu(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,di(t)),i=fi(new Uint8Array(r)),a=bi(yi(i,0,32)),o=bi(yi(i,32,64));return o>Nl.CURVE.n/2n&&(o=Nl.CURVE.n-o),{r:a,s:o}}var Hu,Uu=o((()=>{Hu=`1.2.3`})),Wu,Gu=o((()=>{Uu(),Wu=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Hu}`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function Ku(e,t){return e.exec(t)?.groups}var qu,Ju,Yu,Xu=o((()=>{qu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Ju=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Yu=/^\\(.+?\\).*?$/}));function Zu(e){let t=e.type;if(Qu.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Zu(i),r<n-1&&(t+=`, `)}let r=Ku(Qu,e.type);return t+=`)${r?.array||``}`,Zu({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Qu,$u=o((()=>{Xu(),Qu=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function ed(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Zu(i),r!==n-1&&(t+=`, `)}return t}var td=o((()=>{$u()}));function nd(e){return e.type===`function`?`function ${e.name}(${ed(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ed(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ed(e.inputs)})`:e.type===`error`?`error ${e.name}(${ed(e.inputs)})`:e.type===`constructor`?`constructor(${ed(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var rd=o((()=>{td()}));function id(e){return _d.test(e)}function ad(e){return Ku(_d,e)}function od(e){return vd.test(e)}function sd(e){return Ku(vd,e)}function cd(e){return yd.test(e)}function ld(e){return Ku(yd,e)}function ud(e){return bd.test(e)}function dd(e){return Ku(bd,e)}function fd(e){return xd.test(e)}function pd(e){return Ku(xd,e)}function md(e){return Sd.test(e)}function hd(e){return Ku(Sd,e)}function gd(e){return Cd.test(e)}var _d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed=o((()=>{Xu(),_d=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,vd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,yd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,bd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,xd=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Sd=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Cd=/^receive\\(\\) external payable$/,wd=new Set([`indexed`]),Td=new Set([`calldata`,`memory`,`storage`])})),Dd,Od,kd=o((()=>{Gu(),Dd=class extends Wu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Od=class extends Wu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),Ad,jd,Md,Nd,Pd,Fd=o((()=>{Gu(),Ad=class extends Wu{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},jd=class extends Wu{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Md=class extends Wu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Nd=class extends Wu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Pd=class extends Wu{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),Id,Ld,Rd,zd=o((()=>{Gu(),Id=class extends Wu{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Ld=class extends Wu{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},Rd=class extends Wu{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),Bd,Vd=o((()=>{Gu(),Bd=class extends Wu{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),Hd,Ud=o((()=>{Gu(),Hd=class extends Wu{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function Wd(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var Gd,Kd=o((()=>{Gd=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]])}));function qd(e,t={}){if(cd(e))return Jd(e,t);if(od(e))return Yd(e,t);if(id(e))return Xd(e,t);if(fd(e))return Zd(e,t);if(md(e))return Qd(e);if(gd(e))return{type:`receive`,stateMutability:`payable`};throw new Ld({signature:e})}function Jd(e,t={}){let n=ld(e);if(!n)throw new Id({signature:e,type:`function`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{modifiers:Td,structs:t,type:`function`}));let o=[];if(n.returns){let e=ef(n.returns),r=e.length;for(let n=0;n<r;n++)o.push($d(e[n],{modifiers:Td,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function Yd(e,t={}){let n=sd(e);if(!n)throw new Id({signature:e,type:`event`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{modifiers:wd,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function Xd(e,t={}){let n=ad(e);if(!n)throw new Id({signature:e,type:`error`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function Zd(e,t={}){let n=pd(e);if(!n)throw new Id({signature:e,type:`constructor`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function Qd(e){let t=hd(e);if(!t)throw new Id({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function $d(e,t){let n=Wd(e,t?.type,t?.structs);if(Gd.has(n))return Gd.get(n);let r=Yu.test(e),i=Ku(r?of:af,e);if(!i)throw new Ad({param:e});if(i.name&&nf(i.name))throw new jd({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=ef(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push($d(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(sf.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!tf(c))throw new Od({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Md({param:e,type:t?.type,modifier:i.modifier});if(Td.has(i.modifier)&&!rf(c,!!i.array))throw new Nd({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Gd.set(n,u),u}function ef(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?ef(o,[...t,n.trim()]):ef(o,t,`${n}${i}`,r);case`(`:return ef(o,t,`${n}${i}`,r+1);case`)`:return ef(o,t,`${n}${i}`,r-1);default:return ef(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Hd({current:n,depth:r});return t.push(n.trim()),t}function tf(e){return e===`address`||e===`bool`||e===`function`||e===`string`||qu.test(e)||Ju.test(e)}function nf(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||qu.test(e)||Ju.test(e)||cf.test(e)}function rf(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var af,of,sf,cf,lf=o((()=>{Xu(),kd(),Fd(),zd(),Ud(),Kd(),Ed(),af=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,of=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,sf=/^u?int$/,cf=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function uf(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!ud(n))continue;let i=dd(n);if(!i)throw new Id({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=$d(t,{type:`struct`});o.push(n)}if(!o.length)throw new Rd({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=df(a,t)}return r}function df(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Yu.test(i.type))r.push(i);else{let e=Ku(ff,i.type);if(!e?.type)throw new Pd({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Bd({type:o});r.push({...i,type:`tuple${a??``}`,components:df(t[o],t,new Set([...n,o]))})}else if(tf(o))r.push(i);else throw new Dd({type:o})}}return r}var ff,pf=o((()=>{Xu(),kd(),Fd(),zd(),Vd(),Ed(),lf(),ff=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function mf(e){let t=uf(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];ud(r)||n.push(qd(r,t))}return n}var hf=o((()=>{Ed(),pf(),lf()})),gf=o((()=>{Gu(),rd(),$u(),td(),hf(),kd(),Ed(),pf(),lf(),Fd(),zd(),Ud(),Vd()}));function _f(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function vf(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new Zf(e.type);return`${e.name}(${yf(e.inputs,{includeName:t})})`}function yf(e,{includeName:t=!1}={}){return e?e.map(e=>bf(e,{includeName:t})).join(t?`, `:`,`):``}function bf(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${yf(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var xf=o((()=>{Qf()}));function k(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Sf=o((()=>{}));function Cf(e){return k(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var wf=o((()=>{Sf()})),Tf,Ef=o((()=>{Tf=`2.47.6`}));function Df(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Df(e.cause,t):t?null:e}var Of,A,j=o((()=>{Ef(),Of={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Tf}`},A=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=Of.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Of.version?[`Version: ${Of.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Tf}walk(e){return Df(this,e)}}})),kf,Af,jf,Mf,Nf,Pf,Ff,If,Lf,Rf,zf,Bf,Vf,Hf,Uf,Wf,Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf=o((()=>{xf(),wf(),j(),kf=class extends A{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},Af=class extends A{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},jf=class extends A{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${yf(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`AbiDecodingDataSizeTooSmallError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=t,this.size=n}},Mf=class extends A{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Nf=class extends A{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Pf=class extends A{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Cf(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},Ff=class extends A{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},If=class extends A{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Lf=class extends A{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},Rf=class extends A{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},zf=class extends A{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Bf=class extends A{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},Vf=class extends A{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},Hf=class extends A{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},Uf=class extends A{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},Wf=class extends A{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${vf(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${vf(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Gf=class extends A{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},Kf=class extends A{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${yf(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`DecodeLogDataMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=t,this.params=n,this.size=r}},qf=class extends A{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${vf(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},Jf=class extends A{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},Yf=class extends A{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},Xf=class extends A{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},Zf=class extends A{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),$f,ep,tp,np=o((()=>{j(),$f=class extends A{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},ep=class extends A{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},tp=class extends A{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function rp(e,{dir:t,size:n=32}={}){return typeof e==`string`?ip(e,{dir:t,size:n}):ap(e,{dir:t,size:n})}function ip(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new ep({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function ap(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new ep({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var op=o((()=>{np()})),sp,cp,lp,up,dp,fp=o((()=>{j(),sp=class extends A{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},cp=class extends A{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},lp=class extends A{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},up=class extends A{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},dp=class extends A{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function pp(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var mp=o((()=>{}));function hp(e,{size:t}){if(Cf(e)>t)throw new dp({givenSize:Cf(e),maxSize:t})}function gp(e,t={}){let{signed:n}=t;t.size&&hp(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function _p(e,t={}){let n=e;if(t.size&&(hp(n,{size:t.size}),n=pp(n)),pp(n)===`0x00`)return!1;if(pp(n)===`0x01`)return!0;throw new lp(n)}function vp(e,t={}){let n=gp(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new sp({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var yp=o((()=>{fp(),wf(),mp()}));function bp(e,t={}){return typeof e==`number`||typeof e==`bigint`?M(e,t):typeof e==`string`?Cp(e,t):typeof e==`boolean`?xp(e,t):Sp(e,t)}function xp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{size:t.size})):n}function Sp(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=wp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(hp(r,{size:t.size}),rp(r,{dir:`right`,size:t.size})):r}function M(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new sp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?rp(s,{size:r}):s}function Cp(e,t={}){return Sp(Tp.encode(e),t)}var wp,Tp,Ep=o((()=>{fp(),op(),yp(),wp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Tp=new TextEncoder}));function Dp(e,t={}){return typeof e==`number`||typeof e==`bigint`?jp(e,t):typeof e==`boolean`?Op(e,t):k(e)?Ap(e,t):Mp(e,t)}function Op(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{size:t.size})):n}function kp(e){if(e>=Pp.zero&&e<=Pp.nine)return e-Pp.zero;if(e>=Pp.A&&e<=Pp.F)return e-(Pp.A-10);if(e>=Pp.a&&e<=Pp.f)return e-(Pp.a-10)}function Ap(e,t={}){let n=e;t.size&&(hp(n,{size:t.size}),n=rp(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=kp(r.charCodeAt(t++)),i=kp(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new A(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function jp(e,t){return Ap(M(e,t))}function Mp(e,t={}){let n=Np.encode(e);return typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{dir:`right`,size:t.size})):n}var Np,Pp,Fp=o((()=>{j(),Sf(),op(),yp(),Ep(),Np=new TextEncoder,Pp={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ip(e,t){let n=t||`hex`,r=Tn(k(e,{strict:!1})?Dp(e):e);return n===`bytes`?r:bp(r)}var Lp=o((()=>{Dn(),Sf(),Fp(),Ep()}));function Rp(e){return zp(e)}var zp,Bp=o((()=>{Fp(),Lp(),zp=e=>Ip(Dp(e))}));function Vp(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new A(`Unable to normalize signature.`);return i}var Hp=o((()=>{j()})),Up,Wp=o((()=>{gf(),Hp(),Up=e=>Vp(typeof e==`string`?e:nd(e))}));function Gp(e){return Rp(Up(e))}var Kp=o((()=>{Bp(),Wp()})),qp,Jp=o((()=>{Kp(),qp=Gp})),Yp,Xp=o((()=>{j(),Yp=class extends A{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),Zp,Qp=o((()=>{Zp=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function $p(e,t){if(tm.has(`${e}.${t}`))return tm.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Ip(Mp(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return tm.set(`${e}.${t}`,a),a}function em(e,t){if(!rm(e,{strict:!1}))throw new Yp({address:e});return $p(e,t)}var tm,nm=o((()=>{Xp(),Fp(),Lp(),Qp(),om(),tm=new Zp(8192)}));function rm(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(am.has(r))return am.get(r);let i=im.test(e)?e.toLowerCase()===e?!0:n?$p(e)===e:!0:!1;return am.set(r,i),i}var im,am,om=o((()=>{Qp(),nm(),im=/^0x[a-fA-F0-9]{40}$/,am=new Zp(8192)}));function sm(e){return typeof e[0]==`string`?lm(e):cm(e)}function cm(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function lm(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var um=o((()=>{}));function dm(e,t,n,{strict:r}={}){return k(e,{strict:!1})?hm(e,t,n,{strict:r}):mm(e,t,n,{strict:r})}function fm(e,t){if(typeof t==`number`&&t>0&&t>Cf(e)-1)throw new $f({offset:t,position:`start`,size:Cf(e)})}function pm(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Cf(e)!==n-t)throw new $f({offset:n,position:`end`,size:Cf(e)})}function mm(e,t,n,{strict:r}={}){fm(e,t);let i=e.slice(t,n);return r&&pm(i,t,n),i}function hm(e,t,n,{strict:r}={}){fm(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&pm(i,t,n),i}var gm=o((()=>{np(),Sf(),wf()})),_m,vm,ym=o((()=>{_m=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,vm=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/}));function bm(e,t){if(e.length!==t.length)throw new Ff({expectedLength:e.length,givenLength:t.length});let n=Cm(xm({params:e,values:t}));return n.length===0?`0x`:n}function xm({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(Sm({param:e[r],value:t[r]}));return n}function Sm({param:e,value:t}){let n=jm(e.type);if(n){let[r,i]=n;return Tm(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return Am(t,{param:e});if(e.type===`address`)return wm(t);if(e.type===`bool`)return Dm(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=vm.exec(e.type)??[];return Om(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Em(t,{param:e});if(e.type===`string`)return km(t);throw new Jf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Cm(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Cf(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(M(t+i,{size:32})),r.push(s),i+=Cf(s)):n.push(s)}return sm([...n,...r])}function wm(e){if(!rm(e))throw new Yp({address:e});return{dynamic:!1,encoded:ip(e.toLowerCase())}}function Tm(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new Xf(e);if(!r&&e.length!==t)throw new Nf({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=Sm({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Cm(a);if(r){let t=M(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?sm([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:sm(a.map(({encoded:e})=>e))}}function Em(e,{param:t}){let[,n]=t.type.split(`bytes`),r=Cf(e);if(!n){let t=e;return r%32!=0&&(t=ip(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:sm([ip(M(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Pf({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ip(e,{dir:`right`})}}function Dm(e){if(typeof e!=`boolean`)throw new A(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ip(xp(e))}}function Om(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new sp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:M(e,{size:32,signed:t})}}function km(e){let t=Cp(e),n=Math.ceil(Cf(t)/32),r=[];for(let e=0;e<n;e++)r.push(ip(dm(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:sm([ip(M(Cf(t),{size:32})),...r])}}function Am(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=Sm({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Cm(r):sm(r.map(({encoded:e})=>e))}}function jm(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Mm=o((()=>{Qf(),Xp(),j(),fp(),om(),um(),op(),wf(),gm(),Ep(),ym()})),Nm,Pm=o((()=>{gm(),Kp(),Nm=e=>dm(Gp(e),0,4)}));function Fm(e){let{abi:t,args:n=[],name:r}=e,i=k(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Nm(e)===r:e.type===`event`?qp(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Im(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Lm(e.inputs,o.inputs,n);if(t)throw new Wf({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Im(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return rm(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,r)=>n===`object`&&Im(Object.values(e)[r],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>Im(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Lm(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Lm(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&rm(n[r],{strict:!1}))return o}}var Rm=o((()=>{Qf(),Sf(),om(),Jp(),Pm()}));function zm(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var Bm=o((()=>{}));function Vm(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Fm({abi:t,args:n,name:r});if(!e)throw new Vf(r,{docsPath:Hm});i=e}if(i.type!==`function`)throw new Vf(void 0,{docsPath:Hm});return{abi:[i],functionName:Nm(vf(i))}}var Hm,Um=o((()=>{Qf(),Pm(),xf(),Rm(),Hm=`/docs/contract/encodeFunctionData`}));function Wm(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Vm(e),i=n[0];return lm([r,(`inputs`in i&&i.inputs?bm(i.inputs,t??[]):void 0)??`0x`])}var Gm=o((()=>{um(),Mm(),Um()})),Km,qm,Jm,Ym=o((()=>{Km={1:\"An `assert` condition failed.\",17:`Arithmetic operation resulted in underflow or overflow.`,18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:`Attempted to convert to an invalid type.`,34:`Attempted to access a storage byte array that is incorrectly encoded.`,49:\"Performed `.pop()` on an empty array\",50:`Array index is out of bounds.`,65:`Allocated too much memory or created an array which is too large.`,81:`Attempted to call a zero-initialized variable of internal function type.`},qm={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Jm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Xm,Zm,Qm,$m=o((()=>{j(),Xm=class extends A{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Zm=class extends A{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Qm=class extends A{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function eh(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(th);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var th,nh=o((()=>{$m(),th={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Qm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Zm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Xm({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Xm({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function rh(e,t={}){return t.size!==void 0&&hp(e,{size:t.size}),gp(Sp(e,t),t)}function ih(e,t={}){let n=e;if(t.size!==void 0&&(hp(n,{size:t.size}),n=pp(n)),n.length>1||n[0]>1)throw new cp(n);return!!n[0]}function ah(e,t={}){return t.size!==void 0&&hp(e,{size:t.size}),vp(Sp(e,t),t)}function oh(e,t={}){let n=e;return t.size!==void 0&&(hp(n,{size:t.size}),n=pp(n,{dir:`right`})),new TextDecoder().decode(n)}var sh=o((()=>{fp(),mp(),yp(),Ep()}));function ch(e,t){let n=typeof t==`string`?Ap(t):t,r=eh(n);if(Cf(n)===0&&e.length>0)throw new Mf;if(Cf(t)&&Cf(t)<32)throw new jf({data:typeof t==`string`?t:Sp(t),params:e,size:Cf(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=lh(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function lh(e,t,{staticPosition:n}){let r=jm(t.type);if(r){let[i,a]=r;return dh(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return hh(e,t,{staticPosition:n});if(t.type===`address`)return uh(e);if(t.type===`bool`)return fh(e);if(t.type.startsWith(`bytes`))return ph(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return mh(e,t);if(t.type===`string`)return gh(e,{staticPosition:n});throw new Yf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function uh(e){return[$p(Sp(mm(e.readBytes(32),-20))),32]}function dh(e,t,{length:n,staticPosition:r}){if(!n){let n=r+ah(e.readBytes(yh)),i=n+vh;e.setPosition(n);let a=ah(e.readBytes(vh)),o=_h(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=lh(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(_h(t)){let i=r+ah(e.readBytes(yh)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=lh(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=lh(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function fh(e){return[ih(e.readBytes(32),{size:32}),32]}function ph(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=ah(e.readBytes(32));e.setPosition(n+t);let r=ah(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Sp(i),32]}return[Sp(e.readBytes(Number.parseInt(i,10),32)),32]}function mh(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?rh(i,{signed:n}):ah(i,{signed:n}),32]}function hh(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(_h(t)){let o=n+ah(e.readBytes(yh));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=lh(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=lh(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function gh(e,{staticPosition:t}){let n=t+ah(e.readBytes(32));e.setPosition(n);let r=ah(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=oh(pp(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function _h(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(_h);let n=jm(e.type);return!!(n&&_h({...e,type:n[1]}))}var vh,yh,bh=o((()=>{Qf(),nm(),nh(),wf(),gm(),mp(),sh(),Fp(),Ep(),Mm(),vh=32,yh=32}));function xh(e){let{abi:t,data:n,cause:r}=e,i=dm(n,0,4);if(i===`0x`)throw new Mf({cause:r});let a=[...t||[],qm,Jm].find(e=>e.type===`error`&&i===Nm(vf(e)));if(!a)throw new Rf(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?ch(a.inputs,dm(n,4)):void 0,errorName:a.name}}var Sh=o((()=>{Ym(),Qf(),gm(),Pm(),bh(),xf()})),Ch,wh=o((()=>{Ch=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function Th({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if(`name`in e&&`inputs`in e&&e.inputs)return`${n?e.name:``}(${e.inputs.map((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?Ch(t[n]):t[n]}`).join(`, `)})`}var Eh=o((()=>{wh()})),Dh,Oh,kh=o((()=>{Dh={gwei:9,wei:18},Oh={ether:-9,wei:9}}));function Ah(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var jh=o((()=>{}));function Mh(e,t=`wei`){return Ah(e,Dh[t])}var Nh=o((()=>{kh(),jh()}));function Ph(e,t=`wei`){return Ah(e,Oh[t])}var Fh=o((()=>{kh(),jh()}));function Ih(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Lh(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=Ih(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Ih(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Rh,zh,Bh=o((()=>{j(),Rh=class extends A{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},zh=class extends A{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Vh(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var Hh,Uh,Wh,Gh,Kh,qh,Jh=o((()=>{Nh(),Fh(),j(),Hh=class extends A{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Uh=class extends A{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Vh(e),`}`,``,`To infer the type, either provide:`,\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},Wh=class extends A{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},Gh=class extends A{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},Kh=class extends A{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},qh=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Vh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),Yh,Xh,Zh=o((()=>{Yh=e=>e,Xh=e=>e})),Qh,$h,eg,tg,ng,rg,ig=o((()=>{Bm(),Ym(),Sh(),xf(),Eh(),Rm(),Nh(),Fh(),Qf(),j(),Bh(),Jh(),Zh(),Qh=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=Vh({from:(t?zm(t):void 0)?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});f&&(p+=`\\n${Lh(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},$h=class extends A{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Fm({abi:t,args:n,name:a}),c=s?Th({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?vf(s,{includeName:!0}):void 0,u=Vh({address:r&&Yh(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),Object.defineProperty(this,`abi`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`args`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`contractAddress`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`formattedArgs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`functionName`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`sender`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},eg=class extends A{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=xh({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=Km[e]}else{let e=n?vf(n,{includeName:!0}):void 0,t=n&&a?Th({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof Rf&&(l=a.signature,s=[`Unable to decode signature \"${l}\" as it was not found on the provided ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`reason`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.raw=t,this.reason=c,this.signature=l}},tg=class extends A{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},ng=class extends A{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},rg=class extends A{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),ag,og,sg,cg=o((()=>{wh(),j(),Zh(),ag=class extends A{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${Xh(a)}`,e&&`Request body: ${Ch(e)}`].filter(Boolean),name:`HttpRequestError`}),Object.defineProperty(this,`body`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`headers`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`status`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=i,this.url=a}},og=class extends A{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Xh(n)}`,`Request body: ${Ch(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},sg=class extends A{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Xh(t)}`,`Request body: ${Ch(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),lg,ug,dg,fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg,Tg,Eg,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig,Lg,Rg,zg=o((()=>{j(),cg(),lg=-1,ug=class extends A{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof og?e.code:t??lg}},dg=class extends ug{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},fg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),pg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),mg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),hg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(hg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),gg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(gg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),_g=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(_g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),vg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(vg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),yg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(yg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),bg=class e extends ug{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(bg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),xg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(xg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Sg=class e extends ug{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(Sg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Cg=class e extends ug{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Cg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),wg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(wg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Tg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(Tg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Eg=class e extends dg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Eg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Dg=class e extends dg{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Og=class e extends dg{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Og,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),kg=class e extends dg{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(kg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Ag=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(Ag,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),jg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(jg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Mg=class e extends dg{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(Mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Ng=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Ng,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Pg=class e extends dg{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Fg=class e extends dg{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(Fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Ig=class e extends dg{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Ig,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Lg=class e extends dg{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Lg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Rg=class extends ug{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));Qf(),j(),ig(),cg(),zg();function Bg(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof rg?e:e instanceof A?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new $h(e instanceof Mf?new tg({functionName:a,cause:e}):[3,gg.code].includes(c)&&(l||u||d||f)||c===_g.code&&u===`execution reverted`&&l?new eg({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof og?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}nm(),Lp();function Vg(e){return $p(`0x${Ip(`0x${e.substring(4)}`).substring(26)}`)}Sf(),wf(),yp(),Ep();async function Hg({hash:e,signature:t}){let n=k(e)?e:bp(e),{secp256k1:r}=await Promise.resolve().then(()=>(lc(),Ms));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Ug(Number(a??i));return new r.Signature(gp(e),gp(n)).addRecoveryBit(o)}let e=k(t)?t:bp(t);if(Cf(e)!==65)throw Error(`invalid signature length`);let n=Ug(vp(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Ug(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Wg({hash:e,signature:t}){return Vg(await Hg({hash:e,signature:t}))}j(),nh(),Fp(),Ep();function Gg(e,t=`hex`){let n=Kg(e),r=eh(new Uint8Array(n.length));return n.encode(r),t===`hex`?Sp(r.bytes):r.bytes}function Kg(e){return Array.isArray(e)?qg(e.map(e=>Kg(e))):Jg(e)}function qg(e){let t=e.reduce((e,t)=>e+t.length,0),n=Yg(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Jg(e){let t=typeof e==`string`?Ap(e):e,n=Yg(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Yg(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new A(`Length is too large.`)}um(),Fp(),Ep(),Lp();function Xg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Ip(lm([`0x05`,Gg([t?M(t):`0x`,i,n?M(n):`0x`])]));return r===`bytes`?Ap(a):a}async function Zg(e){let{authorization:t,signature:n}=e;return Wg({hash:Xg(t),signature:n??t})}Nh(),Fh(),j(),Jh();var Qg=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Vh({from:t?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},$g,e_,t_,n_,r_,i_,a_,o_,s_,c_,l_,u_,d_=o((()=>{Fh(),j(),$g=class extends A{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty($g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty($g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),e_=class extends A{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Ph(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(e_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),t_=class extends A{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Ph(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(t_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/}),n_=class extends A{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(n_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),r_=class extends A{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(r_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),i_=class extends A{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(i_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),a_=class extends A{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(a_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),o_=class extends A{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(o_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),s_=class extends A{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(s_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),c_=class extends A{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(c_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),l_=class extends A{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Ph(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Ph(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(l_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),u_=class extends A{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function f_(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof A?e.walk(e=>e?.code===$g.code):e;return r instanceof A?new $g({cause:e,message:r.details}):$g.nodeMessage.test(n)?new $g({cause:e,message:e.details}):e_.nodeMessage.test(n)?new e_({cause:e,maxFeePerGas:t?.maxFeePerGas}):t_.nodeMessage.test(n)?new t_({cause:e,maxFeePerGas:t?.maxFeePerGas}):n_.nodeMessage.test(n)?new n_({cause:e,nonce:t?.nonce}):r_.nodeMessage.test(n)?new r_({cause:e,nonce:t?.nonce}):i_.nodeMessage.test(n)?new i_({cause:e,nonce:t?.nonce}):a_.nodeMessage.test(n)?new a_({cause:e}):o_.nodeMessage.test(n)?new o_({cause:e,gas:t?.gas}):s_.nodeMessage.test(n)?new s_({cause:e,gas:t?.gas}):c_.nodeMessage.test(n)?new c_({cause:e}):l_.nodeMessage.test(n)?new l_({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new u_({cause:e})}var p_=o((()=>{j(),d_()}));d_(),p_();function m_(e,{docsPath:t,...n}){return new Qg((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}function h_(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var g_=o((()=>{}));function __(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var v_=o((()=>{}));function y_(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=b_(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Sp(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=M(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=M(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=M(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=M(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=M(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=M(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=x_[e.type]),e.value!==void 0&&(n.value=M(e.value)),n}function b_(e){return e.map(e=>({address:e.address,r:e.r?M(BigInt(e.r)):e.r,s:e.s?M(BigInt(e.s)):e.s,chainId:M(e.chainId),nonce:M(e.nonce),...e.yParity===void 0?{}:{yParity:M(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:M(e.v)}:{}}))}var x_,S_,C_=o((()=>{Ep(),v_(),x_={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},S_=__(`transactionRequest`,y_)}));function w_(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new tp({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new tp({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function T_(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=M(t)),n!==void 0&&(o.nonce=M(n)),r!==void 0&&(o.state=w_(r)),i!==void 0){if(o.state)throw new zh;o.stateDiff=w_(i)}return o}function E_(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!rm(n,{strict:!1}))throw new Yp({address:n});if(t[n])throw new Rh({address:n});t[n]=T_(r)}return t}var D_=o((()=>{Xp(),np(),Bh(),om(),Ep()})),O_,k_=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),O_=2n**256n-1n}));function A_(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?zm(t):void 0;if(a&&!rm(a.address))throw new Yp({address:a.address});if(i&&!rm(i))throw new Yp({address:i});if(n&&n>O_)throw new e_({maxFeePerGas:n});if(r&&n&&r>n)throw new l_({maxFeePerGas:n,maxPriorityFeePerGas:r})}var j_=o((()=>{Bm(),k_(),Xp(),d_(),om()}));Fh(),j();var M_=class extends A{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},N_=class extends A{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},P_=class extends A{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Ph(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};j();var F_=class extends A{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};yp(),v_();let I_={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function L_(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?vp(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?vp(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?I_[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=z_(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let R_=__(`transaction`,L_);function z_(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function B_(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:L_(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}Ep();async function V_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:M(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new F_({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||B_)(s,`getBlock`)}async function H_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}yp();async function U_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await _f(e,V_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?gp(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):_f(e,V_,`getBlock`)({}),_f(e,H_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new N_;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function W_(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new M_;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await _f(e,V_,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new N_;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await U_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await _f(e,H_,`getGasPrice`)({}))}}yp(),Ep();async function G_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return vp(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?M(r):n]},{dedupe:!!r}))}Fp(),Ep();function K_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Ap(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Sp(e))}Fp(),Ep();function q_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Ap(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Ap(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Sp(e))}Sf(),Fp(),Ep();function J_(e,t){let n=t||`hex`,r=Hn(k(e,{strict:!1})?Dp(e):e);return n===`bytes`?r:bp(r)}Ep();function Y_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=J_(t,`bytes`);return i.set([n],0),r===`bytes`?i:Sp(i)}function X_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Y_({commitment:e,to:r,version:n}));return i}let Z_=4096,Q_=32*Z_;Q_*6-1-1*Z_*6,j();var $_=class extends A{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},ev=class extends A{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},tv=class extends A{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},nv=class extends A{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};nh(),wf(),Fp(),Ep();function rv(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Ap(e.data):e.data,r=Cf(n);if(!r)throw new ev;if(r>761855)throw new $_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=eh(new Uint8Array(Q_)),t=0;for(;t<Z_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Sp(e.bytes))}function iv(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??rv({data:t,to:r}),a=e.commitments??K_({blobs:i,kzg:n,to:r}),o=e.proofs??q_({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}Jh();function av(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new Uh({transaction:e})}d_(),Jh(),p_();function ov(e,{docsPath:t,...n}){return new qh((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}yp();async function sv(e){return vp(await e.request({method:`eth_chainId`},{dedupe:!0}))}Bm(),g_(),C_(),j_();async function cv(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=zm(n),r=a?a.id:await _f(e,sv,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();A_(t);let x=a?.formatters?.transactionRequest?.format,S=(x||y_)({...h_(y,{format:x}),account:n?zm(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||L_)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await _f(e,V_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new M_;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw ov(n,{...t,chain:e.chain})}}Bm(),Qp(),j_();let lv=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],uv=new Map,dv=new Zp(128);async function fv(e,t){let n=t;n.account??=e.account,n.parameters??=lv;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await _f(e,sv,`getChainId`)({}),c):n.chainId)}let u=r&&zm(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||dv.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await _f(e,cv,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return dv.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&dv.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await _f(e,V_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await _f(e,G_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=K_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=X_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=iv({blobs:p,commitments:e,proofs:q_({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=av(n)}catch{let t=uv.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,uv.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await W_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new P_({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new N_;if(n.gasPrice===void 0){let{gasPrice:t}=await W_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await _f(e,pv,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),A_(n),delete n.parameters,n}Bm(),j(),Ep(),g_(),C_(),D_(),j_();async function pv(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?zm(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Zg({authorization:t.authorizationList[0]}).catch(()=>{throw new A(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await fv(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?M(u):void 0)||d,ee=E_(b);A_(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||y_)({...h_(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw m_(n,{...t,account:i,chain:e.chain})}}function mv(e,t){if(!rm(e,{strict:!1}))throw new Yp({address:e});if(!rm(t,{strict:!1}))throw new Yp({address:t});return e.toLowerCase()===t.toLowerCase()}var hv=o((()=>{Xp(),om()}));function gv(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}Qf(),$m(),wf(),Jp(),bh(),xf();let _v=`/docs/contract/decodeEventLog`;function vv(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new zf({docsPath:_v});let c=t.find(e=>e.type===`event`&&o===qp(vf(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Bf(o,{docsPath:_v});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new qf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=yv({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=ch(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof jf||e instanceof Zm?new Kf({abiItem:c,data:n,params:g,size:Cf(n)}):e}else if(a)throw new Kf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function yv({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(ch([e],t)||[])[0]}hv(),Fp(),Lp(),Jp();function bv(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:qp(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?gv(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=vv({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=vv({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!xv({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function xv(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?mv(t,n):e.type===`string`||e.type===`bytes`?Ip(Dp(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function Sv(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Fm({abi:t,args:n,name:r});if(!e)throw new Vf(r,{docsPath:Cv});a=e}if(a.type!==`function`)throw new Vf(void 0,{docsPath:Cv});if(!a.outputs)throw new Hf(a.name,{docsPath:Cv});let o=ch(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var Cv,wv=o((()=>{Qf(),bh(),Rm(),Cv=`/docs/contract/decodeFunctionResult`})),Tv,Ev,Dv,Ov,kv,Av=o((()=>{Tv=[{inputs:[{components:[{name:`target`,type:`address`},{name:`allowFailure`,type:`bool`},{name:`callData`,type:`bytes`}],name:`calls`,type:`tuple[]`}],name:`aggregate3`,outputs:[{components:[{name:`success`,type:`bool`},{name:`returnData`,type:`bytes`}],name:`returnData`,type:`tuple[]`}],stateMutability:`view`,type:`function`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],Ev=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],Dv=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...Dv],[...Dv],Ov=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],kv=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),jv=o((()=>{})),Mv,Nv,Pv,Fv,Iv=o((()=>{Mv=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Nv=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Pv=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Fv=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Lv,Rv,zv,Bv,Vv,Hv=o((()=>{j(),Lv=class extends A{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Rv=class extends A{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},zv=class extends A{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},Bv=class extends A{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Vv=class extends A{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Uv(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new kf({docsPath:Wv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Af({docsPath:Wv});return lm([r,bm(i.inputs,n)])}var Wv,Gv=o((()=>{Qf(),um(),Mm(),Wv=`/docs/contract/encodeDeployData`}));function Kv({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Lv({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Lv({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var qv=o((()=>{Hv()}));function Jv(e,{docsPath:t,...n}){return new Qh((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}var Yv=o((()=>{ig(),d_(),p_()}));function Xv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Zv=o((()=>{}));function Qv({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>$v.delete(t),s=()=>c().map(({args:e})=>e),c=()=>$v.get(t)||[],l=e=>$v.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Xv();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var $v,ey=o((()=>{Zv(),$v=new Map})),ty,ny,ry,iy=o((()=>{wh(),j(),Zh(),ty=class extends A{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${Xh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ny=class extends A{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Xh(t)}`,`Response: ${Ch(e)}`],name:`OffchainLookupResponseMalformedError`})}},ry=class extends A{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function ay(e){let{abi:t,data:n}=e,r=dm(n,0,4),i=t.find(e=>e.type===`function`&&r===Nm(vf(e)));if(!i)throw new Uf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?ch(i.inputs,dm(n,4)):void 0}}var oy=o((()=>{Qf(),gm(),Pm(),bh(),xf()}));function sy(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Fm({abi:t,args:r,name:n});if(!e)throw new Lf(n,{docsPath:cy});i=e}if(i.type!==`error`)throw new Lf(void 0,{docsPath:cy});let a=Nm(vf(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new If(i.name,{docsPath:cy});o=bm(i.inputs,r)}return lm([a,o])}var cy,ly=o((()=>{Qf(),um(),Pm(),Mm(),xf(),Rm(),cy=`/docs/contract/encodeErrorResult`}));function uy(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Fm({abi:t,name:n});if(!e)throw new Vf(n,{docsPath:dy});i=e}if(i.type!==`function`)throw new Vf(void 0,{docsPath:dy});if(!i.outputs)throw new Hf(i.name,{docsPath:dy});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Xf(r)})();return bm(i.outputs,a)}var dy,fy=o((()=>{Qf(),Mm(),Rm(),dy=`/docs/contract/encodeFunctionResult`}));async function py(e){let{data:t,ccipRequest:n}=e,{args:[r]}=ay({abi:Ev,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await py({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=my(e)}})),uy({abi:Ev,functionName:`query`,result:[i,a]})}function my(e){return e.name===`HttpRequestError`&&e.status?sy({abi:Ev,errorName:`HttpError`,args:[e.status,e.shortMessage]}):sy({abi:[qm],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var hy=o((()=>{Av(),Ym(),oy(),ly(),fy()})),gy=c({ccipRequest:()=>vy,offchainLookup:()=>_y,offchainLookupAbiItem:()=>by,offchainLookupSignature:()=>yy});async function _y(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=xh({data:r,abi:[by]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:vy;try{if(!mv(i,o))throw new ry({sender:o,to:i});let{data:r}=await Sy(e,{blockNumber:t,blockTag:n,data:sm([l,bm([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await py({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new ty({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function vy({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new ag({body:s,details:i?.error?Ch(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!k(i)){r=new ny({result:i,url:a});continue}return i}catch(e){r=new ag({body:s,details:e.message,url:a})}}throw r}var yy,by,xy=o((()=>{Oy(),iy(),cg(),Sh(),Mm(),hv(),um(),Sf(),hy(),wh(),yy=`0x556f1830`,by={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function Sy(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?zm(n):void 0;if(u&&(f||p))throw new A(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new A(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?Ty({code:u,data:d}):te?Ey({data:d,factory:f,factoryData:p,to:b}):d;try{A_(t);let n=(typeof a==`bigint`?M(a):void 0)||o,u=l?Kc(l):void 0,d=E_(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||y_)({...h_(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&Cy({request:p})&&!d&&!u)try{return await wy(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Bv)&&!(e instanceof Lv))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=Dy(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(xy(),gy));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new ng({factory:f}):Jv(n,{...t,account:C,chain:e.chain})}}function Cy({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function wy(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return Kv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Bv})(),u=(typeof a==`bigint`?M(a):void 0)||o,{schedule:d}=Qv({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=Wm({abi:Tv,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Ty({code:Fv,data:r})}:{to:l,data:r}},u]});return Sv({abi:Tv,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new rg({data:f});return f===`0x`?{data:void 0}:{data:f}}function Ty(e){let{code:t,data:n}=e;return Uv({abi:mf([`constructor(bytes, bytes)`]),bytecode:Mv,args:[t,n]})}function Ey(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Uv({abi:mf([`constructor(address, bytes, address, bytes)`]),bytecode:Nv,args:[i,t,n,r]})}function Dy(e){if(!(e instanceof A))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Oy=o((()=>{gf(),qc(),Bm(),Av(),jv(),Iv(),j(),Hv(),ig(),wv(),Gv(),Gm(),qv(),Ep(),Yv(),g_(),C_(),ey(),D_(),j_()}));wv(),Gm(),Oy();async function ky(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Wm({abi:n,args:i,functionName:a});try{let{data:t}=await _f(e,Sy,`call`)({...o,data:s,to:r});return Sv({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw Bg(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}async function Ay(e){return new Promise(t=>setTimeout(t,e))}j();var jy=class extends A{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},My=class extends A{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Hv();function Ny({chain:e,currentChainId:t}){if(!e)throw new zv;if(t!==e.id)throw new Rv({chain:e,currentChainId:t})}async function Py(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}Bm(),j(),um(),g_(),C_(),Qp(),j_();let Fy=new Zp(128);async function Iy(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new jy({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?zm(n):null;try{A_(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Zg({authorization:o[0]}).catch(()=>{throw new A(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await _f(e,sv,`getChainId`)({}),r&&Ny({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||y_)({...h_(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?sm([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Fy.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(Fy.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Fy.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await _f(e,fv,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?sm([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...lv,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await _f(e,Py,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new My({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new My({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof My?e:ov(e,{...t,account:y,chain:t.chain||void 0})}}Bm(),Gm();async function Ly(e,t){return Ly.internal(e,Iy,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new jy({docsPath:`/docs/contract/writeContract`});let u=a?zm(a):null,d=Wm({abi:i,args:s,functionName:c});try{return await _f(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw Bg(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Ly||={});function Ry(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await Ay(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}yp(),v_();let zy={\"0x0\":`reverted`,\"0x1\":`success`};function By(e,t){let n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(e=>gv(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?vp(e.transactionIndex):null,status:e.status?zy[e.status]:null,type:e.type?I_[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Vy=__(`transactionReceipt`,By),Hy=256,Uy;function Wy(e=11){if(!Uy||Hy+e>256*2){Uy=``,Hy=0;for(let e=0;e<256;e++)Uy+=(256+Math.random()*256|0).toString(16).substring(1)}return Uy.substring(Hy,Hy+++e)}Bm();function Gy(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?zm(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:Wy(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}Ep();async function Ky(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:M(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}k_(),Xp(),j(),Hv(),d_(),om(),wf(),gm(),yp();function qy(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!rm(n))throw new Yp({address:n});if(t<0)throw new Vv({chainId:t})}Yy(e)}function Jy(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new ev;for(let e of t){let t=Cf(e),n=vp(dm(e,0,1));if(t!==32)throw new tv({hash:e,size:t});if(n!==1)throw new nv({hash:e,version:n})}}Yy(e)}function Yy(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Vv({chainId:t});if(i&&!rm(i))throw new Yp({address:i});if(r&&r>O_)throw new e_({maxFeePerGas:r});if(n&&r&&n>r)throw new l_({maxFeePerGas:r,maxPriorityFeePerGas:n})}function Xy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Vv({chainId:t});if(a&&!rm(a))throw new Yp({address:a});if(n||i)throw new A(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>O_)throw new e_({maxFeePerGas:r})}function Zy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!rm(a))throw new Yp({address:a});if(t!==void 0&&t<=0)throw new Vv({chainId:t});if(n||i)throw new A(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>O_)throw new e_({maxFeePerGas:r})}Xp(),Jh(),om();function Qy(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new Kh({storageKey:i[e]});if(!rm(r,{strict:!1}))throw new Yp({address:r});t.push([r,i])}return t}Jh(),um(),mp(),Ep();function $y(e,t){let n=av(e);return n===`eip1559`?nb(e,t):n===`eip2930`?rb(e,t):n===`eip4844`?tb(e,t):n===`eip7702`?eb(e,t):ib(e,t)}function eb(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;qy(e);let f=Qy(u),p=ob(n);return lm([`0x04`,Gg([M(r),a?M(a):`0x`,l?M(l):`0x`,c?M(c):`0x`,i?M(i):`0x`,o??`0x`,s?M(s):`0x`,d??`0x`,f,p,...ab(e,t)])])}function tb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;Jy(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Sp(e)),n=e.kzg,r=K_({blobs:t,kzg:n});f===void 0&&(f=X_({commitments:r})),p===void 0&&(p=iv({blobs:t,commitments:r,proofs:q_({blobs:t,commitments:r,kzg:n})}))}let m=Qy(u),h=[M(n),i?M(i):`0x`,l?M(l):`0x`,c?M(c):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,d??`0x`,m,s?M(s):`0x`,f??[],...ab(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return lm([`0x03`,Gg(p?[h,g,_,v]:h)])}function nb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;Yy(e);let d=Qy(l);return lm([`0x02`,Gg([M(n),i?M(i):`0x`,c?M(c):`0x`,s?M(s):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,u??`0x`,d,...ab(e,t)])])}function rb(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;Xy(e);let u=Qy(c);return lm([`0x01`,Gg([M(n),a?M(a):`0x`,l?M(l):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`,u,...ab(e,t)])])}function ib(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;Zy(e);let l=[a?M(a):`0x`,c?M(c):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new Hh({v:t.v});return e})(),r=pp(t.r),i=pp(t.s);l=[...l,M(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,M(n),`0x`,`0x`]);return Gg(l)}function ab(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=pp(n.r),o=pp(n.s);return[typeof i==`number`?i?M(1):`0x`:r===0n?`0x`:r===1n?M(1):r===27n?`0x`:M(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}Ep();function ob(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?bp(e):`0x`,a,r?bp(r):`0x`,...ab({},i)])}return t}nm(),hv();async function sb({address:e,authorization:t,signature:n}){return mv(em(e),await Zg({authorization:t,signature:n}))}Qp();let cb=new Zp(8192);function lb(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(cb.get(n))return cb.get(n);let r=e().finally(()=>cb.delete(n));return cb.set(n,r),r}j(),cg(),zg(),Ep(),wh();function ub(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new xg(Error(`method not supported`),{method:l});return lb(()=>Ry(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case fg.code:throw new fg(t);case pg.code:throw new pg(t);case mg.code:throw new mg(t,{method:n.method});case hg.code:throw new hg(t);case gg.code:throw new gg(t);case _g.code:throw new _g(t);case vg.code:throw new vg(t);case yg.code:throw new yg(t);case bg.code:throw new bg(t);case xg.code:throw new xg(t,{method:n.method});case Sg.code:throw new Sg(t);case Cg.code:throw new Cg(t);case wg.code:throw new wg(t);case Tg.code:throw new Tg(t);case Eg.code:throw new Eg(t);case Dg.code:throw new Dg(t);case Og.code:throw new Og(t);case kg.code:throw new kg(t);case Ag.code:throw new Ag(t);case jg.code:throw new jg(t);case Mg.code:throw new Mg(t);case Ng.code:throw new Ng(t);case Pg.code:throw new Pg(t);case Fg.code:throw new Fg(t);case Ig.code:throw new Ig(t);case 5e3:throw new wg(t);case Lg.code:throw new Lg(t);default:throw e instanceof A?e:new Rg(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof ag){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>db(e)}),{enabled:i,id:i?Cp(`${c}.${Ch(n)}`):void 0})}}function db(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===Sg.code||e.code===gg.code:e instanceof ag&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function fb(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function pb(){return{}}j(),fp(),nh(),Fp(),Ep();function mb(e,t=`hex`){return hb(eh((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new up(e);return Ap(e)}return e})(),{recursiveReadLimit:1/0}),t)}function hb(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Sp(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=gb(e,n,128),i=e.readBytes(r);return t===`hex`?Sp(i):i}return _b(e,gb(e,n,192),t)}function gb(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new A(`Invalid RLP prefix`)}function _b(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(hb(e,n));return i}Sf(),wf();function vb(e){return k(e)&&Cf(e)===32}function yb(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function bb(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let xb=bb();cg(),wh();function Sb(e,t={}){let{url:n,headers:r}=Cb(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await yb(async({signal:e})=>{let t={...l,body:Ch(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??xb.take(),...e})):{jsonrpc:`2.0`,id:i.id??xb.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new sg({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new ag({body:i,details:Ch(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof ag||e instanceof sg?e:new ag({body:i,cause:e,url:n})}}}}function Cb(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}um(),wf(),Ep();function wb(e){let t=typeof e==`string`?Cp(e):typeof e.raw==`string`?e.raw:Sp(e.raw);return sm([Cp(`\u0019Ethereum Signed Message:\n${Cf(t)}`),t])}Lp();function Tb(e,t){return Ip(wb(e),t)}wh(),j();var Eb=class extends A{constructor({domain:e}){super(`Invalid domain \"${Ch(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Db=class extends A{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Ob=class extends A{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};Qf(),Xp(),om(),wf(),Ep(),ym();function kb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(vm);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;M(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!rm(o))throw new Yp({address:o});let c=r.match(_m);if(c){let[e,t]=c;if(t&&Cf(o)!==Number.parseInt(t,10))throw new Gf({expectedSize:Number.parseInt(t,10),givenSize:Cf(o)})}let l=i[r];l&&(jb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Eb({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Db({primaryType:r,types:i})}function Ab({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function jb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Ob({type:e})}Mm(),um(),Ep(),Lp();function Mb(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Ab({domain:t}),...e.types};kb({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Nb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Pb({data:n,primaryType:r,types:i})),Ip(sm(a))}function Nb({domain:e,types:t}){return Pb({data:e,primaryType:`EIP712Domain`,types:t})}function Pb({data:e,primaryType:t,types:n}){return Ip(Fb({data:e,primaryType:t,types:n}))}function Fb({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Ib({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=zb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return bm(r,i)}function Ib({primaryType:e,types:t}){return Ip(bp(Lb({primaryType:e,types:t})))}function Lb({primaryType:e,types:t}){let n=``,r=Rb({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Rb({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Rb({primaryType:e.type,types:t},n);return n}function zb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Ip(Fb({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Ip(r)];if(n===`string`)return[{type:`bytes32`},Ip(bp(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>zb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Ip(bm(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}rt(),O();let Bb=qa(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Vb(e){if(typeof e==`string`){if(D(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Wb(e)}else uc(e.authorization)}function Hb(e){Vb(e);let t=Zr(D(e,-64,-32)),n=D(e,-t-64,-64),r=D(e,0,-t-64),[i,a,o]=Wa(Bb,n);return{authorization:kc({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function Ub(e){try{return Vb(e),!0}catch{return!1}}var Wb=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};Jh(),gm(),yp();function Gb(e){let t=hm(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&vp(t)>=192)return`legacy`;throw new Wh({serializedType:t})}Xp(),Jh(),om(),Sf(),op(),mp(),yp();function Kb(e){let t=Gb(e);return t===`eip1559`?Yb(e):t===`eip2930`?Xb(e):t===`eip4844`?Jb(e):t===`eip7702`?qb(e):Zb(e)}function qb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Gh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:vp(n),type:`eip7702`};return k(s)&&s!==`0x`&&(h.to=s),k(o)&&o!==`0x`&&(h.gas=gp(o)),k(l)&&l!==`0x`&&(h.data=l),k(r)&&(h.nonce=r===`0x`?0:vp(r)),k(c)&&c!==`0x`&&(h.value=gp(c)),k(a)&&a!==`0x`&&(h.maxFeePerGas=gp(a)),k(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=gp(i)),u.length!==0&&u!==`0x`&&(h.accessList=$b(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=ex(d)),qy(h),{...t.length===13?tx(t):void 0,...h}}function Jb(e){let t=Qb(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new Gh({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:vp(a),to:u,type:`eip4844`};return k(l)&&l!==`0x`&&(S.gas=gp(l)),k(f)&&f!==`0x`&&(S.data=f),k(o)&&(S.nonce=o===`0x`?0:vp(o)),k(d)&&d!==`0x`&&(S.value=gp(d)),k(m)&&m!==`0x`&&(S.maxFeePerBlobGas=gp(m)),k(c)&&c!==`0x`&&(S.maxFeePerGas=gp(c)),k(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=gp(s)),p.length!==0&&p!==`0x`&&(S.accessList=$b(p)),y&&b&&x&&(S.sidecars=iv({blobs:y,commitments:b,proofs:x})),Jy(S),{...r.length===14?tx(r):void 0,...S}}function Yb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Gh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:vp(n),type:`eip1559`};return k(s)&&s!==`0x`&&(m.to=s),k(o)&&o!==`0x`&&(m.gas=gp(o)),k(l)&&l!==`0x`&&(m.data=l),k(r)&&(m.nonce=r===`0x`?0:vp(r)),k(c)&&c!==`0x`&&(m.value=gp(c)),k(a)&&a!==`0x`&&(m.maxFeePerGas=gp(a)),k(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=gp(i)),u.length!==0&&u!==`0x`&&(m.accessList=$b(u)),Yy(m),{...t.length===12?tx(t):void 0,...m}}function Xb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Gh({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:vp(n),type:`eip2930`};return k(o)&&o!==`0x`&&(p.to=o),k(a)&&a!==`0x`&&(p.gas=gp(a)),k(c)&&c!==`0x`&&(p.data=c),k(r)&&(p.nonce=r===`0x`?0:vp(r)),k(s)&&s!==`0x`&&(p.value=gp(s)),k(i)&&i!==`0x`&&(p.gasPrice=gp(i)),l.length!==0&&l!==`0x`&&(p.accessList=$b(l)),Xy(p),{...t.length===11?tx(t):void 0,...p}}function Zb(e){let t=mb(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Gh({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(k(a)&&a!==`0x`&&(d.to=a),k(i)&&i!==`0x`&&(d.gas=gp(i)),k(s)&&s!==`0x`&&(d.data=s),k(n)&&(d.nonce=n===`0x`?0:vp(n)),k(o)&&o!==`0x`&&(d.value=gp(o)),k(r)&&r!==`0x`&&(d.gasPrice=gp(r)),Zy(d),t.length===6)return d;let f=k(c)&&c!==`0x`?gp(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new Hh({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Qb(e){return mb(`0x${e.slice(4)}`,`hex`)}function $b(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!rm(r,{strict:!1}))throw new Yp({address:r});t.push({address:r,storageKeys:i.map(e=>vb(e)?e:pp(e))})}return t}function ex(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:vp(r),nonce:a===`0x`?0:vp(a),...tx([o,s,c])})}return t}function tx(e){let t=e.slice(-3),n=t[0]===`0x`||gp(t[0])===0n?27n:28n;return{r:ip(t[1],{size:32}),s:ip(t[2],{size:32}),v:n,yParity:n===27n?0:1}}Av(),Iv(),Qf(),j(),ig(),wv(),Gm(),qv();async function nx(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return Kv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=Wm({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=Bg(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>_f(e,ky,`readContract`)({...f===null?{code:Fv}:{address:f},abi:Tv,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new Mf;if(!a)throw new rg({data:r});let e=Sv({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=Bg(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new A(`multicall results mismatch`);return _}rt(),O();function rx(e){if(D(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new ox(e)}function ix(e){let{data:t,signature:n,to:r}=e;return Br(Ga(qa(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function ax(e){try{return rx(e),!0}catch{return!1}}var ox=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};lc(),yp(),Fp();function sx({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Js.Signature(gp(e),gp(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Ap(o)}Av(),Iv(),ig(),Gv(),Gm(),nm(),hv(),um(),Sf(),yp(),Ep(),Oy();async function cx(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return k(e)?e:typeof e==`object`&&`r`in e&&`s`in e?sx(e):Sp(e)})();try{if(s===`eoa`)try{if(mv(em(n),await Wg({hash:i,signature:c})))return!0}catch{}return Ub(c)?await lx(e,{...t,multicallAddress:o,signature:c}):await ux(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(mv(em(n),await Wg({hash:i,signature:c})))return!0}catch{}if(e instanceof fx)return!1;throw e}}async function lx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Hb(t.signature);if(await Ky(e,{address:n,blockNumber:r,blockTag:i})===lm([`0xef0100`,s.address]))return await dx(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:M(s.r,{size:32}),s:M(s.s,{size:32}),yParity:s.yParity};if(!await sb({address:n,authorization:d}))throw new fx;let f=await _f(e,ky,`readContract`)({...o?{address:o}:{code:Fv},authorizationList:[d],abi:Tv,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Wm({abi:Ov,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new fx}async function ux(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||ax(o)?o:ix({data:i,signature:o,to:r}))(),u=s?{to:s,data:Wm({abi:kv,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Uv({abi:kv,args:[n,a,l],bytecode:Pv}),...c},{data:d}=await _f(e,Sy,`call`)(u).catch(e=>{throw e instanceof Qh?new fx:e});if(_p(d??`0x0`))return!0;throw new fx}async function dx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await _f(e,ky,`readContract`)({address:n,abi:Ov,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof $h?new fx:e})).startsWith(`0x1626ba7e`))return!0;throw new fx}var fx=class extends Error{};function px({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=Wy();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:ub(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function mx(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>px({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}j();var hx=class extends A{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};cg(),ey();function gx(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new hx;let b=Sb(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return px({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=Qv({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new og({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}var _x;function N(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var vx=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}};(_x=globalThis).__zod_globalConfig??(_x.__zod_globalConfig={});let yx=globalThis.__zod_globalConfig;function bx(e){return e&&Object.assign(yx,e),yx}function xx(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Sx(e,t){return typeof t==`bigint`?t.toString():t}function Cx(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function wx(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Tx=Symbol(`evaluating`);function Ex(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Tx)return r===void 0&&(r=Tx,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let Dx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Ox(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function kx(e){if(Ox(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Ox(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Ax=new Set([`string`,`number`,`symbol`]),jx=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Mx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Nx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Px(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Fx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function Ix(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Lx(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Rx(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function zx(e){return typeof e==`string`?e:e?.message}function Bx(e,t,n){let r=e.message?e.message:zx(e.inst?._zod.def?.error?.(e))??zx(t?.error?.(e))??zx(n.customError?.(e))??zx(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function Vx(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let Hx=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Sx,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Ux=N(`$ZodError`,Hx),Wx=N(`$ZodError`,Hx,{Parent:Error}),Gx=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new vx;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Bx(e,a,bx())));throw Dx(t,i?.callee),t}return o.value},Kx=Gx(Wx),qx=(e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Bx(e,a,bx())));throw Dx(t,i?.callee),t}return o.value})(Wx),Jx=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new vx;return a.issues.length?{success:!1,error:new(e??Ux)(a.issues.map(e=>Bx(e,i,bx())))}:{success:!0,data:a.value}})(Wx),Yx=(e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Bx(e,i,bx())))}:{success:!0,data:a.value}})(Wx),Xx=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Gx(e)(t,n,i)})(Wx),Zx=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},Qx=/^-?\\d+n?$/,$x=/^-?\\d+(?:\\.\\d+)?$/,eS=/^(?:true|false)$/i,tS=/^null$/i,nS=/^undefined$/i,rS=N(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),iS={major:4,minor:4,patch:2},aS=N(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=iS;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=Ix(e),i;for(let a of t){if(a._zod.def.when){if(Lx(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new vx;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=Ix(e,t))});else{if(e.issues.length===t)continue;r||=Ix(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Ix(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new vx;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new vx;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ex(e,`~standard`,()=>({validate:t=>{try{let n=Jx(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Yx(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),oS=N(`$ZodString`,(e,t)=>{aS.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Zx(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),sS=N(`$ZodNumber`,(e,t)=>{aS.init(e,t),e._zod.pattern=e._zod.bag.pattern??$x,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),cS=N(`$ZodBoolean`,(e,t)=>{aS.init(e,t),e._zod.pattern=eS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),lS=N(`$ZodBigInt`,(e,t)=>{aS.init(e,t),e._zod.pattern=Qx,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),uS=N(`$ZodUndefined`,(e,t)=>{aS.init(e,t),e._zod.pattern=nS,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),dS=N(`$ZodNull`,(e,t)=>{aS.init(e,t),e._zod.pattern=tS,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),fS=N(`$ZodUnknown`,(e,t)=>{aS.init(e,t),e._zod.parse=e=>e}),pS=N(`$ZodVoid`,(e,t)=>{aS.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function mS(e,t,n){e.issues.length&&t.issues.push(...Rx(n,e.issues)),t.value[n]=e.value}let hS=N(`$ZodArray`,(e,t)=>{aS.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>mS(t,n,e))):mS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function gS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...Rx(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function _S(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Fx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function vS(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>gS(e,n,i,t,u,d))):gS(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let yS=N(`$ZodObject`,(e,t)=>{if(aS.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Cx(()=>_S(t));Ex(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Ox,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>gS(n,t,e,s,r,i))):gS(a,t,e,s,r,i)}return i?vS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function bS(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Ix(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Bx(e,r,bx())))}),t)}let xS=N(`$ZodUnion`,(e,t)=>{aS.init(e,t),Ex(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ex(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ex(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ex(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>wx(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>bS(t,r,e,i)):bS(o,r,e,i)}}),SS=N(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,xS.init(e,t);let n=e._zod.parse;Ex(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Cx(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Ox(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),CS=N(`$ZodTuple`,(e,t)=>{aS.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=wS(n,`optin`),c=wS(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>TS(t,r,e))):TS(a,r,e)}}return o.length?Promise.all(o).then(()=>ES(l,r,n,a,c)):ES(l,r,n,a,c)}});function wS(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function TS(e,t,n){e.issues.length&&t.issues.push(...Rx(n,e.issues)),t.value[n]=e.value}function ES(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...Rx(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}let DS=N(`$ZodRecord`,(e,t)=>{aS.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!kx(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>Bx(e,r,bx())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...Rx(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...Rx(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&$x.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Bx(e,r,bx())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Rx(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Rx(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),OS=N(`$ZodEnum`,(e,t)=>{aS.init(e,t);let n=xx(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ax.has(typeof e)).map(e=>typeof e==`string`?Mx(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),kS=N(`$ZodLiteral`,(e,t)=>{if(aS.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Mx(e):e?Mx(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}});function AS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let jS=N(`$ZodOptional`,(e,t)=>{aS.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ex(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ex(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${wx(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>AS(t,e.value)):AS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),MS=N(`$ZodNullable`,(e,t)=>{aS.init(e,t),Ex(e._zod,`optin`,()=>t.innerType._zod.optin),Ex(e._zod,`optout`,()=>t.innerType._zod.optout),Ex(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${wx(e.source)}|null)$`):void 0}),Ex(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),NS=N(`$ZodPipe`,(e,t)=>{aS.init(e,t),Ex(e._zod,`values`,()=>t.in._zod.values),Ex(e._zod,`optin`,()=>t.in._zod.optin),Ex(e._zod,`optout`,()=>t.out._zod.optout),Ex(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.in,n)):PS(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.out,n)):PS(r,t.out,n)}});function PS(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let FS=N(`$ZodCodec`,(e,t)=>{aS.init(e,t),Ex(e._zod,`values`,()=>t.in._zod.values),Ex(e._zod,`optin`,()=>t.in._zod.optin),Ex(e._zod,`optout`,()=>t.out._zod.optout),Ex(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>IS(e,t,n)):IS(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>IS(e,t,n)):IS(r,t,n)}}});function IS(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>LS(e,r,t.out,n)):LS(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>LS(e,r,t.in,n)):LS(e,r,t.in,n)}}function LS(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let RS=N(`$ZodReadonly`,(e,t)=>{aS.init(e,t),Ex(e._zod,`propValues`,()=>t.innerType._zod.propValues),Ex(e._zod,`values`,()=>t.innerType._zod.values),Ex(e._zod,`optin`,()=>t.innerType?._zod?.optin),Ex(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(zS):zS(r)}});function zS(e){return e.value=Object.freeze(e.value),e}let BS=N(`$ZodTemplateLiteral`,(e,t)=>{aS.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||jx.has(typeof e))n.push(Mx(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),VS=N(`$ZodCustom`,(e,t)=>{rS.init(e,t),aS.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>HS(t,n,r,e));HS(i,n,r,e)}});function HS(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Vx(e))}}function US(e,t){return new e({type:`string`,...Px(t)})}function WS(e,t){return new e({type:`number`,checks:[],...Px(t)})}function GS(e,t){return new e({type:`boolean`,...Px(t)})}function KS(e,t){return new e({type:`bigint`,...Px(t)})}function qS(e,t){return new e({type:`undefined`,...Px(t)})}function JS(e,t){return new e({type:`null`,...Px(t)})}function YS(e){return new e({type:`unknown`})}function XS(e,t){return new e({type:`void`,...Px(t)})}function ZS(e,t,n){let r=Px(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}let QS=N(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);aS.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Kx(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Jx(e,t,n),e.parseAsync=async(t,n)=>qx(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Yx(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Nx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),$S=N(`ZodMiniString`,(e,t)=>{oS.init(e,t),QS.init(e,t)});function P(e){return US($S,e)}let eC=N(`ZodMiniNumber`,(e,t)=>{sS.init(e,t),QS.init(e,t)});function tC(e){return WS(eC,e)}let nC=N(`ZodMiniBoolean`,(e,t)=>{cS.init(e,t),QS.init(e,t)});function rC(e){return GS(nC,e)}let iC=N(`ZodMiniBigInt`,(e,t)=>{lS.init(e,t),QS.init(e,t)});function aC(e){return KS(iC,e)}let oC=N(`ZodMiniUndefined`,(e,t)=>{uS.init(e,t),QS.init(e,t)});function sC(e){return qS(oC,e)}let cC=N(`ZodMiniNull`,(e,t)=>{dS.init(e,t),QS.init(e,t)});function lC(e){return JS(cC,e)}let uC=N(`ZodMiniUnknown`,(e,t)=>{fS.init(e,t),QS.init(e,t)});function dC(){return YS(uC)}let fC=N(`ZodMiniVoid`,(e,t)=>{pS.init(e,t),QS.init(e,t)});function pC(e){return XS(fC,e)}let mC=N(`ZodMiniArray`,(e,t)=>{hS.init(e,t),QS.init(e,t)});function hC(e,t){return new mC({type:`array`,element:e,...Px(t)})}let gC=N(`ZodMiniObject`,(e,t)=>{yS.init(e,t),QS.init(e,t),Ex(e,`shape`,()=>t.shape)});function F(e,t){return new gC({type:`object`,shape:e??{},...Px(t)})}let _C=N(`ZodMiniUnion`,(e,t)=>{xS.init(e,t),QS.init(e,t)});function vC(e,t){return new _C({type:`union`,options:e,...Px(t)})}let yC=N(`ZodMiniDiscriminatedUnion`,(e,t)=>{SS.init(e,t),QS.init(e,t)});function bC(e,t,n){return new yC({type:`union`,options:t,discriminator:e,...Px(n)})}let xC=N(`ZodMiniTuple`,(e,t)=>{CS.init(e,t),QS.init(e,t)});function SC(e,t,n){let r=t instanceof aS;return new xC({type:`tuple`,items:e,rest:r?t:null,...Px(r?n:t)})}let CC=N(`ZodMiniRecord`,(e,t)=>{DS.init(e,t),QS.init(e,t)});function wC(e,t,n){return!t||!t._zod?new CC({type:`record`,keyType:P(),valueType:e,...Px(t)}):new CC({type:`record`,keyType:e,valueType:t,...Px(n)})}let TC=N(`ZodMiniEnum`,(e,t)=>{OS.init(e,t),QS.init(e,t),e.options=Object.values(t.entries)});function EC(e,t){return new TC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Px(t)})}let DC=N(`ZodMiniLiteral`,(e,t)=>{kS.init(e,t),QS.init(e,t)});function I(e,t){return new DC({type:`literal`,values:Array.isArray(e)?e:[e],...Px(t)})}let OC=N(`ZodMiniOptional`,(e,t)=>{jS.init(e,t),QS.init(e,t)});function L(e){return new OC({type:`optional`,innerType:e})}let kC=N(`ZodMiniNullable`,(e,t)=>{MS.init(e,t),QS.init(e,t)});function AC(e){return new kC({type:`nullable`,innerType:e})}let jC=N(`ZodMiniPipe`,(e,t)=>{NS.init(e,t),QS.init(e,t)}),MC=N(`ZodMiniCodec`,(e,t)=>{jC.init(e,t),FS.init(e,t)});function NC(e,t,n){return new MC({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let PC=N(`ZodMiniReadonly`,(e,t)=>{RS.init(e,t),QS.init(e,t)});function R(e){return new PC({type:`readonly`,innerType:e})}let FC=N(`ZodMiniTemplateLiteral`,(e,t)=>{BS.init(e,t),QS.init(e,t)});function IC(e,t){return new FC({type:`template_literal`,parts:e,...Px(t)})}let LC=N(`ZodMiniCustom`,(e,t)=>{VS.init(e,t),QS.init(e,t)});function RC(e,t){return ZS(LC,e??(()=>!0),t)}function zC(e){return e}function BC(e){return e}let z=()=>IC([`0x`,P()],`Expected address`),VC=()=>NC(vC([B(),aC()]),aC(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:Xr(e),encode:e=>E(e)}),B=()=>IC([`0x`,P()],`Expected hex value`),HC=()=>NC(vC([B(),tC()]),tC(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Zr(e),encode:e=>E(e)}),UC=F({address:z(),blockHash:B(),blockNumber:VC(),data:B(),logIndex:HC(),removed:rC(),topics:R(hC(B())),transactionHash:B(),transactionIndex:HC()}),WC=F({blobGasPrice:L(VC()),blobGasUsed:L(VC()),blockHash:B(),blockNumber:VC(),contractAddress:AC(z()),cumulativeGasUsed:VC(),effectiveGasPrice:VC(),feePayer:L(z()),feeToken:L(z()),from:z(),gasUsed:VC(),logs:hC(UC),logsBloom:B(),root:L(B()),status:NC(B(),EC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:AC(z()),transactionHash:B(),transactionIndex:HC(),type:B()}),GC=RC(),KC=vC([I(`secp256k1`),I(`p256`),I(`webAuthn`)]),qC=F({address:z(),chainId:VC(),expiry:vC([HC(),lC(),sC()]),keyId:z(),keyType:KC,limits:L(R(hC(F({token:z(),limit:VC(),period:L(HC())})))),signature:GC}),JC=F({data:L(B()),to:L(z()),value:L(VC())}),YC=F({accessList:L(hC(F({address:z(),storageKeys:hC(B())}))),calls:L(R(hC(JC))),chainId:L(HC()),data:L(B()),feePayer:L(vC([rC(),P()])),feePayerSignature:L(wC(P(),dC())),feeToken:L(z()),from:L(z()),gas:L(VC()),keyAuthorization:L(qC),maxFeePerGas:L(VC()),maxPriorityFeePerGas:L(VC()),nonce:L(HC()),nonceKey:L(VC()),to:L(z()),validAfter:L(HC()),validBefore:L(HC()),value:L(VC())});var XC;(function(e){e.schema=zC({method:I(`eth_accounts`),params:void 0,returns:R(hC(z()))})})(XC||={});var ZC;(function(e){e.schema=zC({method:I(`eth_chainId`),params:void 0,returns:B()})})(ZC||={});var QC;(function(e){e.schema=zC({method:I(`eth_requestAccounts`),params:void 0,returns:R(hC(z()))})})(QC||={});var $C;(function(e){e.schema=zC({method:I(`eth_sendTransaction`),params:R(SC([YC])),returns:B()})})($C||={});var ew;(function(e){let t=F({address:z(),decimals:tC(),direction:EC([`incoming`,`outgoing`]),formatted:P(),name:P(),recipients:R(hC(z())),symbol:P(),value:B()}),n=F({decimals:tC(),formatted:P(),name:P(),symbol:P(),token:z(),value:B()});e.schema=zC({method:I(`eth_fillTransaction`),params:R(SC([YC])),returns:F({capabilities:F({balanceDiffs:L(wC(z(),R(hC(t)))),error:L(F({abiItem:L(wC(P(),dC())),data:L(B()),errorName:P(),message:P()})),fee:L(F({amount:B(),decimals:tC(),formatted:P(),symbol:P()})),requireFunds:L(F({amount:B(),decimals:tC(),formatted:P(),token:z(),symbol:P()})),autoSwap:L(F({maxIn:n,minOut:n,slippage:tC()})),sponsor:L(F({address:z(),name:L(P()),url:L(P())})),sponsored:rC()}),tx:wC(P(),dC())})})})(ew||={});var tw;(function(e){e.schema=zC({method:I(`eth_signTransaction`),params:R(SC([YC])),returns:B()})})(tw||={});var nw;(function(e){e.schema=zC({method:I(`eth_sendTransactionSync`),params:R(SC([YC])),returns:WC})})(nw||={});var rw;(function(e){e.schema=zC({method:I(`eth_signTypedData_v4`),params:R(SC([z(),P()])),returns:B()})})(rw||={});var iw;(function(e){e.schema=zC({method:I(`personal_sign`),params:R(SC([B(),z()])),returns:B()})})(iw||={});let aw=L(F({feePayer:L(vC([rC(),P()])),sync:L(rC())}));var ow;(function(e){e.schema=zC({method:I(`wallet_sendCalls`),params:L(R(SC([F({atomicRequired:L(rC()),calls:R(hC(JC)),capabilities:aw,chainId:L(HC()),from:L(z()),version:L(P())})]))),returns:F({atomic:L(rC()),capabilities:aw,chainId:L(HC()),id:P(),receipts:L(hC(WC)),status:L(tC()),version:L(P())})})})(ow||={});var sw;(function(e){e.schema=zC({method:I(`wallet_getBalances`),params:L(R(SC([F({account:L(z()),chainId:L(HC()),tokens:L(R(hC(z())))})]))),returns:R(hC(F({address:z(),balance:VC(),decimals:tC(),display:P(),name:P(),symbol:P()})))})})(sw||={});var cw;(function(e){e.schema=zC({method:I(`wallet_getCapabilities`),params:L(R(vC([SC([z()]),SC([z(),R(hC(B()))])]))),returns:wC(B(),F({accessKeys:L(F({status:vC([I(`supported`),I(`unsupported`)])})),atomic:F({status:vC([I(`supported`),I(`ready`),I(`unsupported`)])}),feePayer:L(F({status:vC([I(`supported`),I(`unsupported`)])}))}))})})(cw||={});var lw;(function(e){e.parameters=F({address:L(z()),chainId:L(VC()),expiry:tC(),keyType:L(KC),limits:L(R(hC(F({token:z(),limit:VC(),period:L(tC())})))),publicKey:L(B()),scopes:L(R(hC(F({address:z(),selector:L(vC([B(),P()])),recipients:L(R(hC(z())))}))))}),e.returns=F({keyAuthorization:qC,rootAddress:z()}),e.schema=zC({method:I(`wallet_authorizeAccessKey`),params:R(SC([e.parameters])),returns:e.returns})})(lw||={});var uw;(function(e){e.parameters=F({address:L(z()),expiry:tC(),keyType:L(KC),limits:R(hC(F({token:z(),limit:VC(),period:L(tC())}))),publicKey:L(B()),scopes:L(R(hC(F({address:z(),selector:L(vC([B(),P()])),recipients:L(R(hC(z())))}))))})})(uw||={});var dw;(function(e){e.schema=zC({method:I(`wallet_revokeAccessKey`),params:R(SC([F({address:z(),accessKeyAddress:z()})])),returns:void 0})})(dw||={});var fw;(function(e){e.authorizeAccessKey=L(lw.parameters),e.capabilities={request:L(vC([F({digest:L(B()),authorizeAccessKey:e.authorizeAccessKey,method:I(`register`),name:L(P()),userId:L(P())}),F({digest:L(B()),credentialId:L(P()),authorizeAccessKey:e.authorizeAccessKey,method:L(I(`login`)),selectAccount:L(rC())})])),result:F({email:L(AC(P())),keyAuthorization:L(qC),signature:L(B()),username:L(AC(P()))})},e.schema=zC({method:I(`wallet_connect`),params:L(R(SC([F({capabilities:e.capabilities.request,chainId:L(HC()),version:L(P())})]))),returns:F({accounts:R(hC(F({address:z(),capabilities:e.capabilities.result})))})})})(fw||={});var pw;(function(e){let t=L(uw.parameters);e.parameters=F({capabilities:L(vC([F({digest:L(B()),authorizeAccessKey:t,method:I(`register`),name:L(P()),userId:L(P())}),F({digest:L(B()),credentialId:L(P()),authorizeAccessKey:t,method:L(I(`login`)),selectAccount:L(rC())})])),chainId:L(HC()),version:L(P())})})(pw||={});var mw;(function(e){e.schema=zC({method:I(`wallet_disconnect`),params:void 0,returns:void 0})})(mw||={});var hw;(function(e){e.schema=zC({method:I(`wallet_getCallsStatus`),params:L(R(SC([P()]))),returns:F({atomic:rC(),chainId:HC(),id:P(),receipts:L(hC(WC)),status:tC(),version:P()})})})(hw||={});var gw;(function(e){e.parameters=F({feePayer:L(vC([rC(),P()])),to:L(z()),token:L(z()),value:L(P())}),e.schema=zC({method:I(`wallet_send`),params:L(R(SC([e.parameters]))),returns:F({receipt:WC})})})(gw||={});var _w;(function(e){e.schema=zC({method:I(`wallet_switchEthereumChain`),params:R(SC([F({chainId:HC()})])),returns:void 0})})(_w||={});var vw;(function(e){e.schema=zC({method:I(`wallet_deposit`),params:R(SC([F({address:L(z()),chainId:L(HC()),displayName:L(P()),token:L(z()),value:L(P())})])),returns:pC()})})(vw||={}),uw.parameters,pw.parameters;let yw=BC([XC.schema,ZC.schema,ew.schema,QC.schema,$C.schema,nw.schema,tw.schema,rw.schema,iw.schema,lw.schema,fw.schema,vw.schema,mw.schema,sw.schema,hw.schema,cw.schema,dw.schema,gw.schema,ow.schema,_w.schema]),bw=bu();function xw(e){return e.params?F({method:e.method,params:e.params}):F({method:e.method})}let Sw=bC(`method`,yw.map(xw));function Cw(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}var ww=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},Tw=class extends ww{name=`InvalidChallengeError`;title=`Invalid Challenge`;status=402;type=`https://paymentauth.org/problems/invalid-challenge`;constructor(e={}){let{id:t,reason:n}=e,r=t?` \"${t}\"`:``,i=n?`: ${n}`:``;super(`Challenge${r} is invalid${i}.`)}},Ew=class extends ww{name=`PaymentExpiredError`;title=`Payment Expired`;type=`https://paymentauth.org/problems/payment-expired`;constructor(e={}){let{expires:t}=e;super(t?`Payment expired at ${t}.`:`Payment has expired.`)}};function Dw(e,t){if(!e)throw new Tw({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new Tw({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new Ew({expires:e})}var Ow=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function kw(e,t){return e.exec(t)?.groups}let Aw=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,jw=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Mw=/^\\(.+?\\).*?$/,Nw=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function Pw(e){let t=e.type;if(Nw.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Pw(i),r<n-1&&(t+=`, `)}let r=kw(Nw,e.type);return t+=`)${r?.array||``}`,Pw({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function Fw(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Pw(i),r!==n-1&&(t+=`, `)}return t}function Iw(e){return e.type===`function`?`function ${e.name}(${Fw(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Fw(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Fw(e.inputs)})`:e.type===`error`?`error ${e.name}(${Fw(e.inputs)})`:e.type===`constructor`?`constructor(${Fw(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let Lw=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function Rw(e){return Lw.test(e)}function zw(e){return kw(Lw,e)}let Bw=new Set([`memory`,`indexed`,`storage`,`calldata`]),Vw=new Set([`calldata`,`memory`,`storage`]);var Hw=class extends Ow{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Uw=class extends Ow{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},Ww=class extends Ow{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Gw=class extends Ow{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Kw=class extends Ow{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},qw=class extends Ow{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Jw=class extends Ow{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Yw=class extends Ow{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Xw=class extends Ow{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Zw=class extends Ow{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Qw=class extends Ow{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},$w=class extends Ow{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function eT(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let tT=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),nT=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,rT=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,iT=/^u?int$/;function aT(e,t){let n=eT(e,t?.type,t?.structs);if(tT.has(n))return tT.get(n);let r=Mw.test(e),i=kw(r?rT:nT,e);if(!i)throw new Gw({param:e});if(i.name&&lT(i.name))throw new Kw({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=oT(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(aT(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(iT.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!sT(c))throw new Uw({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new qw({param:e,type:t?.type,modifier:i.modifier});if(Vw.has(i.modifier)&&!uT(c,!!i.array))throw new Jw({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return tT.set(n,u),u}function oT(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?oT(o,[...t,n.trim()]):oT(o,t,`${n}${i}`,r);case`(`:return oT(o,t,`${n}${i}`,r+1);case`)`:return oT(o,t,`${n}${i}`,r-1);default:return oT(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new $w({current:n,depth:r});return t.push(n.trim()),t}function sT(e){return e===`address`||e===`bool`||e===`function`||e===`string`||Aw.test(e)||jw.test(e)}let cT=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function lT(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||Aw.test(e)||jw.test(e)||cT.test(e)}function uT(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function dT(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Rw(n))continue;let i=zw(n);if(!i)throw new Xw({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=aT(t,{type:`struct`});o.push(n)}if(!o.length)throw new Zw({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=pT(a,t)}return r}let fT=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function pT(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Mw.test(i.type))r.push(i);else{let e=kw(fT,i.type);if(!e?.type)throw new Yw({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Qw({type:o});r.push({...i,type:`tuple${a??``}`,components:pT(t[o],t,new Set([...n,o]))})}else if(sT(o))r.push(i);else throw new Hw({type:o})}}return r}function mT(e){let t=[];if(typeof e==`string`){let n=oT(e),r=n.length;for(let e=0;e<r;e++)t.push(aT(n[e],{modifiers:Bw}))}else{let n=dT(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(Rw(r))continue;let a=oT(r),o=a.length;for(let e=0;e<o;e++)t.push(aT(a[e],{modifiers:Bw,structs:n}))}}if(t.length===0)throw new Ww({params:e});return t}var hT,gT=o((()=>{hT=`0.1.1`}));function _T(){return hT}var vT=o((()=>{gT()}));function yT(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?yT(e.cause,t):t?null:e}var V,bT=o((()=>{vT(),V=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return yT(this,e)}},Object.defineProperty(V,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${_T()}`}}),V.setStaticOptions(V.defaultStaticOptions)}));function xT(e,t){if(xE(e)>t)throw new PE({givenSize:xE(e),maxSize:t})}function ST(e,t){if(typeof t==`number`&&t>0&&t>xE(e)-1)throw new FE({offset:t,position:`start`,size:xE(e)})}function CT(e,t,n){if(typeof t==`number`&&typeof n==`number`&&xE(e)!==n-t)throw new FE({offset:n,position:`end`,size:xE(e)})}function wT(e){if(e>=DT.zero&&e<=DT.nine)return e-DT.zero;if(e>=DT.A&&e<=DT.F)return e-(DT.A-10);if(e>=DT.a&&e<=DT.f)return e-(DT.a-10)}function TT(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new IE({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function ET(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var DT,OT=o((()=>{LE(),DT={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function kT(e,t){if(YT(e)>t)throw new cE({givenSize:YT(e),maxSize:t})}function AT(e,t){if(typeof t==`number`&&t>0&&t>YT(e)-1)throw new lE({offset:t,position:`start`,size:YT(e)})}function jT(e,t,n){if(typeof t==`number`&&typeof n==`number`&&YT(e)!==n-t)throw new lE({offset:n,position:`end`,size:YT(e)})}function MT(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new uE({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function NT(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var PT=o((()=>{dE()}));function FT(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>FT(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${FT(r)}`),t},[]).join(`,`)}}`}function IT(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(RT)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function LT(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+RT:n,n)}var RT,zT=o((()=>{RT=`#__bigint`}));function BT(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new aE(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new oE(e)}function VT(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function HT(e){return e instanceof Uint8Array?WT(e):Array.isArray(e)?WT(new Uint8Array(e)):e}function UT(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(kT(n,t.size),KT(n,t.size)):n}function WT(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=rE[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(kT(r,t.size),qT(r,t.size)):r}function H(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new iE({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?KT(s,r):s}function GT(e,t={}){return WT(nE.encode(e),t)}function KT(e,t){return MT(e,{dir:`left`,size:t})}function qT(e,t){return MT(e,{dir:`right`,size:t})}function JT(e){return WT(bE(e))}function U(e,t,n,r={}){let{strict:i}=r;AT(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&jT(a,t,n),a}function YT(e){return Math.ceil((e.length-2)/2)}function XT(e){return NT(e,{dir:`left`})}function ZT(e,t={}){let{signed:n}=t;t.size&&kT(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function QT(e,t={}){return gE(e,t)}function $T(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:ZT(e,t))}function eE(e,t={}){let{size:n}=t,r=gE(e);return n&&(xT(r,n),r=OE(r)),new TextDecoder().decode(r)}function tE(e,t={}){let{strict:n=!1}=t;try{return BT(e,{strict:n}),!0}catch{return!1}}var nE,rE,iE,aE,oE,sE,cE,lE,uE,dE=o((()=>{LE(),bT(),OT(),PT(),zT(),nE=new TextEncoder,rE=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),iE=class extends V{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},aE=class extends V{constructor(e){super(`Value \\`${typeof e==`object`?LT(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},oE=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},sE=class extends V{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},cE=class extends V{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},lE=class extends V{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},uE=class extends V{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function fE(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new NE(e)}function pE(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function mE(e){return e instanceof Uint8Array?e:typeof e==`string`?gE(e):hE(e)}function hE(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function gE(e,t={}){let{size:n}=t,r=e;n&&(kT(e,n),r=qT(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=wT(i.charCodeAt(t++)),r=wT(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new V(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function _E(e,t={}){let{size:n}=t,r=jE.encode(e);return typeof n==`number`?(xT(r,n),yE(r,n)):r}function vE(e,t){return rr(e,t)}function yE(e,t){return TT(e,{dir:`right`,size:t})}function bE(e){return crypto.getRandomValues(new Uint8Array(e))}function xE(e){return e.length}function SE(e,t,n,r={}){let{strict:i}=r;ST(e,t);let a=e.slice(t,n);return i&&CT(a,t,n),a}function CE(e,t={}){let{size:n}=t;return n!==void 0&&xT(e,n),ZT(WT(e,t),t)}function wE(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(xT(r,n),r=DE(r)),r.length>1||r[0]>1)throw new ME(r);return!!r[0]}function TE(e,t={}){let{size:n}=t;return n!==void 0&&xT(e,n),$T(WT(e,t),t)}function EE(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(xT(r,n),r=OE(r)),AE.decode(r)}function DE(e){return ET(e,{dir:`left`})}function OE(e){return ET(e,{dir:`right`})}function kE(e){try{return fE(e),!0}catch{return!1}}var AE,jE,ME,NE,PE,FE,IE,LE=o((()=>{xr(),bT(),dE(),OT(),PT(),zT(),AE=new TextDecoder,jE=new TextEncoder,ME=class extends V{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},NE=class extends V{constructor(e){super(`Value \\`${typeof e==`object`?LT(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},PE=class extends V{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},FE=class extends V{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},IE=class extends V{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));At(),Dn(),LE(),dE();function RE(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(mE(e));return n===`Bytes`?r:WT(r)}function zE(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=kt(Hn,mE(e),mE(t));return r===`Bytes`?i:WT(i)}function BE(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(mE(e));return n===`Bytes`?r:WT(r)}function VE(e){return tE(e)&&YT(e)===32}let HE={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;LE(),bT(),dE(),zT();function UE(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new XE({prefix:r,cause:new QE});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new XE({prefix:r,cause:new ZE});return}throw new YE({publicKey:e})}function WE(e){let t=(()=>{if(tE(e))return KE(e);if(kE(e))return GE(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return UE(t),t}function GE(e){return KE(WT(e))}function KE(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new $E({publicKey:e});return e.length===130?{prefix:4,x:BigInt(U(e,0,32)),y:BigInt(U(e,32,64))}:e.length===132?{prefix:Number(U(e,0,1)),x:BigInt(U(e,1,33)),y:BigInt(U(e,33,65))}:{prefix:Number(U(e,0,1)),x:BigInt(U(e,1,33))}}function qE(e,t={}){return gE(JE(e,t))}function JE(e,t={}){UE(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return VT(a?H(n,{size:1}):`0x`,H(r,{size:32}),typeof i==`bigint`?H(i,{size:32}):`0x`)}var YE=class extends V{constructor({publicKey:e}){super(`Value \\`${LT(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},XE=class extends V{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},ZE=class extends V{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},QE=class extends V{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},$E=class extends V{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${YT(HT(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};LE(),bT();let eD=/^0x[a-fA-F0-9]{40}$/;function tD(e,t={}){let{strict:n=!0}=t;if(!eD.test(e))throw new sD({address:e,cause:new cD});if(n){if(e.toLowerCase()===e)return;if(nD(e)!==e)throw new sD({address:e,cause:new lD})}}function nD(e){if(HE.has(e))return HE.get(e);tD(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=RE(_E(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return HE.set(e,i),i}function rD(e,t={}){let{checksum:n=!1}=t;return tD(e),n?nD(e):e}function iD(e,t={}){return rD(`0x${RE(`0x${JE(e).slice(4)}`).substring(26)}`,t)}function aD(e,t){return tD(e,{strict:!1}),tD(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function oD(e,t={}){let{strict:n=!0}=t??{};try{return tD(e,{strict:n}),!0}catch{return!1}}var sD=class extends V{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},cD=class extends V{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},lD=class extends V{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};bT();function uD(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new V(`Unable to normalize signature.`);return i}function dD(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return oD(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>dD(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>dD(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function fD(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return fD(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&oD(n[r],{strict:!1}))return o}}bT(),dE();function pD(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=tE(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?mD(e)===U(t,0,4):e.type===`event`?gD(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new vD({name:t});if(o.length===1)return{...o[0],...i?{hash:gD(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:gD(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?dD(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=fD(e.inputs,s.inputs,r);if(t)throw new _D({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new vD({name:t});return{...c,...i?{hash:gD(c)}:{}}}function mD(...e){return U(gD((()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})()),0,4)}function hD(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})();return uD(typeof t==`string`?t:Iw(t))}function gD(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:RE(GT(hD(t)))}var _D=class extends V{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${uD(Iw(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${uD(Iw(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},vD=class extends V{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let yD=/^(.*)\\[([0-9]*)\\]$/,bD=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,xD=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let SD=2n**256n-1n;LE(),bT(),dE();function CD(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=VD(t.type);if(a){let[n,o]=a;return TD(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return kD(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return wD(e,{checksum:r});if(t.type===`bool`)return ED(e);if(t.type.startsWith(`bytes`))return DD(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return OD(e,t);if(t.type===`string`)return AD(e,{staticPosition:i});throw new iO(t.type)}function wD(e,t={}){let{checksum:n=!1}=t;return[(e=>n?nD(e):e)(WT(SE(e.readBytes(32),-20))),32]}function TD(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+TE(e.readBytes(32)),i=n+32;e.setPosition(n);let o=TE(e.readBytes(32)),s=HD(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=CD(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(HD(t)){let n=a+TE(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=CD(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=CD(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function ED(e){return[wE(e.readBytes(32),{size:32}),32]}function DD(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=TE(e.readBytes(32));e.setPosition(n+t);let r=TE(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[WT(i),32]}return[WT(e.readBytes(Number.parseInt(i,10),32)),32]}function OD(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?CE(i,{signed:n}):TE(i,{signed:n}),32]}function kD(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(HD(t)){let n=i+TE(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=CD(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=CD(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function AD(e,{staticPosition:t}){let n=t+TE(e.readBytes(32));e.setPosition(n);let r=TE(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=EE(DE(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function jD({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(MD({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function MD({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=VD(r.type);if(i){let[t,a]=i;return FD(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return BD(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return PD(n,{checksum:e});if(r.type===`bool`)return LD(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=xD.exec(r.type)??[];return RD(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return ID(n,{type:r.type});if(r.type===`string`)return zD(n);throw new iO(r.type)}function ND(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=YT(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(H(t+i,{size:32})),r.push(s),i+=YT(s)):n.push(s)}return VT(...n,...r)}function PD(e,t){let{checksum:n=!1}=t;return tD(e,{strict:n}),{dynamic:!1,encoded:KT(e.toLowerCase())}}function FD(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new rO(e);if(!a&&e.length!==r)throw new eO({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=MD({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ND(s);if(a){let t=H(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?VT(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:VT(...s.map(({encoded:e})=>e))}}function ID(e,{type:t}){let[,n]=t.split(`bytes`),r=YT(e);if(!n){let t=e;return r%32!=0&&(t=qT(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:VT(KT(H(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new tO({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:qT(e)}}function LD(e){if(typeof e!=`boolean`)throw new V(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:KT(UT(e))}}function RD(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new iE({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:H(e,{size:32,signed:t})}}function zD(e){let t=GT(e),n=Math.ceil(YT(t)/32),r=[];for(let e=0;e<n;e++)r.push(qT(U(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:VT(qT(H(YT(t),{size:32})),...r)}}function BD(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=MD({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ND(a):VT(...a.map(({encoded:e})=>e))}}function VD(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function HD(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(HD);let n=VD(e.type);return!!(n&&HD({...e,type:n[1]}))}bT();let UD={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new qD({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new KD({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new GD({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new GD({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function WD(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(UD);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var GD=class extends V{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},KD=class extends V{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},qD=class extends V{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};LE(),bT(),dE();function JD(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?gE(t):t,o=WD(a);if(xE(a)===0&&e.length>0)throw new $D;if(xE(a)&&xE(a)<32)throw new QD({data:typeof t==`string`?t:WT(t),parameters:e,size:xE(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=CD(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function YD(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new nO({expectedLength:e.length,givenLength:t.length});let i=ND(jD({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function XD(e,t){if(e.length!==t.length)throw new nO({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(XD.encode(i,a))}return VT(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return tD(e),KT(e.toLowerCase(),r?32:0)}if(e===`string`)return GT(n);if(e===`bytes`)return n;if(e===`bool`)return KT(UT(n),r?32:1);let i=e.match(xD);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return H(n,{size:r?32:o,signed:t===`int`})}let a=e.match(bD);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new tO({expectedSize:Number.parseInt(t,10),value:n});return qT(n,r?32:0)}let o=e.match(yD);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:VT(...i)}throw new iO(e)}e.encode=t})(XD||={});function ZD(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?mT(e):e}var QD=class extends V{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${Fw(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},$D=class extends V{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},eO=class extends V{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},tO=class extends V{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${YT(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},nO=class extends V{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},rO=class extends V{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},iO=class extends V{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};bT(),dE();function aO(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&tD(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>VE(e)?e:XT(e))})}return t}function oO(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(YT(r[e])!==32)throw new sO({storageKey:r[e]});n&&tD(n,{strict:!1}),t.push([n,r])}return t}var sO=class extends V{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${YT(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};LE(),bT(),dE();function cO(e){return lO(e,`Hex`)}function lO(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return uO(WD((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new sE(e);return gE(e)}return e})(),{recursiveReadLimit:1/0}),n)}function uO(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?WT(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=dO(e,n,128),i=e.readBytes(r);return t===`Hex`?WT(i):i}return fO(e,dO(e,n,192),t)}function dO(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new V(`Invalid RLP prefix`)}function fO(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(uO(e,n));return i}function pO(e,t){let{as:n}=t,r=hO(e),i=WD(new Uint8Array(r.length));return r.encode(i),n===`Hex`?WT(i.bytes):i.bytes}function mO(e,t={}){let{as:n=`Hex`}=t;return pO(e,{as:n})}function hO(e){return Array.isArray(e)?gO(e.map(e=>hO(e))):_O(e)}function gO(e){let t=e.reduce((e,t)=>e+t.length,0),n=vO(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function _O(e){let t=typeof e==`string`?gE(e):e,n=vO(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function vO(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new V(`Length is too large.`)}bT(),dE(),zT();function yO(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new NO({signature:e});if(e.r<0n||e.r>SD)throw new PO({value:e.r});if(e.s<0n||e.s>SD)throw new FO({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new IO({value:e.yParity})}function bO(e){return xO(WT(e))}function xO(e){if(e.length!==130&&e.length!==132)throw new MO({signature:e});let t=BigInt(U(e,0,32)),n=BigInt(U(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return AO(t)}catch{throw new IO({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function SO(e){if(e.r!==void 0&&e.s!==void 0)return CO(e)}function CO(e){let t=typeof e==`string`?xO(e):e instanceof Uint8Array?bO(e):typeof e.r==`string`?TO(e):e.v?wO(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return yO(t),t}function wO(e){return{r:e.r,s:e.s,yParity:AO(e.v)}}function TO(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=AO(t)),typeof n!=`number`)throw new IO({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function EO(e){let[t,n,r]=e;return CO({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function DO(e){yO(e);let t=e.r,n=e.s;return VT(H(t,{size:32}),H(n,{size:32}),typeof e.yParity==`number`?H(jO(e.yParity),{size:1}):`0x`)}function OO(e){let{r:t,s:n,yParity:r}=e;return{r:H(t,{size:32}),s:H(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function kO(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:XT(H(t)),n===0n?`0x`:XT(H(n))]}function AO(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new LO({value:e})}function jO(e){if(e===0)return 27;if(e===1)return 28;throw new IO({value:e})}var MO=class extends V{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${YT(HT(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},NO=class extends V{constructor({signature:e}){super(`Signature \\`${LT(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},PO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},FO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},IO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},LO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};dE();function RO(e,t={}){return typeof e.chainId==`string`?zO(e):{...e,...t.signature}}function zO(e){let{address:t,chainId:n,nonce:r}=e,i=SO(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function BO(e){return e.map(zO)}function VO(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:H(n),nonce:H(r),...OO(i)}}function HO(e){return e.map(VO)}LE();let UO=new TextEncoder,WO=new TextDecoder,GO=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),KO={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function qO(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=GO[r>>18],i[t+1]=GO[r>>12&63],i[t+2]=GO[r>>6&63],i[t+3]=GO[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=WO.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function JO(e,t={}){return qO(_E(e),t)}function YO(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);UO.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(KO[r[e]]<<18)+(KO[r[e+1]]<<12)+(KO[r[e+2]]<<6)+KO[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function XO(e){return EE(YO(e))}let ZO={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},QO={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function $O(e,t={}){if(!e)return null;let n=SO(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=BO(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=QO[e.type]??e.type),n&&(r.v=jO(n.yParity)),r}function ek(e){return{address:e.address,amount:H(e.amount),index:H(e.index),validatorIndex:H(e.validatorIndex)}}var tk=o((()=>{dE()}));function nk(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:H(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:H(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:H(e.gasLimit)},...typeof e.number==`bigint`&&{number:H(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:H(e.prevRandao)},...typeof e.time==`bigint`&&{time:H(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(ek)}}}var rk=o((()=>{dE(),tk()}));lc(),LE(),dE();function ik(e){return iD(ak(e))}function ak(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return WE(new Js.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(HT(t).substring(2)))}function ok(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?aD(t,ik({payload:r,signature:a})):Js.verify(a,mE(r),qE(i),...n?[{prehash:!0,lowS:!0}]:[])}LE();function sk(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Pl.verify(i,n instanceof Uint8Array?n:gE(n),JE(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}dE();function ck(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=HO(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=H(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=H(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=H(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=H(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=H(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=H(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=H(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=H(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=ZO[e.type]||e.type),e.value!==void 0&&(t.value=H(e.value)),t}bT();let lk={wei:0,gwei:9,szabo:12,finney:15,ether:18};function uk(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function dk(e,t=`wei`){return uk(e,lk.gwei-lk[t])}bT();var fk=class extends V{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${dk(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},pk=class extends V{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},mk=class extends V{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},hk=class extends V{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${dk(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${dk(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};LE(),bT(),dE();function gk(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=gE(s);if(u.length<37||a!==void 0&&!vE(u.slice(0,32),BE(GT(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||WT(YO(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:sk({hash:!0,payload:pE(u,BE(_E(c),{as:`Bytes`})),publicKey:i,signature:o})}function _k(e){return gk(e)}function vk(e){let t=XO(e);return JSON.parse(t)}function yk(e){return JO(FT(e),{pad:!1,url:!0})}Object.freeze({status:`aborted`});function W(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var bk=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},xk=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};let Sk={};function Ck(e){return e&&Object.assign(Sk,e),Sk}function wk(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Tk(e,t){return typeof t==`bigint`?t.toString():t}function Ek(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Dk(e){return e==null}function Ok(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let kk=Symbol(`evaluating`);function Ak(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==kk)return r===void 0&&(r=kk,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let jk=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Mk(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Nk(e){if(Mk(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Mk(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Pk=new Set([`string`,`number`,`symbol`]);function Fk(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Ik(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Lk(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Rk(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function zk(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Bk(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Vk(e){return typeof e==`string`?e:e?.message}function Hk(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Vk(e.inst?._zod.def?.error?.(e))??Vk(t?.error?.(e))??Vk(n.customError?.(e))??Vk(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Uk(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Wk(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let Gk=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Tk,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Kk=W(`$ZodError`,Gk),qk=W(`$ZodError`,Gk,{Parent:Error}),Jk=(e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new bk;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Hk(e,a,Ck())));throw jk(t,i?.callee),t}return o.value})(qk),Yk=(e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Hk(e,a,Ck())));throw jk(t,i?.callee),t}return o.value})(qk),Xk=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new bk;return a.issues.length?{success:!1,error:new(e??Kk)(a.issues.map(e=>Hk(e,i,Ck())))}:{success:!0,data:a.value}})(qk),Zk=(e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Hk(e,i,Ck())))}:{success:!0,data:a.value}})(qk),Qk=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},$k=/^-?\\d+(?:\\.\\d+)?$/,eA=/^(?:true|false)$/i,tA=W(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),nA=W(`$ZodCheckMaxLength`,(e,t)=>{var n;tA.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Dk(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Uk(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),rA=W(`$ZodCheckMinLength`,(e,t)=>{var n;tA.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Dk(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Uk(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),iA=W(`$ZodCheckStringFormat`,(e,t)=>{var n,r;tA.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),aA=W(`$ZodCheckRegex`,(e,t)=>{iA.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),oA={major:4,minor:3,patch:6},sA=W(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=oA;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=zk(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new bk;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=zk(e,t))});else{if(e.issues.length===t)continue;r||=zk(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(zk(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new bk;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new bk;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ak(e,`~standard`,()=>({validate:t=>{try{let n=Xk(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Zk(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),cA=W(`$ZodString`,(e,t)=>{sA.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Qk(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),lA=W(`$ZodNumber`,(e,t)=>{sA.init(e,t),e._zod.pattern=e._zod.bag.pattern??$k,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),uA=W(`$ZodBoolean`,(e,t)=>{sA.init(e,t),e._zod.pattern=eA,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),dA=W(`$ZodUnknown`,(e,t)=>{sA.init(e,t),e._zod.parse=e=>e});function fA(e,t,n){e.issues.length&&t.issues.push(...Bk(n,e.issues)),t.value[n]=e.value}let pA=W(`$ZodArray`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>fA(t,n,e))):fA(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function mA(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...Bk(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function hA(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Rk(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function gA(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>mA(e,n,i,t,u))):mA(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let _A=W(`$ZodObject`,(e,t)=>{if(sA.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Ek(()=>hA(t));Ak(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Mk,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>mA(n,t,e,s,r))):mA(i,t,e,s,r)}return i?gA(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function vA(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!zk(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Hk(e,r,Ck())))}),t)}let yA=W(`$ZodUnion`,(e,t)=>{sA.init(e,t),Ak(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ak(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ak(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ak(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Ok(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>vA(t,i,e,a)):vA(s,i,e,a)}}),bA=W(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,yA.init(e,t);let n=e._zod.parse;Ak(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Ek(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Mk(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),xA=W(`$ZodRecord`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Nk(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...Bk(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...Bk(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&$k.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Hk(e,r,Ck())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Bk(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Bk(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),SA=W(`$ZodEnum`,(e,t)=>{sA.init(e,t);let n=wk(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Pk.has(typeof e)).map(e=>typeof e==`string`?Fk(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),CA=W(`$ZodLiteral`,(e,t)=>{if(sA.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Fk(e):e?Fk(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),wA=W(`$ZodTransform`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new xk(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new bk;return n.value=i,n}});function TA(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let EA=W(`$ZodOptional`,(e,t)=>{sA.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ak(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ak(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ok(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>TA(t,e.value)):TA(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),DA=W(`$ZodPipe`,(e,t)=>{sA.init(e,t),Ak(e._zod,`values`,()=>t.in._zod.values),Ak(e._zod,`optin`,()=>t.in._zod.optin),Ak(e._zod,`optout`,()=>t.out._zod.optout),Ak(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>OA(e,t.in,n)):OA(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>OA(e,t.out,n)):OA(r,t.out,n)}});function OA(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let kA=W(`$ZodCustom`,(e,t)=>{tA.init(e,t),sA.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>AA(t,n,r,e));AA(i,n,r,e)}});function AA(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Wk(e))}}function jA(e,t){return new e({type:`string`,...Lk(t)})}function MA(e,t){return new e({type:`number`,checks:[],...Lk(t)})}function NA(e,t){return new e({type:`boolean`,...Lk(t)})}function PA(e){return new e({type:`unknown`})}function FA(e,t){return new nA({check:`max_length`,...Lk(t),maximum:e})}function IA(e,t){return new rA({check:`min_length`,...Lk(t),minimum:e})}function LA(e,t){return new aA({check:`string_format`,format:`regex`,...Lk(t),pattern:e})}function RA(e,t,n){let r=Lk(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function zA(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Lk(n)})}let BA=W(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);sA.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Jk(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Xk(e,t,n),e.parseAsync=async(t,n)=>Yk(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Zk(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Ik(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),VA=W(`ZodMiniString`,(e,t)=>{cA.init(e,t),BA.init(e,t)});function HA(e){return jA(VA,e)}let UA=W(`ZodMiniNumber`,(e,t)=>{lA.init(e,t),BA.init(e,t)});function WA(e){return MA(UA,e)}let GA=W(`ZodMiniBoolean`,(e,t)=>{uA.init(e,t),BA.init(e,t)});function KA(e){return NA(GA,e)}let qA=W(`ZodMiniUnknown`,(e,t)=>{dA.init(e,t),BA.init(e,t)});function JA(){return PA(qA)}let YA=W(`ZodMiniArray`,(e,t)=>{pA.init(e,t),BA.init(e,t)});function XA(e,t){return new YA({type:`array`,element:e,...Lk(t)})}let ZA=W(`ZodMiniObject`,(e,t)=>{_A.init(e,t),BA.init(e,t),Ak(e,`shape`,()=>t.shape)});function QA(e,t){return new ZA({type:`object`,shape:e??{},...Lk(t)})}let $A=W(`ZodMiniUnion`,(e,t)=>{yA.init(e,t),BA.init(e,t)});function ej(e,t){return new $A({type:`union`,options:e,...Lk(t)})}let tj=W(`ZodMiniDiscriminatedUnion`,(e,t)=>{bA.init(e,t),BA.init(e,t)});function nj(e,t,n){return new tj({type:`union`,options:t,discriminator:e,...Lk(n)})}let rj=W(`ZodMiniRecord`,(e,t)=>{xA.init(e,t),BA.init(e,t)});function ij(e,t,n){return new rj({type:`record`,keyType:e,valueType:t,...Lk(n)})}let aj=W(`ZodMiniEnum`,(e,t)=>{SA.init(e,t),BA.init(e,t),e.options=Object.values(t.entries)});function oj(e,t){return new aj({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Lk(t)})}let sj=W(`ZodMiniLiteral`,(e,t)=>{CA.init(e,t),BA.init(e,t)});function cj(e,t){return new sj({type:`literal`,values:Array.isArray(e)?e:[e],...Lk(t)})}let lj=W(`ZodMiniTransform`,(e,t)=>{wA.init(e,t),BA.init(e,t)});function uj(e){return new lj({type:`transform`,transform:e})}let dj=W(`ZodMiniOptional`,(e,t)=>{EA.init(e,t),BA.init(e,t)});function G(e){return new dj({type:`optional`,innerType:e})}let fj=W(`ZodMiniPipe`,(e,t)=>{DA.init(e,t),BA.init(e,t)});function pj(e,t){return new fj({type:`pipe`,in:e,out:t})}let mj=W(`ZodMiniCustom`,(e,t)=>{kA.init(e,t),BA.init(e,t)});function hj(e,t){return RA(mj,e??(()=>!0),t)}function gj(e,t={}){return zA(mj,e,t)}function _j(){return HA().check(LA(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function vj(){return HA().check(LA(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function yj(){return HA().check(LA(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function bj(){return HA().check(LA(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let xj=QA({description:G(HA()),digest:G(HA().check(LA(/^sha-256=/,`Invalid digest format`))),expires:G(vj()),id:HA(),intent:HA(),method:HA(),meta:G(ij(HA(),HA())),opaque:G(HA()),realm:HA(),request:ij(HA(),JA())});function Sj(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=e.opaque??(i===void 0?void 0:yk(i)),f=l?Fj({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return xj.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 Cj(e,t){let n=wj(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=Tj(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return Sj({...a,request:vk(r),...i&&{opaque:i}},t)}function wj(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!Oj(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function Tj(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=Ej(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function Ej(e,t){if(e[t]===`\"`)return Dj(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function Dj(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function Oj(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function kj(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return Cj(n,t)}function Aj(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return kj(e.headers,t)}function jj(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return Mj(e.headers,t)}function Mj(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return Nj(n,t)}function Nj(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return Cj(e.slice(r,a).replace(/,\\s*$/,``),t)})}function Pj(e){return[e.realm,e.method,e.intent,yk(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?yk(e.meta):``)].join(`|`)}function Fj(e,t){let n=Pj(e);return qO(zE(_E(t.secretKey),_E(n),{as:`Bytes`}),{url:!0,pad:!1})}function Ij(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=Hj(n)}return t}function Lj(e,t){let n=Ij(e),r=Jj(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[Hj(e)]??1,index:t}));return{definition:r,entries:i,header:zj(i),keys:n}}function Rj(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>Kj(e,t))}function zj(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${Qj(n)}`}).join(`, `)}function Bj(e,t){return e.map((e,n)=>{let r=Uj(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function Vj(e,t,n){let r=new Map;for(let e of t){let t=Hj(e);r.has(t)||r.set(t,e)}let i=Bj(e.filter(e=>r.has(Hj(e))),n)[0];if(i)return{challenge:i,method:r.get(Hj(i))}}function Hj(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function Uj(e,t){let n;for(let r of t){if(!Wj(e,r))continue;let t={...r,specificity:Gj(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function Wj(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function Gj(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function Kj(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);$j(r,`method`),$j(i,`intent`);let a=1;for(let t of qj(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=Xj(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function qj(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function Jj(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>Hj(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=Yj(t,`payment preference \"${e}\"`)}return a}function Yj(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return Zj(e,t)}function Xj(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return Zj(Number(e),t)}function Zj(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function Qj(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function $j(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let eM=Symbol.for(`mppx.fetch.wrapper`),tM;function nM(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??Lj(i),s=cM(r),c=async(e,t)=>{let r=sM(e,t?.headers),c=r.has(`Accept-Payment`),l=dM(r,o),u=oM(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=jj(d),g=Vj(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g;_.expires&&Dw(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>uM(_,v,e??f)}):void 0)??await uM(_,v,f);return lM(y),s(u.input,{...m,headers:aM(u.headers,y)})};return c[eM]=s,c}function rM(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);tM||=globalThis.fetch,globalThis.fetch=nM({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(mM()?`same-origin`:`always`),fetch:globalThis.fetch})}function iM(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function aM(e,t){let n=iM(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function oM(e,t,n,r,i,a){let o=!!r&&!i&&fM(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function sM(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function cM(e){let t=e;for(;t[eM];)t=t[eM];return t}function lM(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function uM(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function dM(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:Rj(n),header:n}}catch{return t}}function fM(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=hM(e);return t===`same-origin`?mM()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>pM(n,e))}function pM(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function mM(){return globalThis.location!==void 0}function hM(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,mM()?globalThis.location.href:void 0)}var gM=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},_M=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function vM(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new gM;try{let e=XO(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=yM(r);return{challenge:xj.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:vk(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new _M}}function yM(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!bM(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:yk(e)}}function bM(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function xM(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:yk(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:yk(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${JO(JSON.stringify(o),{pad:!1,url:!0})}`}function SM(e){return e}function CM(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}var wM,TM=o((()=>{wM=`1.2.3`})),EM,DM=o((()=>{TM(),EM=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@${wM}`].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 OM(e,t){return e.exec(t)?.groups}var kM,AM,jM,MM=o((()=>{kM=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,AM=/^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)?$/,jM=/^\\(.+?\\).*?$/}));function NM(e){let t=e.type;if(PM.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+=NM(i),r<n-1&&(t+=`, `)}let r=OM(PM,e.type);return t+=`)${r?.array||``}`,NM({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var PM,FM=o((()=>{MM(),PM=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function IM(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=NM(i),r!==n-1&&(t+=`, `)}return t}var LM=o((()=>{FM()}));function RM(e){return e.type===`function`?`function ${e.name}(${IM(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${IM(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${IM(e.inputs)})`:e.type===`error`?`error ${e.name}(${IM(e.inputs)})`:e.type===`constructor`?`constructor(${IM(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var zM=o((()=>{LM()}));function BM(e){return $M.test(e)}function VM(e){return OM($M,e)}function HM(e){return eN.test(e)}function UM(e){return OM(eN,e)}function WM(e){return tN.test(e)}function GM(e){return OM(tN,e)}function KM(e){return nN.test(e)}function qM(e){return OM(nN,e)}function JM(e){return rN.test(e)}function YM(e){return OM(rN,e)}function XM(e){return iN.test(e)}function ZM(e){return OM(iN,e)}function QM(e){return aN.test(e)}var $M,eN,tN,nN,rN,iN,aN,oN,sN,cN=o((()=>{MM(),$M=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,eN=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,tN=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,nN=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,rN=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,iN=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,aN=/^receive\\(\\) external payable$/,oN=new Set([`indexed`]),sN=new Set([`calldata`,`memory`,`storage`])})),lN,uN,dN=o((()=>{DM(),lN=class extends EM{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`})}},uN=class extends EM{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`})}}})),fN,pN,mN,hN,gN,_N=o((()=>{DM(),fN=class extends EM{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},pN=class extends EM{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`})}},mN=class extends EM{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`})}},hN=class extends EM{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`})}},gN=class extends EM{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`})}}})),vN,yN,bN,xN=o((()=>{DM(),vN=class extends EM{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},yN=class extends EM{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},bN=class extends EM{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`})}}})),SN,CN=o((()=>{DM(),SN=class extends EM{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`})}}})),wN,TN=o((()=>{DM(),wN=class extends EM{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 EN(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 DN,ON=o((()=>{DN=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 kN(e,t={}){if(WM(e))return AN(e,t);if(HM(e))return jN(e,t);if(BM(e))return MN(e,t);if(JM(e))return NN(e,t);if(XM(e))return PN(e);if(QM(e))return{type:`receive`,stateMutability:`payable`};throw new yN({signature:e})}function AN(e,t={}){let n=GM(e);if(!n)throw new vN({signature:e,type:`function`});let r=IN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(FN(r[e],{modifiers:sN,structs:t,type:`function`}));let o=[];if(n.returns){let e=IN(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(FN(e[n],{modifiers:sN,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function jN(e,t={}){let n=UM(e);if(!n)throw new vN({signature:e,type:`event`});let r=IN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(FN(r[e],{modifiers:oN,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function MN(e,t={}){let n=VM(e);if(!n)throw new vN({signature:e,type:`error`});let r=IN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(FN(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function NN(e,t={}){let n=YM(e);if(!n)throw new vN({signature:e,type:`constructor`});let r=IN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(FN(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function PN(e){let t=ZM(e);if(!t)throw new vN({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function FN(e,t){let n=EN(e,t?.type,t?.structs);if(DN.has(n))return DN.get(n);let r=jM.test(e),i=OM(r?VN:BN,e);if(!i)throw new fN({param:e});if(i.name&&RN(i.name))throw new pN({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=IN(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(FN(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(HN.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!LN(c))throw new uN({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new mN({param:e,type:t?.type,modifier:i.modifier});if(sN.has(i.modifier)&&!zN(c,!!i.array))throw new hN({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return DN.set(n,u),u}function IN(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?IN(o,[...t,n.trim()]):IN(o,t,`${n}${i}`,r);case`(`:return IN(o,t,`${n}${i}`,r+1);case`)`:return IN(o,t,`${n}${i}`,r-1);default:return IN(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new wN({current:n,depth:r});return t.push(n.trim()),t}function LN(e){return e===`address`||e===`bool`||e===`function`||e===`string`||kM.test(e)||AM.test(e)}function RN(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||kM.test(e)||AM.test(e)||UN.test(e)}function zN(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var BN,VN,HN,UN,WN=o((()=>{MM(),dN(),_N(),xN(),TN(),ON(),cN(),BN=/^(?<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$_]*))?$/,VN=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,HN=/^u?int$/,UN=/^(?: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 GN(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!KM(n))continue;let i=qM(n);if(!i)throw new vN({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=FN(t,{type:`struct`});o.push(n)}if(!o.length)throw new bN({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]=KN(a,t)}return r}function KN(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(jM.test(i.type))r.push(i);else{let e=OM(qN,i.type);if(!e?.type)throw new gN({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new SN({type:o});r.push({...i,type:`tuple${a??``}`,components:KN(t[o],t,new Set([...n,o]))})}else if(LN(o))r.push(i);else throw new lN({type:o})}}return r}var qN,JN=o((()=>{MM(),dN(),_N(),xN(),CN(),cN(),WN(),qN=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function YN(e){let t=GN(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];KM(r)||n.push(kN(r,t))}return n}var XN=o((()=>{cN(),JN(),WN()})),ZN=o((()=>{DM(),zM(),FM(),LM(),XN(),dN(),cN(),JN(),WN(),_N(),xN(),TN(),CN()}));function QN(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 $N(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new MP(e.type);return`${e.name}(${eP(e.inputs,{includeName:t})})`}function eP(e,{includeName:t=!1}={}){return e?e.map(e=>tP(e,{includeName:t})).join(t?`, `:`,`):``}function tP(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${eP(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var nP=o((()=>{NP()}));function K(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var rP=o((()=>{}));function iP(e){return K(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var aP=o((()=>{rP()})),oP,sP=o((()=>{oP=`2.47.6`}));function cP(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?cP(e.cause,t):t?null:e}var lP,q,J=o((()=>{sP(),lP={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${oP}`},q=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=lP.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...lP.version?[`Version: ${lP.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=oP}walk(e){return cP(this,e)}}})),uP,dP,fP,pP,mP,hP,gP,_P,vP,yP,bP,xP,SP,CP,wP,TP,EP,DP,OP,kP,AP,jP,MP,NP=o((()=>{nP(),aP(),J(),uP=class extends q{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},dP=class extends q{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},fP=class extends q{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${eP(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}},pP=class extends q{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},mP=class extends q{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},hP=class extends q{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${iP(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},gP=class extends q{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},_P=class extends q{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},vP=class extends q{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},yP=class extends q{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},bP=class extends q{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},xP=class extends q{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},SP=class extends q{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},CP=class extends q{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},wP=class extends q{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},TP=class extends q{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${$N(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${$N(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},EP=class extends q{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},DP=class extends q{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${eP(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}},OP=class extends q{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${$N(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},kP=class extends q{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},AP=class extends q{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},jP=class extends q{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},MP=class extends q{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),PP,FP,IP,LP=o((()=>{J(),PP=class extends q{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},FP=class extends q{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},IP=class extends q{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function RP(e,{dir:t,size:n=32}={}){return typeof e==`string`?zP(e,{dir:t,size:n}):BP(e,{dir:t,size:n})}function zP(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new FP({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function BP(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new FP({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 VP=o((()=>{LP()})),HP,UP,WP,GP,KP,qP=o((()=>{J(),HP=class extends q{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},UP=class extends q{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},WP=class extends q{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},GP=class extends q{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},KP=class extends q{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function JP(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 YP=o((()=>{}));function XP(e,{size:t}){if(iP(e)>t)throw new KP({givenSize:iP(e),maxSize:t})}function Y(e,t={}){let{signed:n}=t;t.size&&XP(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 ZP(e,t={}){let n=e;if(t.size&&(XP(n,{size:t.size}),n=JP(n)),JP(n)===`0x00`)return!1;if(JP(n)===`0x01`)return!0;throw new WP(n)}function QP(e,t={}){let n=Y(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new HP({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var $P=o((()=>{qP(),aP(),YP()}));function eF(e,t={}){return typeof e==`number`||typeof e==`bigint`?X(e,t):typeof e==`string`?rF(e,t):typeof e==`boolean`?tF(e,t):nF(e,t)}function tF(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(XP(n,{size:t.size}),RP(n,{size:t.size})):n}function nF(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=iF[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(XP(r,{size:t.size}),RP(r,{dir:`right`,size:t.size})):r}function X(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new HP({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?RP(s,{size:r}):s}function rF(e,t={}){return nF(aF.encode(e),t)}var iF,aF,oF=o((()=>{qP(),VP(),$P(),iF=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),aF=new TextEncoder}));function sF(e,t={}){return typeof e==`number`||typeof e==`bigint`?dF(e,t):typeof e==`boolean`?cF(e,t):K(e)?uF(e,t):fF(e,t)}function cF(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(XP(n,{size:t.size}),RP(n,{size:t.size})):n}function lF(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 uF(e,t={}){let n=e;t.size&&(XP(n,{size:t.size}),n=RP(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=lF(r.charCodeAt(t++)),i=lF(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new q(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function dF(e,t){return uF(X(e,t))}function fF(e,t={}){let n=pF.encode(e);return typeof t.size==`number`?(XP(n,{size:t.size}),RP(n,{dir:`right`,size:t.size})):n}var pF,mF,hF=o((()=>{J(),rP(),VP(),$P(),oF(),pF=new TextEncoder,mF={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function gF(e,t){let n=t||`hex`,r=Tn(K(e,{strict:!1})?sF(e):e);return n===`bytes`?r:eF(r)}var _F=o((()=>{Dn(),rP(),hF(),oF()}));function vF(e){return yF(e)}var yF,bF=o((()=>{hF(),_F(),yF=e=>gF(sF(e))}));function xF(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new q(`Unable to normalize signature.`);return i}var SF=o((()=>{J()})),CF,wF=o((()=>{ZN(),SF(),CF=e=>xF(typeof e==`string`?e:RM(e))}));function TF(e){return vF(CF(e))}var EF=o((()=>{bF(),wF()})),DF,OF=o((()=>{EF(),DF=TF})),kF,AF=o((()=>{J(),kF=class extends q{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),jF,MF=o((()=>{jF=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 NF(e,t){if(FF.has(`${e}.${t}`))return FF.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=gF(fF(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 FF.set(`${e}.${t}`,a),a}function PF(e,t){if(!LF(e,{strict:!1}))throw new kF({address:e});return NF(e,t)}var FF,IF=o((()=>{AF(),hF(),_F(),MF(),BF(),FF=new jF(8192)}));function LF(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(zF.has(r))return zF.get(r);let i=RF.test(e)?e.toLowerCase()===e?!0:n?NF(e)===e:!0:!1;return zF.set(r,i),i}var RF,zF,BF=o((()=>{MF(),IF(),RF=/^0x[a-fA-F0-9]{40}$/,zF=new jF(8192)}));function VF(e){return typeof e[0]==`string`?UF(e):HF(e)}function HF(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 UF(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var WF=o((()=>{}));function GF(e,t,n,{strict:r}={}){return K(e,{strict:!1})?YF(e,t,n,{strict:r}):JF(e,t,n,{strict:r})}function KF(e,t){if(typeof t==`number`&&t>0&&t>iP(e)-1)throw new PP({offset:t,position:`start`,size:iP(e)})}function qF(e,t,n){if(typeof t==`number`&&typeof n==`number`&&iP(e)!==n-t)throw new PP({offset:n,position:`end`,size:iP(e)})}function JF(e,t,n,{strict:r}={}){KF(e,t);let i=e.slice(t,n);return r&&qF(i,t,n),i}function YF(e,t,n,{strict:r}={}){KF(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&qF(i,t,n),i}var XF=o((()=>{LP(),rP(),aP()})),ZF,QF,$F=o((()=>{ZF=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,QF=/^(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 eI(e,t){if(e.length!==t.length)throw new gP({expectedLength:e.length,givenLength:t.length});let n=rI(tI({params:e,values:t}));return n.length===0?`0x`:n}function tI({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(nI({param:e[r],value:t[r]}));return n}function nI({param:e,value:t}){let n=dI(e.type);if(n){let[r,i]=n;return aI(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return uI(t,{param:e});if(e.type===`address`)return iI(t);if(e.type===`bool`)return sI(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=QF.exec(e.type)??[];return cI(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return oI(t,{param:e});if(e.type===`string`)return lI(t);throw new kP(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function rI(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=iP(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(X(t+i,{size:32})),r.push(s),i+=iP(s)):n.push(s)}return VF([...n,...r])}function iI(e){if(!LF(e))throw new kF({address:e});return{dynamic:!1,encoded:zP(e.toLowerCase())}}function aI(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new jP(e);if(!r&&e.length!==t)throw new mP({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=nI({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=rI(a);if(r){let t=X(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?VF([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:VF(a.map(({encoded:e})=>e))}}function oI(e,{param:t}){let[,n]=t.type.split(`bytes`),r=iP(e);if(!n){let t=e;return r%32!=0&&(t=zP(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:VF([zP(X(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new hP({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:zP(e,{dir:`right`})}}function sI(e){if(typeof e!=`boolean`)throw new q(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:zP(tF(e))}}function cI(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 HP({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:X(e,{size:32,signed:t})}}function lI(e){let t=rF(e),n=Math.ceil(iP(t)/32),r=[];for(let e=0;e<n;e++)r.push(zP(GF(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:VF([zP(X(iP(t),{size:32})),...r])}}function uI(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=nI({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?rI(r):VF(r.map(({encoded:e})=>e))}}function dI(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var fI=o((()=>{NP(),AF(),J(),qP(),BF(),WF(),VP(),aP(),XF(),oF(),$F()})),pI,mI=o((()=>{XF(),EF(),pI=e=>GF(TF(e),0,4)}));function hI(e){let{abi:t,args:n=[],name:r}=e,i=K(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?pI(e)===r:e.type===`event`?DF(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?gI(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=_I(e.inputs,o.inputs,n);if(t)throw new TP({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function gI(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return LF(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`&&gI(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=>gI(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function _I(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 _I(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`))&&LF(n[r],{strict:!1}))return o}}var vI=o((()=>{NP(),rP(),BF(),OF(),mI()}));function yI(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var bI=o((()=>{}));function xI(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=hI({abi:t,args:n,name:r});if(!e)throw new SP(r,{docsPath:SI});i=e}if(i.type!==`function`)throw new SP(void 0,{docsPath:SI});return{abi:[i],functionName:pI($N(i))}}var SI,CI=o((()=>{NP(),mI(),nP(),vI(),SI=`/docs/contract/encodeFunctionData`}));function wI(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:xI(e),i=n[0];return UF([r,(`inputs`in i&&i.inputs?eI(i.inputs,t??[]):void 0)??`0x`])}var TI=o((()=>{WF(),fI(),CI()})),EI,DI,OI,kI=o((()=>{EI={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.`},DI={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},OI={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),AI,jI,MI,NI=o((()=>{J(),AI=class extends q{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},jI=class extends q{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},MI=class extends q{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function PI(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(FI);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var FI,II=o((()=>{NI(),FI={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 MI({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new jI({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new AI({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 AI({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 LI(e,t={}){return t.size!==void 0&&XP(e,{size:t.size}),Y(nF(e,t),t)}function RI(e,t={}){let n=e;if(t.size!==void 0&&(XP(n,{size:t.size}),n=JP(n)),n.length>1||n[0]>1)throw new UP(n);return!!n[0]}function zI(e,t={}){return t.size!==void 0&&XP(e,{size:t.size}),QP(nF(e,t),t)}function BI(e,t={}){let n=e;return t.size!==void 0&&(XP(n,{size:t.size}),n=JP(n,{dir:`right`})),new TextDecoder().decode(n)}var VI=o((()=>{qP(),YP(),$P(),oF()}));function HI(e,t){let n=typeof t==`string`?uF(t):t,r=PI(n);if(iP(n)===0&&e.length>0)throw new pP;if(iP(t)&&iP(t)<32)throw new fP({data:typeof t==`string`?t:nF(t),params:e,size:iP(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=UI(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function UI(e,t,{staticPosition:n}){let r=dI(t.type);if(r){let[i,a]=r;return GI(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return YI(e,t,{staticPosition:n});if(t.type===`address`)return WI(e);if(t.type===`bool`)return KI(e);if(t.type.startsWith(`bytes`))return qI(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return JI(e,t);if(t.type===`string`)return XI(e,{staticPosition:n});throw new AP(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function WI(e){return[NF(nF(JF(e.readBytes(32),-20))),32]}function GI(e,t,{length:n,staticPosition:r}){if(!n){let n=r+zI(e.readBytes($I)),i=n+QI;e.setPosition(n);let a=zI(e.readBytes(QI)),o=ZI(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=UI(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(ZI(t)){let i=r+zI(e.readBytes($I)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=UI(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]=UI(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function KI(e){return[RI(e.readBytes(32),{size:32}),32]}function qI(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=zI(e.readBytes(32));e.setPosition(n+t);let r=zI(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[nF(i),32]}return[nF(e.readBytes(Number.parseInt(i,10),32)),32]}function JI(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?LI(i,{signed:n}):zI(i,{signed:n}),32]}function YI(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(ZI(t)){let o=n+zI(e.readBytes($I));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=UI(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]=UI(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function XI(e,{staticPosition:t}){let n=t+zI(e.readBytes(32));e.setPosition(n);let r=zI(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=BI(JP(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function ZI(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(ZI);let n=dI(e.type);return!!(n&&ZI({...e,type:n[1]}))}var QI,$I,eL=o((()=>{NP(),IF(),II(),aP(),XF(),YP(),VI(),hF(),oF(),fI(),QI=32,$I=32}));function tL(e){let{abi:t,data:n,cause:r}=e,i=GF(n,0,4);if(i===`0x`)throw new pP({cause:r});let a=[...t||[],DI,OI].find(e=>e.type===`error`&&i===pI($N(e)));if(!a)throw new yP(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?HI(a.inputs,GF(n,4)):void 0,errorName:a.name}}var nL=o((()=>{kI(),NP(),XF(),mI(),eL(),nP()})),rL,iL=o((()=>{rL=(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 aL({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`?rL(t[n]):t[n]}`).join(`, `)})`}var oL=o((()=>{iL()})),sL,cL,lL=o((()=>{sL={gwei:9,wei:18},cL={ether:-9,wei:9}}));function uL(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 dL=o((()=>{}));function fL(e,t=`wei`){return uL(e,sL[t])}var pL=o((()=>{lL(),dL()}));function mL(e,t=`wei`){return uL(e,cL[t])}var hL=o((()=>{lL(),dL()}));function gL(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function _L(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+=gL(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=gL(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var vL,yL,bL=o((()=>{J(),vL=class extends q{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},yL=class extends q{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function xL(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 SL,CL,wL,TL,EL,DL,OL=o((()=>{pL(),hL(),J(),SL=class extends q{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},CL=class extends q{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,xL(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`})}},wL=class extends q{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},TL=class extends q{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},EL=class extends q{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},DL=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=xL({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${fL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${mL(o)} gwei`,maxFeePerGas:s!==void 0&&`${mL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${mL(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}}})),kL,AL,jL=o((()=>{kL=e=>e,AL=e=>e})),ML,NL,PL,FL,IL,LL,RL=o((()=>{bI(),kI(),nL(),nP(),oL(),vI(),pL(),hL(),NP(),J(),bL(),OL(),jL(),ML=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=xL({from:(t?yI(t):void 0)?.address,to:u,value:d!==void 0&&`${fL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${mL(o)} gwei`,maxFeePerGas:s!==void 0&&`${mL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${mL(c)} gwei`,nonce:l});f&&(p+=`\\n${_L(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}},NL=class extends q{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=hI({abi:t,args:n,name:a}),c=s?aL({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?$N(s,{includeName:!0}):void 0,u=xL({address:r&&kL(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}},PL=class extends q{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=tL({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=EI[e]}else{let e=n?$N(n,{includeName:!0}):void 0,t=n&&a?aL({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 yP&&(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}},FL=class extends q{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},IL=class extends q{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},LL=class extends q{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),zL,BL,VL,HL=o((()=>{iL(),J(),jL(),zL=class extends q{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${AL(a)}`,e&&`Request body: ${rL(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}},BL=class extends q{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${AL(n)}`,`Request body: ${rL(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}},VL=class extends q{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${AL(t)}`,`Request body: ${rL(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),UL,WL,GL,KL,qL,JL,YL,XL,ZL,QL,$L,eR,tR,nR,rR,iR,aR,oR,sR,cR,lR,uR,dR,fR,pR,mR,hR,gR,_R,vR,yR=o((()=>{J(),HL(),UL=-1,WL=class extends q{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof BL?e.code:t??UL}},GL=class extends WL{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},KL=class e extends WL{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(KL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),qL=class e extends WL{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(qL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),JL=class e extends WL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(JL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),YL=class e extends WL{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(YL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),XL=class e extends WL{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(XL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),ZL=class e extends WL{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(ZL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),QL=class e extends WL{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(QL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),$L=class e extends WL{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty($L,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),eR=class e extends WL{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(eR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),tR=class e extends WL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(tR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),nR=class e extends WL{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(nR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),rR=class e extends WL{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(rR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),iR=class e extends GL{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(iR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),aR=class e extends GL{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(aR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),oR=class e extends GL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(oR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),sR=class e extends GL{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(sR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),cR=class e extends GL{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(cR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),lR=class e extends GL{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(lR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),uR=class e extends GL{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(uR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),dR=class e extends GL{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(dR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),fR=class e extends GL{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(fR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),pR=class e extends GL{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(pR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),mR=class e extends GL{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(mR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),hR=class e extends GL{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(hR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),gR=class e extends GL{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(gR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),_R=class e extends GL{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(_R,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),vR=class extends WL{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));NP(),J(),RL(),HL(),yR();function bR(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof LL?e:e instanceof q?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new NL(e instanceof pP?new FL({functionName:a,cause:e}):[3,XL.code].includes(c)&&(l||u||d||f)||c===ZL.code&&u===`execution reverted`&&l?new PL({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof BL?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}IF(),_F();function xR(e){return NF(`0x${gF(`0x${e.substring(4)}`).substring(26)}`)}rP(),aP(),$P(),oF();async function SR({hash:e,signature:t}){let n=K(e)?e:eF(e),{secp256k1:r}=await Promise.resolve().then(()=>(lc(),Ms));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=CR(Number(a??i));return new r.Signature(Y(e),Y(n)).addRecoveryBit(o)}let e=K(t)?t:eF(t);if(iP(e)!==65)throw Error(`invalid signature length`);let n=CR(QP(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function CR(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 wR({hash:e,signature:t}){return xR(await SR({hash:e,signature:t}))}J(),II(),hF(),oF();function TR(e,t=`hex`){let n=ER(e),r=PI(new Uint8Array(n.length));return n.encode(r),t===`hex`?nF(r.bytes):r.bytes}function ER(e){return Array.isArray(e)?DR(e.map(e=>ER(e))):OR(e)}function DR(e){let t=e.reduce((e,t)=>e+t.length,0),n=kR(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 OR(e){let t=typeof e==`string`?uF(e):e,n=kR(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 kR(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new q(`Length is too large.`)}WF(),hF(),oF(),_F();function AR(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=gF(UF([`0x05`,TR([t?X(t):`0x`,i,n?X(n):`0x`])]));return r===`bytes`?uF(a):a}async function jR(e){let{authorization:t,signature:n}=e;return wR({hash:AR(t),signature:n??t})}pL(),hL(),J(),OL();var MR=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=xL({from:t?.address,to:u,value:d!==void 0&&`${fL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${mL(o)} gwei`,maxFeePerGas:s!==void 0&&`${mL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${mL(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}},NR,PR,FR,IR,LR,RR,zR,BR,VR,HR,UR,WR,GR=o((()=>{hL(),J(),NR=class extends q{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(NR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(NR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),PR=class extends q{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${mL(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(PR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),FR=class extends q{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${mL(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(FR,`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/}),IR=class extends q{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(IR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),LR=class extends q{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(LR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),RR=class extends q{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(RR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),zR=class extends q{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(zR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),BR=class extends q{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(BR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),VR=class extends q{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(VR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),HR=class extends q{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(HR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),UR=class extends q{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${mL(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${mL(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(UR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),WR=class extends q{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function KR(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof q?e.walk(e=>e?.code===NR.code):e;return r instanceof q?new NR({cause:e,message:r.details}):NR.nodeMessage.test(n)?new NR({cause:e,message:e.details}):PR.nodeMessage.test(n)?new PR({cause:e,maxFeePerGas:t?.maxFeePerGas}):FR.nodeMessage.test(n)?new FR({cause:e,maxFeePerGas:t?.maxFeePerGas}):IR.nodeMessage.test(n)?new IR({cause:e,nonce:t?.nonce}):LR.nodeMessage.test(n)?new LR({cause:e,nonce:t?.nonce}):RR.nodeMessage.test(n)?new RR({cause:e,nonce:t?.nonce}):zR.nodeMessage.test(n)?new zR({cause:e}):BR.nodeMessage.test(n)?new BR({cause:e,gas:t?.gas}):VR.nodeMessage.test(n)?new VR({cause:e,gas:t?.gas}):HR.nodeMessage.test(n)?new HR({cause:e}):UR.nodeMessage.test(n)?new UR({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new WR({cause:e})}var qR=o((()=>{J(),GR()}));GR(),qR();function JR(e,{docsPath:t,...n}){return new MR((()=>{let t=KR(e,n);return t instanceof WR?e:t})(),{docsPath:t,...n})}function YR(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 XR=o((()=>{}));function ZR(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 QR=o((()=>{}));function $R(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=ez(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=>nF(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=X(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=X(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=X(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=X(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=X(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=X(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=tz[e.type]),e.value!==void 0&&(n.value=X(e.value)),n}function ez(e){return e.map(e=>({address:e.address,r:e.r?X(BigInt(e.r)):e.r,s:e.s?X(BigInt(e.s)):e.s,chainId:X(e.chainId),nonce:X(e.nonce),...e.yParity===void 0?{}:{yParity:X(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:X(e.v)}:{}}))}var tz,nz,rz=o((()=>{oF(),QR(),tz={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},nz=ZR(`transactionRequest`,$R)}));function iz(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new IP({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new IP({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function az(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=X(t)),n!==void 0&&(o.nonce=X(n)),r!==void 0&&(o.state=iz(r)),i!==void 0){if(o.state)throw new yL;o.stateDiff=iz(i)}return o}function oz(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!LF(n,{strict:!1}))throw new kF({address:n});if(t[n])throw new vL({address:n});t[n]=az(r)}return t}var sz=o((()=>{AF(),LP(),bL(),BF(),oF()})),cz,lz=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)),cz=2n**256n-1n}));function uz(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?yI(t):void 0;if(a&&!LF(a.address))throw new kF({address:a.address});if(i&&!LF(i))throw new kF({address:i});if(n&&n>cz)throw new PR({maxFeePerGas:n});if(r&&n&&r>n)throw new UR({maxFeePerGas:n,maxPriorityFeePerGas:r})}var dz=o((()=>{bI(),lz(),AF(),GR(),BF()}));hL(),J();var fz=class extends q{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},pz=class extends q{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},mz=class extends q{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${mL(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};J();var hz=class extends q{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};$P(),QR();let gz={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function _z(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?QP(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?QP(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?gz[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=yz(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 vz=ZR(`transaction`,_z);function yz(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 bz(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:_z(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}}oF();async function xz(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:X(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new hz({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||bz)(s,`getBlock`)}async function Sz(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}$P();async function Cz(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 QN(e,xz,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?Y(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):QN(e,xz,`getBlock`)({}),QN(e,Sz,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new pz;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function wz(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 fz;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await QN(e,xz,`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 pz;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await Cz(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 QN(e,Sz,`getGasPrice`)({}))}}$P(),oF();async function Tz(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return QP(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?X(r):n]},{dedupe:!!r}))}hF(),oF();function Ez(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>uF(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>nF(e))}hF(),oF();function Dz(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>uF(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>uF(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>nF(e))}rP(),hF(),oF();function Oz(e,t){let n=t||`hex`,r=Hn(K(e,{strict:!1})?sF(e):e);return n===`bytes`?r:eF(r)}oF();function kz(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Oz(t,`bytes`);return i.set([n],0),r===`bytes`?i:nF(i)}function Az(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(kz({commitment:e,to:r,version:n}));return i}let jz=4096,Mz=32*jz;Mz*6-1-1*jz*6,J();var Nz=class extends q{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Pz=class extends q{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},Fz=class extends q{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Iz=class extends q{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};II(),aP(),hF(),oF();function Lz(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?uF(e.data):e.data,r=iP(n);if(!r)throw new Pz;if(r>761855)throw new Nz({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=PI(new Uint8Array(Mz)),t=0;for(;t<jz;){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=>nF(e.bytes))}function Rz(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Lz({data:t,to:r}),a=e.commitments??Ez({blobs:i,kzg:n,to:r}),o=e.proofs??Dz({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}OL();function zz(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 CL({transaction:e})}GR(),OL(),qR();function Bz(e,{docsPath:t,...n}){return new DL((()=>{let t=KR(e,n);return t instanceof WR?e:t})(),{docsPath:t,...n})}$P();async function Vz(e){return QP(await e.request({method:`eth_chainId`},{dedupe:!0}))}bI(),XR(),rz(),dz();async function Hz(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=yI(n),r=a?a.id:await QN(e,Vz,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();uz(t);let x=a?.formatters?.transactionRequest?.format,S=(x||$R)({...YR(y,{format:x}),account:n?yI(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||_z)(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 QN(e,xz,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new fz;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 Bz(n,{...t,chain:e.chain})}}bI(),MF(),dz();let Uz=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Wz=new Map,Gz=new jF(128);async function Kz(e,t){let n=t;n.account??=e.account,n.parameters??=Uz;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 QN(e,Vz,`getChainId`)({}),c):n.chainId)}let u=r&&yI(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||Gz.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 QN(e,Hz,`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 Gz.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`)})&&Gz.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 QN(e,xz,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await QN(e,Tz,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=Ez({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Az({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Rz({blobs:p,commitments:e,proofs:Dz({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=zz(n)}catch{let t=Wz.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Wz.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 wz(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new mz({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new pz;if(n.gasPrice===void 0){let{gasPrice:t}=await wz(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await QN(e,qz,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),uz(n),delete n.parameters,n}bI(),J(),oF(),XR(),rz(),sz(),dz();async function qz(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?yI(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 jR({authorization:t.authorizationList[0]}).catch(()=>{throw new q(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await Kz(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?X(u):void 0)||d,ee=oz(b);uz(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||$R)({...YR(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 JR(n,{...t,account:i,chain:e.chain})}}function Jz(e,t){if(!LF(e,{strict:!1}))throw new kF({address:e});if(!LF(t,{strict:!1}))throw new kF({address:t});return e.toLowerCase()===t.toLowerCase()}var Yz=o((()=>{AF(),BF()}));function Xz(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}:{}}}NP(),NI(),aP(),OF(),eL(),nP();let Zz=`/docs/contract/decodeEventLog`;function Qz(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new bP({docsPath:Zz});let c=t.find(e=>e.type===`event`&&o===DF($N(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new xP(o,{docsPath:Zz});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 OP({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=$z({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=HI(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 fP||e instanceof jI?new DP({abiItem:c,data:n,params:g,size:iP(n)}):e}else if(a)throw new DP({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function $z({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(HI([e],t)||[])[0]}Yz(),hF(),_F(),OF();function eB(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:DF(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Xz(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=Qz({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Qz({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)||!tB({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function tB(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`?Jz(t,n):e.type===`string`||e.type===`bytes`?gF(sF(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 nB(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=hI({abi:t,args:n,name:r});if(!e)throw new SP(r,{docsPath:rB});a=e}if(a.type!==`function`)throw new SP(void 0,{docsPath:rB});if(!a.outputs)throw new CP(a.name,{docsPath:rB});let o=HI(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var rB,iB=o((()=>{NP(),eL(),vI(),rB=`/docs/contract/decodeFunctionResult`})),aB,oB,sB,cB,lB,uB=o((()=>{aB=[{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`}],oB=[{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`}]}],sB=[{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`}],[...sB],[...sB],cB=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],lB=[{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`}]})),dB=o((()=>{})),fB,pB,mB,hB,gB=o((()=>{fB=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,pB=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,mB=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,hB=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),_B,vB,yB,bB,xB,SB=o((()=>{J(),_B=class extends q{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},vB=class extends q{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},yB=class extends q{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},bB=class extends q{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},xB=class extends q{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function CB(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 uP({docsPath:wB});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new dP({docsPath:wB});return UF([r,eI(i.inputs,n)])}var wB,TB=o((()=>{NP(),WF(),fI(),wB=`/docs/contract/encodeDeployData`}));function EB({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new _B({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new _B({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var DB=o((()=>{SB()}));function OB(e,{docsPath:t,...n}){return new ML((()=>{let t=KR(e,n);return t instanceof WR?e:t})(),{docsPath:t,...n})}var kB=o((()=>{RL(),GR(),qR()}));function AB(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var jB=o((()=>{}));function MB({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=()=>NB.delete(t),s=()=>c().map(({args:e})=>e),c=()=>NB.get(t)||[],l=e=>NB.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=AB();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 NB,PB=o((()=>{jB(),NB=new Map})),FB,IB,LB,RB=o((()=>{iL(),J(),jL(),FB=class extends q{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${AL(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},IB=class extends q{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${AL(t)}`,`Response: ${rL(e)}`],name:`OffchainLookupResponseMalformedError`})}},LB=class extends q{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function zB(e){let{abi:t,data:n}=e,r=GF(n,0,4),i=t.find(e=>e.type===`function`&&r===pI($N(e)));if(!i)throw new wP(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?HI(i.inputs,GF(n,4)):void 0}}var BB=o((()=>{NP(),XF(),mI(),eL(),nP()}));function VB(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=hI({abi:t,args:r,name:n});if(!e)throw new vP(n,{docsPath:HB});i=e}if(i.type!==`error`)throw new vP(void 0,{docsPath:HB});let a=pI($N(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new _P(i.name,{docsPath:HB});o=eI(i.inputs,r)}return UF([a,o])}var HB,UB=o((()=>{NP(),WF(),mI(),fI(),nP(),vI(),HB=`/docs/contract/encodeErrorResult`}));function WB(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=hI({abi:t,name:n});if(!e)throw new SP(n,{docsPath:GB});i=e}if(i.type!==`function`)throw new SP(void 0,{docsPath:GB});if(!i.outputs)throw new CP(i.name,{docsPath:GB});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new jP(r)})();return eI(i.outputs,a)}var GB,KB=o((()=>{NP(),fI(),vI(),GB=`/docs/contract/encodeFunctionResult`}));async function qB(e){let{data:t,ccipRequest:n}=e,{args:[r]}=zB({abi:oB,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await qB({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=JB(e)}})),WB({abi:oB,functionName:`query`,result:[i,a]})}function JB(e){return e.name===`HttpRequestError`&&e.status?VB({abi:oB,errorName:`HttpError`,args:[e.status,e.shortMessage]}):VB({abi:[DI],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var YB=o((()=>{uB(),kI(),BB(),UB(),KB()})),XB=c({ccipRequest:()=>QB,offchainLookup:()=>ZB,offchainLookupAbiItem:()=>eV,offchainLookupSignature:()=>$B});async function ZB(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=tL({data:r,abi:[eV]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:QB;try{if(!Jz(i,o))throw new LB({sender:o,to:i});let{data:r}=await nV(e,{blockNumber:t,blockTag:n,data:VF([l,eI([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await qB({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new FB({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function QB({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 zL({body:s,details:i?.error?rL(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!K(i)){r=new IB({result:i,url:a});continue}return i}catch(e){r=new zL({body:s,details:e.message,url:a})}}throw r}var $B,eV,tV=o((()=>{cV(),RB(),HL(),nL(),fI(),Yz(),WF(),rP(),YB(),iL(),$B=`0x556f1830`,eV={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 nV(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?yI(n):void 0;if(u&&(f||p))throw new q(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new q(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?aV({code:u,data:d}):te?oV({data:d,factory:f,factoryData:p,to:b}):d;try{uz(t);let n=(typeof a==`bigint`?X(a):void 0)||o,u=l?nk(l):void 0,d=oz(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||$R)({...YR(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&&rV({request:p})&&!d&&!u)try{return await iV(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof bB)&&!(e instanceof _B))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=sV(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(tV(),XB));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 IL({factory:f}):OB(n,{...t,account:C,chain:e.chain})}}function rV({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 iV(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 EB({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new bB})(),u=(typeof a==`bigint`?X(a):void 0)||o,{schedule:d}=MB({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=wI({abi:aB,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:aV({code:hB,data:r})}:{to:l,data:r}},u]});return nB({abi:aB,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new LL({data:f});return f===`0x`?{data:void 0}:{data:f}}function aV(e){let{code:t,data:n}=e;return CB({abi:YN([`constructor(bytes, bytes)`]),bytecode:fB,args:[t,n]})}function oV(e){let{data:t,factory:n,factoryData:r,to:i}=e;return CB({abi:YN([`constructor(address, bytes, address, bytes)`]),bytecode:pB,args:[i,t,n,r]})}function sV(e){if(!(e instanceof q))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var cV=o((()=>{ZN(),rk(),bI(),uB(),dB(),gB(),J(),SB(),RL(),iB(),TB(),TI(),DB(),oF(),kB(),XR(),rz(),PB(),sz(),dz()}));iB(),TI(),cV();async function lV(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=wI({abi:n,args:i,functionName:a});try{let{data:t}=await QN(e,nV,`call`)({...o,data:s,to:r});return nB({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw bR(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let uV=new Map,dV=new Map,fV=0;function pV(e,t,n){let r=++fV,i=()=>uV.get(e)||[],a=()=>{let t=i();uV.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=dV.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(uV.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&dV.set(e,l),o}async function mV(e){return new Promise(t=>setTimeout(t,e))}function hV(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await mV(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await mV(r),s())};s()})(),a}J();var gV=class extends q{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},_V=class extends q{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};SB();function vV({chain:e,currentChainId:t}){if(!e)throw new yB;if(t!==e.id)throw new vB({chain:e,currentChainId:t})}async function yV(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}bI(),J(),WF(),XR(),rz(),MF(),dz();let bV=new jF(128);async function xV(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 gV({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?yI(n):null;try{uz(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await jR({authorization:o[0]}).catch(()=>{throw new q(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await QN(e,Vz,`getChainId`)({}),r&&vV({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||$R)({...YR(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?VF([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=bV.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=>(bV.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(bV.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await QN(e,Kz,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?VF([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...Uz,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await QN(e,yV,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new _V({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new _V({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof _V?e:Bz(e,{...t,account:y,chain:t.chain||void 0})}}bI(),TI();async function SV(e,t){return SV.internal(e,xV,`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 gV({docsPath:`/docs/contract/writeContract`});let u=a?yI(a):null,d=wI({abi:i,args:s,functionName:c});try{return await QN(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw bR(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(SV||={}),J();var CV=class extends q{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function wV(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 mV(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()})}$P(),QR();let TV={\"0x0\":`reverted`,\"0x1\":`success`};function EV(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=>Xz(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?QP(e.transactionIndex):null,status:e.status?TV[e.status]:null,type:e.type?gz[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let DV=ZR(`transactionReceipt`,EV);bI(),J(),yR(),TI(),WF(),$P(),oF();let OV=X(0,{size:32});async function kV(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?yI(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?wI({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?VF([n,t.dataSuffix]):n,to:t.to,value:t.value?X(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:X(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new uR(new q(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new gR(new q(e,{details:e}))}let t=[];for(let n of d){let i=xV(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?Y(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:VF([...n.map(e=>e.status===`fulfilled`?e.value:OV),X(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Bz(n,{...t,account:l,chain:t.chain})}}XF(),YP(),$P();async function AV(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=JP(YF(t,-64,-32)),r=YF(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>OV.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:QP(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?QP(i):void 0,receipts:a?.map(e=>({...e,blockNumber:Y(e.blockNumber),gasUsed:Y(e.gasUsed),status:TV[e.status]}))??[],statusCode:l,status:c,version:o}}J(),jB(),iL();async function jV(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=rL([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=AB(),p,m=pV(l,{resolve:d,reject:f},t=>{let s=hV(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await wV(async()=>{let t=await QN(e,AV,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new CV(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 MV({id:n}))},s):void 0,await u}var MV=class extends q{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let NV=256,PV;function FV(e=11){if(!PV||NV+e>256*2){PV=``,NV=0;for(let e=0;e<256;e++)PV+=(256+Math.random()*256|0).toString(16).substring(1)}return PV.substring(NV,NV+++e)}bI();function IV(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?yI(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:FV(),...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(_)})}oF();async function LV(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:X(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}lz(),AF(),J(),SB(),GR(),BF(),aP(),XF(),$P();function RV(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!LF(n))throw new kF({address:n});if(t<0)throw new xB({chainId:t})}BV(e)}function zV(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Pz;for(let e of t){let t=iP(e),n=QP(GF(e,0,1));if(t!==32)throw new Fz({hash:e,size:t});if(n!==1)throw new Iz({hash:e,version:n})}}BV(e)}function BV(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new xB({chainId:t});if(i&&!LF(i))throw new kF({address:i});if(r&&r>cz)throw new PR({maxFeePerGas:r});if(n&&r&&n>r)throw new UR({maxFeePerGas:r,maxPriorityFeePerGas:n})}function VV(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new xB({chainId:t});if(a&&!LF(a))throw new kF({address:a});if(n||i)throw new q(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>cz)throw new PR({maxFeePerGas:r})}function HV(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!LF(a))throw new kF({address:a});if(t!==void 0&&t<=0)throw new xB({chainId:t});if(n||i)throw new q(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>cz)throw new PR({maxFeePerGas:r})}AF(),OL(),BF();function UV(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 EL({storageKey:i[e]});if(!LF(r,{strict:!1}))throw new kF({address:r});t.push([r,i])}return t}OL(),WF(),YP(),oF();function WV(e,t){let n=zz(e);return n===`eip1559`?qV(e,t):n===`eip2930`?JV(e,t):n===`eip4844`?KV(e,t):n===`eip7702`?GV(e,t):YV(e,t)}function GV(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;RV(e);let f=UV(u),p=ZV(n);return UF([`0x04`,TR([X(r),a?X(a):`0x`,l?X(l):`0x`,c?X(c):`0x`,i?X(i):`0x`,o??`0x`,s?X(s):`0x`,d??`0x`,f,p,...XV(e,t)])])}function KV(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;zV(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=>nF(e)),n=e.kzg,r=Ez({blobs:t,kzg:n});f===void 0&&(f=Az({commitments:r})),p===void 0&&(p=Rz({blobs:t,commitments:r,proofs:Dz({blobs:t,commitments:r,kzg:n})}))}let m=UV(u),h=[X(n),i?X(i):`0x`,l?X(l):`0x`,c?X(c):`0x`,r?X(r):`0x`,a??`0x`,o?X(o):`0x`,d??`0x`,m,s?X(s):`0x`,f??[],...XV(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 UF([`0x03`,TR(p?[h,g,_,v]:h)])}function qV(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;BV(e);let d=UV(l);return UF([`0x02`,TR([X(n),i?X(i):`0x`,c?X(c):`0x`,s?X(s):`0x`,r?X(r):`0x`,a??`0x`,o?X(o):`0x`,u??`0x`,d,...XV(e,t)])])}function JV(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;VV(e);let u=UV(c);return UF([`0x01`,TR([X(n),a?X(a):`0x`,l?X(l):`0x`,r?X(r):`0x`,o??`0x`,s?X(s):`0x`,i??`0x`,u,...XV(e,t)])])}function YV(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;HV(e);let l=[a?X(a):`0x`,c?X(c):`0x`,r?X(r):`0x`,o??`0x`,s?X(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new SL({v:t.v});return e})(),r=JP(t.r),i=JP(t.s);l=[...l,X(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,X(n),`0x`,`0x`]);return TR(l)}function XV(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=JP(n.r),o=JP(n.s);return[typeof i==`number`?i?X(1):`0x`:r===0n?`0x`:r===1n?X(1):r===27n?`0x`:X(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}oF();function ZV(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?eF(e):`0x`,a,r?eF(r):`0x`,...XV({},i)])}return t}IF(),Yz();async function QV({address:e,authorization:t,signature:n}){return Jz(PF(e),await jR({authorization:t,signature:n}))}MF();let $V=new jF(8192);function eH(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if($V.get(n))return $V.get(n);let r=e().finally(()=>$V.delete(n));return $V.set(n,r),r}J(),HL(),yR(),oF(),iL();function tH(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 tR(Error(`method not supported`),{method:l});return eH(()=>wV(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case KL.code:throw new KL(t);case qL.code:throw new qL(t);case JL.code:throw new JL(t,{method:n.method});case YL.code:throw new YL(t);case XL.code:throw new XL(t);case ZL.code:throw new ZL(t);case QL.code:throw new QL(t);case $L.code:throw new $L(t);case eR.code:throw new eR(t);case tR.code:throw new tR(t,{method:n.method});case nR.code:throw new nR(t);case rR.code:throw new rR(t);case iR.code:throw new iR(t);case aR.code:throw new aR(t);case oR.code:throw new oR(t);case sR.code:throw new sR(t);case cR.code:throw new cR(t);case lR.code:throw new lR(t);case uR.code:throw new uR(t);case dR.code:throw new dR(t);case fR.code:throw new fR(t);case pR.code:throw new pR(t);case mR.code:throw new mR(t);case hR.code:throw new hR(t);case gR.code:throw new gR(t);case 5e3:throw new iR(t);case _R.code:throw new _R(t);default:throw e instanceof q?e:new vR(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof zL){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})=>nH(e)}),{enabled:i,id:i?rF(`${c}.${rL(n)}`):void 0})}}function nH(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===nR.code||e.code===XL.code:e instanceof zL&&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 rH(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 iH(){return{}}J(),qP(),II(),hF(),oF();function aH(e,t=`hex`){return oH(PI((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new GP(e);return uF(e)}return e})(),{recursiveReadLimit:1/0}),t)}function oH(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?nF(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=sH(e,n,128),i=e.readBytes(r);return t===`hex`?nF(i):i}return cH(e,sH(e,n,192),t)}function sH(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new q(`Invalid RLP prefix`)}function cH(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(oH(e,n));return i}rP(),aP();function lH(e){return K(e)&&iP(e)===32}function uH(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 dH(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let fH=dH();HL(),iL();function pH(e,t={}){let{url:n,headers:r}=mH(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 uH(async({signal:e})=>{let t={...l,body:rL(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??fH.take(),...e})):{jsonrpc:`2.0`,id:i.id??fH.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new VL({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 zL({body:i,details:rL(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof zL||e instanceof VL?e:new zL({body:i,cause:e,url:n})}}}}function mH(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}}}iL(),J();var hH=class extends q{constructor({domain:e}){super(`Invalid domain \"${rL(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},gH=class extends q{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},_H=class extends q{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};NP(),AF(),BF(),aP(),oF(),$F(),iL();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 rL({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function yH(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(QF);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;X(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!LF(o))throw new kF({address:o});let c=r.match(ZF);if(c){let[e,t]=c;if(t&&iP(o)!==Number.parseInt(t,10))throw new EP({expectedSize:Number.parseInt(t,10),givenSize:iP(o)})}let l=i[r];l&&(xH(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new hH({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new gH({primaryType:r,types:i})}function bH({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 xH(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new _H({type:e})}bT(),dE();let SH=ZD(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function CH(e){if(typeof e==`string`){if(U(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new EH(e)}else yO(e.authorization)}function wH(e){CH(e);let t=$T(U(e,-64,-32)),n=U(e,-t-64,-64),r=U(e,0,-t-64),[i,a,o]=JD(SH,n);return{authorization:RO({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function TH(e){try{return CH(e),!0}catch{return!1}}var EH=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};OL(),XF(),$P();function DH(e){let t=YF(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`&&QP(t)>=192)return`legacy`;throw new wL({serializedType:t})}AF(),OL(),BF(),rP(),VP(),YP(),$P();function OH(e){let t=DH(e);return t===`eip1559`?jH(e):t===`eip2930`?MH(e):t===`eip4844`?AH(e):t===`eip7702`?kH(e):NH(e)}function kH(e){let t=PH(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new TL({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:QP(n),type:`eip7702`};return K(s)&&s!==`0x`&&(h.to=s),K(o)&&o!==`0x`&&(h.gas=Y(o)),K(l)&&l!==`0x`&&(h.data=l),K(r)&&(h.nonce=r===`0x`?0:QP(r)),K(c)&&c!==`0x`&&(h.value=Y(c)),K(a)&&a!==`0x`&&(h.maxFeePerGas=Y(a)),K(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=Y(i)),u.length!==0&&u!==`0x`&&(h.accessList=FH(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=IH(d)),RV(h),{...t.length===13?LH(t):void 0,...h}}function AH(e){let t=PH(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 TL({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:QP(a),to:u,type:`eip4844`};return K(l)&&l!==`0x`&&(S.gas=Y(l)),K(f)&&f!==`0x`&&(S.data=f),K(o)&&(S.nonce=o===`0x`?0:QP(o)),K(d)&&d!==`0x`&&(S.value=Y(d)),K(m)&&m!==`0x`&&(S.maxFeePerBlobGas=Y(m)),K(c)&&c!==`0x`&&(S.maxFeePerGas=Y(c)),K(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=Y(s)),p.length!==0&&p!==`0x`&&(S.accessList=FH(p)),y&&b&&x&&(S.sidecars=Rz({blobs:y,commitments:b,proofs:x})),zV(S),{...r.length===14?LH(r):void 0,...S}}function jH(e){let t=PH(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new TL({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:QP(n),type:`eip1559`};return K(s)&&s!==`0x`&&(m.to=s),K(o)&&o!==`0x`&&(m.gas=Y(o)),K(l)&&l!==`0x`&&(m.data=l),K(r)&&(m.nonce=r===`0x`?0:QP(r)),K(c)&&c!==`0x`&&(m.value=Y(c)),K(a)&&a!==`0x`&&(m.maxFeePerGas=Y(a)),K(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=Y(i)),u.length!==0&&u!==`0x`&&(m.accessList=FH(u)),BV(m),{...t.length===12?LH(t):void 0,...m}}function MH(e){let t=PH(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new TL({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:QP(n),type:`eip2930`};return K(o)&&o!==`0x`&&(p.to=o),K(a)&&a!==`0x`&&(p.gas=Y(a)),K(c)&&c!==`0x`&&(p.data=c),K(r)&&(p.nonce=r===`0x`?0:QP(r)),K(s)&&s!==`0x`&&(p.value=Y(s)),K(i)&&i!==`0x`&&(p.gasPrice=Y(i)),l.length!==0&&l!==`0x`&&(p.accessList=FH(l)),VV(p),{...t.length===11?LH(t):void 0,...p}}function NH(e){let t=aH(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new TL({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(K(a)&&a!==`0x`&&(d.to=a),K(i)&&i!==`0x`&&(d.gas=Y(i)),K(s)&&s!==`0x`&&(d.data=s),K(n)&&(d.nonce=n===`0x`?0:QP(n)),K(o)&&o!==`0x`&&(d.value=Y(o)),K(r)&&r!==`0x`&&(d.gasPrice=Y(r)),HV(d),t.length===6)return d;let f=K(c)&&c!==`0x`?Y(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new SL({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function PH(e){return aH(`0x${e.slice(4)}`,`hex`)}function FH(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!LF(r,{strict:!1}))throw new kF({address:r});t.push({address:r,storageKeys:i.map(e=>lH(e)?e:JP(e))})}return t}function IH(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:QP(r),nonce:a===`0x`?0:QP(a),...LH([o,s,c])})}return t}function LH(e){let t=e.slice(-3),n=t[0]===`0x`||Y(t[0])===0n?27n:28n;return{r:zP(t[1],{size:32}),s:zP(t[2],{size:32}),v:n,yParity:n===27n?0:1}}J();var RH=class extends q{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function zH(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new RH({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,`0`);return BigInt(`${i?`-`:``}${n}${r}`)}bT(),dE();function BH(e){if(U(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new UH(e)}function VH(e){let{data:t,signature:n,to:r}=e;return VT(YD(ZD(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function HH(e){try{return BH(e),!0}catch{return!1}}var UH=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};lc(),$P(),hF();function WH({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Js.Signature(Y(e),Y(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:uF(o)}uB(),gB(),RL(),TB(),TI(),IF(),Yz(),WF(),rP(),$P(),oF(),cV();async function GH(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return K(e)?e:typeof e==`object`&&`r`in e&&`s`in e?WH(e):nF(e)})();try{if(s===`eoa`)try{if(Jz(PF(n),await wR({hash:i,signature:c})))return!0}catch{}return TH(c)?await KH(e,{...t,multicallAddress:o,signature:c}):await qH(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Jz(PF(n),await wR({hash:i,signature:c})))return!0}catch{}if(e instanceof YH)return!1;throw e}}async function KH(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=wH(t.signature);if(await LV(e,{address:n,blockNumber:r,blockTag:i})===UF([`0xef0100`,s.address]))return await JH(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:X(s.r,{size:32}),s:X(s.s,{size:32}),yParity:s.yParity};if(!await QV({address:n,authorization:d}))throw new YH;let f=await QN(e,lV,`readContract`)({...o?{address:o}:{code:hB},authorizationList:[d],abi:aB,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:wI({abi:cB,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new YH}async function qH(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||HH(o)?o:VH({data:i,signature:o,to:r}))(),u=s?{to:s,data:wI({abi:lB,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:CB({abi:lB,args:[n,a,l],bytecode:mB}),...c},{data:d}=await QN(e,nV,`call`)(u).catch(e=>{throw e instanceof ML?new YH:e});if(ZP(d??`0x0`))return!0;throw new YH}async function JH(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await QN(e,lV,`readContract`)({address:n,abi:cB,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof NL?new YH:e})).startsWith(`0x1626ba7e`))return!0;throw new YH}var YH=class extends Error{};async function XH(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await QN(e,kV,`sendCalls`)(t);return await QN(e,jV,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}bI(),oF(),rz(),dz();async function ZH(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new gV({docsPath:`/docs/actions/wallet/signTransaction`});let a=yI(n);uz({account:a,...t});let o=await QN(e,Vz,`getChainId`)({});r!==null&&vV({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||$R;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:X(o),from:a.address}]},{retryCount:0})}bI();async function QH(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new gV({docsPath:`/docs/actions/wallet/signTypedData`});let o=yI(n),s={EIP712Domain:bH({domain:r}),...t.types};if(yH({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 $H({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=FV();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:tH(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}J();var eU=class extends q{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};HL(),PB();function tU(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 eU;let b=pH(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return $H({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=MB({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 BL({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}bT(),dE(),zT();let nU=`0x01`,rU=`0x02`,iU=`0x03`,aU=`0x04`,oU=`0x7777777777777777777777777777777777777777777777777777777777777777`;function sU(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:sU({...e,signature:t.inner}):iD(cU(e))}function cU(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return ak({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return cU({payload:t,signature:n.inner})}}function lU(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?U(e,0,-YT(oU)):e;if(YT(t)===65){let e=xO(t);return yO(e),{signature:e,type:`secp256k1`}}let n=U(t,0,1),r=U(t,1),i=YT(r);if(n===nU){if(i!==129)throw new _U({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:ZT(U(r,64,96)),y:ZT(U(r,96,128))},prehash:$T(U(r,128,129))!==0,signature:{r:ZT(U(r,0,32)),s:ZT(U(r,32,64))},type:`p256`}}if(n===rU){if(i<128)throw new _U({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=U(r,0,e),a,o;for(let t=37;t<e;t++){let e=eE(U(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=U(n,0,t),o=e;break}catch{}}if(!a||!o)throw new _U({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:ZT(U(r,e+64,e+96)),y:ZT(U(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:ZT(U(r,e,e+32)),s:ZT(U(r,e+32,e+64))},type:`webAuthn`}}if(n===iU||n===aU)return{userAddress:U(r,0,20),inner:lU(U(r,20)),type:`keychain`,version:n===aU?`v2`:`v1`};throw new _U({reason:`Unknown signature type identifier: ${n}. Expected ${nU} (P256), ${rU} (WebAuthn), ${iU} (Keychain V1), or ${aU} (Keychain V2)`,serialized:t})}function uU(e,t){if(typeof e==`string`)return lU(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=fU(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:iD(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:iD(ak({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function dU(e){if(e.type===`secp256k1`)return{signature:TO(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:ZT(e.pubKeyX),y:ZT(e.pubKeyY)},signature:{r:ZT(e.r),s:ZT(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=YT(t),r,i;for(let e=37;e<n;e++){let n=eE(U(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=U(t,0,e),i=n;break}catch{}}if(!r||!i)throw new _U({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:ZT(e.pubKeyX),y:ZT(e.pubKeyY)},signature:{r:ZT(e.r),s:ZT(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:dU(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new gU({envelope:e})}function fU(e){if(typeof e!=`object`||!e)throw new gU({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 gU({envelope:e})}function pU(e,t={}){let n=fU(e);if(n===`secp256k1`)return VT(DO(e.signature),t.magic?oU:`0x`);if(n===`p256`){let n=e;return VT(nU,H(n.signature.r,{size:32}),H(n.signature.s,{size:32}),H(n.publicKey.x,{size:32}),H(n.publicKey.y,{size:32}),H(+!!n.prehash,{size:1}),t.magic?oU:`0x`)}if(n===`webAuthn`){let n=e;return VT(rU,VT(n.metadata.authenticatorData,GT(n.metadata.clientDataJSON)),H(n.signature.r,{size:32}),H(n.signature.s,{size:32}),H(n.publicKey.x,{size:32}),H(n.publicKey.y,{size:32}),t.magic?oU:`0x`)}if(n===`keychain`){let n=e;return VT(n.version===`v1`?iU:aU,n.userAddress,pU(n.inner),t.magic?oU:`0x`)}throw new gU({envelope:e})}function mU(e){let t=fU(e);if(t===`secp256k1`)return{...OO(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:H(t.publicKey.x,{size:32}),pubKeyY:H(t.publicKey.y,{size:32}),r:H(t.signature.r,{size:32}),s:H(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=VT(t.metadata.authenticatorData,GT(t.metadata.clientDataJSON));return{pubKeyX:H(t.publicKey.x,{size:32}),pubKeyY:H(t.publicKey.y,{size:32}),r:H(t.signature.r,{size:32}),s:H(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:mU(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new gU({envelope:e})}function hU(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return iD(t.publicKey)})();if(!r)return!1;let i=uU(e);if(i.type===`secp256k1`)return r?ok({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return aD(iD(i.publicKey),r)?sk({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return aD(iD(i.publicKey),r)?_k({challenge:HT(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new vU(`Unable to verify signature envelope of type \"${i.type}\".`)}var gU=class extends V{constructor({envelope:e}){super(`Unable to coerce value (\\`${LT(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},_U=class extends V{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},vU=class extends V{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};bT(),dE();function yU(e){return e.startsWith(`tempo`)?bU(e).address:e}function bU(e){if(!e.startsWith(`tempox`))throw new xU({address:e});let t=e.slice(6);return BT(t,{strict:!0}),{address:nD(t)}}var xU=class extends V{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};dE();function SU(e,t={}){if(typeof e.chainId==`string`)return CU(e);let n={...e,address:yU(e.address)};return t.signature?{...n,signature:t.signature}:n}function CU(e){let{address:t,chainId:n,nonce:r}=e,i=dU(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function wU(e){return e.map(e=>CU(e))}function TU(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=lU(i)),SU(a)}function EU(e){let t=[];for(let n of e)t.push(TU(n));return t}function DU(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:H(n),nonce:H(r),signature:mU(i)}}function OU(e){return e.map(e=>DU(e))}function kU(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?pU(e.signature):void 0;return[n?H(n):`0x`,t,r?H(r):`0x`,...i?[i]:[]]}function AU(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(kU(n));return t}dE();function jU(e,t={}){if(`keyId`in e)return MU(e);let n=e,r={...n,address:yU(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:yU(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:yU(e.address),selector:VU(e.selector),...e.recipients?{recipients:e.recipients.map(e=>yU(e))}:{}}))}:{}};return t.signature?{...r,signature:uU(t.signature)}:r}function MU(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=dU(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:BU(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:ZT(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&zU(e.period)>0?{period:zU(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function NU(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:zU(o)||void 0,type:l,chainId:r===`0x`?0n:ZT(r),...o===void 0?{}:{expiry:zU(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:RU(n),...r===void 0?{}:{period:zU(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=lU(n)),jU(u)}function PU(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:VU(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:H(r),expiry:typeof i==`number`?H(i):null,keyId:yU(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:H(t),...n?{period:LU(n)}:{}})),signature:mU(s),...c?{allowedCalls:c}:{}}}function FU(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?pU(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,IU(e.limit)];return e.period&&e.period>0&&t.push(LU(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([VU(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[IU(n),s,t,i!=null&&i!==0||c||l?LU(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function IU(e){return e===0n?`0x`:H(e)}function LU(e){return e===0?`0x`:H(e)}function RU(e){return e===`0x`?0n:BigInt(e)}function zU(e){return e===`0x`?0:$T(e)}function BU(e){return typeof e==`string`?e:Array.isArray(e)?WT(new Uint8Array(e)):e}function VU(e){if(e)return e.startsWith(`0x`)?e:mD(e)}dE();function HU(e){if(typeof e==`string`){let t=yU(e);return tD(t),t}return VT(`0x20c0`,H(e,{size:18}))}dE();let UU={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function WU(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:RE(GT(UU[e]??e))}let GU={...ZO,tempo:`0x76`},KU={...QO,\"0x76\":`tempo`};function qU(e,t={}){if(!e)return null;let n=$O(e);return n.type=KU[e.type],e.aaAuthorizationList&&(n.authorizationList=wU(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=dU(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=MU(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=TO(e.feePayerSignature),n.feePayerSignature.v=jO(n.feePayerSignature.yParity)),n}dE();function JU(e){let t=ck({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=OU(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?yU(e.to):e.to,value:e.value?H(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?yU(e.to):void 0,value:e.value?H(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=HU(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=PU(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=H(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=H(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return JT(6);if(typeof e.nonceKey==`bigint`)return H(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=GU.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}bT(),dE();let YU=`tempo`;function XU(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new rW;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new iW({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&tD(e.to,{strict:!1});if(n<=0)throw new pk({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new fk({feeCap:r});if(i&&r&&i>r)throw new hk({maxFeePerGas:r,maxPriorityFeePerGas:i})}function ZU(e){let t=cO(U(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new mk({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:YU});let y={chainId:Number(n),type:YU};tE(a)&&a!==`0x`&&(y.gas=BigInt(a)),tE(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),tE(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),tE(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),tE(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),tE(u)&&u!==`0x`&&(y.validBefore=Number(u)),tE(d)&&d!==`0x`&&(y.validAfter=Number(d)),tE(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=aO(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=EU(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||oD(p)?(y.feePayerSignature=null,oD(p)&&(y.from=p)):y.feePayerSignature=EO(p)),_&&(y.keyAuthorization=NU(_));let b=v?lU(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=sU({payload:eW(QU(y)),signature:b,root:!0})}catch{}return XU(y),y}function QU(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?ZU(e):e;return i.from&&=yU(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:yU(e.to)}:{}})),XU(i),{...i,...r?{signature:uU(r)}:{},...n?{feePayerSignature:CO(n)}:{},type:`tempo`}}function $U(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;XU(e);let h=oO(n),g=t.signature||e.signature,_=AU(r),v=i.map(e=>[e.to?yU(e.to):`0x`,e.value?H(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=uU(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return iD(t.publicKey);if(t.type===`secp256k1`)return ik({payload:eW(QU(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?kO(n):`0x`})(),x=[H(a),f?H(f):`0x`,d?H(d):`0x`,s?H(s):`0x`,v,h,u?H(u):`0x`,l?H(l):`0x`,typeof p==`number`?H(p):`0x`,typeof m==`number`?H(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?HU(o):`0x`,b,_,...c?[FU(c)]:[],...g?[pU(uU(g))]:[]];return VT(t.format===`feePayer`?`0x78`:`0x76`,mO(x))}function eW(e,t={}){let n=tW(e,{presign:!0});return t.from?RE(VT(`0x04`,n,yU(t.from))):n}function tW(e,t={}){return RE($U({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function nW(e,t){let n=yU(t.sender);return RE($U({...e,signature:void 0},{sender:n,format:`feePayer`}))}var rW=class extends V{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},iW=class extends V{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};dE();function aW(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:zz(e)}function oW(e){try{return aW(e)===`tempo`}catch{return!1}}function sW(e){let t=U(e,0,1);return t===`0x76`||t===`0x78`?lW(e):OH(e)}async function cW(e,t){if(!oW(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 WV(e,{r:H(n,{size:32}),s:H(r,{size:32}),yParity:i})}return WV(e,t)}if(aW(e)===`tempo`)return uW(e,t);throw Error(`Unsupported transaction type`)}function lW(e){let{feePayerSignature:t,nonce:n,...r}=ZU(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:H(t.r,{size:32}),s:H(t.s,{size:32}),yParity:t.yParity}}}async function uW(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return uU({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=QU(c,{signature:n}),r=nW(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return ik({payload:eW(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return $U(t,{feePayerSignature:CO(await e.feePayer.sign({hash:r}))})}return i===!0?n?$U(c,{format:`feePayer`,sender:e.from,signature:n}):$U(c,{feePayerSignature:null}):$U({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}dE(),bI(),rz();function dW(e){if(!oW(e))return _z(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=qU(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:H(t.r,{size:32}),s:H(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:GU[i.type],type:i.type}}function fW(e){return EV(e)}function pW(e,t){let n=e,r=n.account?yI(n.account):void 0;if(!oW(n))return $R(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=JU({...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`?yI(n.feePayer):n.feePayer}:{}}}let mW=new Map;async function hW(e){mW.set(e,(mW.get(e)??0)+1),await Promise.resolve();let t=(mW.get(e)??0)>1;return queueMicrotask(()=>{let t=mW.get(e)??0;t<=1?mW.delete(e):mW.set(e,t-1)}),t}lz(),rz();let gW=rH({blockTime:1e3,extendSchema:iH(),formatters:{transaction:vz({exclude:[`aaAuthorizationList`],format:dW}),transactionReceipt:DV({format:fW}),transactionRequest:nz({format:pW})},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 hW(e):!1})()?(n.nonceKey=cz,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)=>cW(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=lU(i);if(a.type!==`keychain`){let i=await LV(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return hU(a,{address:n,payload:r})}}return await QN(e,GH,`verifyHash`)({...t,chain:null})},id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),Z=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],_W=[{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:[]}],vW=[{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`}]}],yW=`0xdec0000000000000000000000000000000000000`;function Q(e){return{...e,data:wI(e),to:e.address}}dE(),bI();async function bW(e,t){return bW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return Q({address:yW,abi:_W,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(bW||={});async function xW(e,t){return xW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return Q({address:yW,abi:_W,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=eB({abi:_W,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(xW||={});async function SW(e,t){return SW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return Q({address:yW,abi:_W,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=eB({abi:_W,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(SW||={});async function CW(e,t){return CW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return Q({address:yW,abi:_W,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=eB({abi:_W,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(CW||={});async function wW(e,t){let{account:n=e.account,token:r,...i}=t,a=n?yI(n).address:void 0;if(!a)throw Error(`account is required.`);return lV(e,{...i,...wW.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return Q({address:yW,abi:_W,args:[t,n],functionName:`balanceOf`})}e.call=t})(wW||={});async function TW(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return lV(e,{...a,...TW.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return Q({address:yW,abi:_W,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(TW||={});async function EW(e,t){let{orderId:n,...r}=t;return lV(e,{...r,...EW.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return Q({address:yW,abi:_W,args:[t],functionName:`getOrder`})}e.call=t})(EW||={});async function DW(e,t){let{base:n,quote:r,...i}=t;return lV(e,{...i,...DW.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return Q({address:yW,abi:_W,args:[PW(t,n)],functionName:`books`})}e.call=t})(DW||={});async function OW(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await lV(e,{...a,...OW.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return Q({address:yW,abi:_W,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(OW||={});async function kW(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return lV(e,{...a,...kW.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return Q({address:yW,abi:_W,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(kW||={});async function AW(e,t){return AW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return Q({address:yW,abi:_W,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=eB({abi:_W,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(AW||={});async function jW(e,t){return jW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return Q({address:yW,abi:_W,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=eB({abi:_W,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})(jW||={});async function MW(e,t){return MW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return Q({address:yW,abi:_W,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(MW||={});async function NW(e,t){return NW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return Q({address:yW,abi:_W,functionName:`withdraw`,args:[t,n]})}e.call=n})(NW||={});function PW(e,t){return RE(VT(e,t))}dE(),bI(),TI();async function FW(e,t){let{token:n,...r}=t;return FW.inner(SV,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return Q({address:HU(r),abi:Z,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(FW||={});async function IW(e,t){return IW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return Q({address:HU(r),abi:Z,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(IW||={});async function LW(e,t){return LW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,KT(n,32)]}:{functionName:`burn`,args:[t]};return Q({address:HU(r),abi:Z,...i})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(LW||={});async function RW(e,t){return RW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return Q({address:HU(t),abi:Z,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(RW||={});async function zW(e,t){return zW.inner(SV,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?yI(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=JT(32)}=e;return Q({address:`0x20fc000000000000000000000000000000000000`,abi:vW,args:[t,n,r,HU(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=eB({abi:vW,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(zW||={});async function BW(e,t){let{account:n=e.account}=t,r=n?yI(n).address:void 0;if(!r)throw Error(`account is required.`);return lV(e,{...t,...BW.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return Q({address:HU(r),abi:Z,functionName:`allowance`,args:[t,n]})}e.call=t})(BW||={});async function VW(e,t){let{account:n=e.account,...r}=t,i=n?yI(n).address:void 0;if(!i)throw Error(`account is required.`);return lV(e,{...r,...VW.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return Q({address:HU(n),abi:Z,functionName:`balanceOf`,args:[t]})}e.call=t})(VW||={});async function HW(e,t){return lV(e,{...t,...HW.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return Q({address:HU(n),abi:Z,functionName:`getRoleAdmin`,args:[WU(t)]})}e.call=t})(HW||={});async function UW(e,t){let{account:n=e.account}=t,r=n?yI(n).address:void 0;if(!r)throw Error(`account is required.`);return lV(e,{...t,...UW.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return Q({address:HU(r),abi:Z,functionName:`hasRole`,args:[t,WU(n)]})}e.call=t})(UW||={});async function WW(e,t){return WW.inner(xV,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:wI(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=WU(r);return Q({address:HU(t),abi:Z,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=eB({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(WW||={});async function GW(e,t){return GW.inner(SV,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,KT(r,32)]}:{functionName:`mint`,args:[t,n]};return Q({address:HU(i),abi:Z,...a})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(GW||={});async function KW(e,t){return KW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:HU(t),abi:Z,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(KW||={});async function qW(e,t){return qW.inner(xV,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:wI(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=WU(n);return Q({address:HU(t),abi:Z,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=eB({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(qW||={});async function JW(e,t){return JW.inner(xV,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:wI(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=WU(r);return Q({address:HU(t),abi:Z,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=eB({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(JW||={});async function YW(e,t){return YW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return Q({address:HU(t),abi:Z,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(YW||={});async function XW(e,t){return XW.inner(SV,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=WU(n),a=WU(r);return Q({address:HU(t),abi:Z,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(XW||={});async function ZW(e,t){return ZW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,KT(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,KT(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return Q({address:HU(i),abi:Z,...o})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(ZW||={});async function QW(e,t){return QW.inner(SV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:HU(t),abi:Z,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(QW||={});async function $W(e,t){return $W.inner(SV,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return Q({address:HU(t),abi:Z,functionName:`setNextQuoteToken`,args:[HU(n)]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})($W||={});async function eG(e,t){return eG.inner(SV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:HU(t),abi:Z,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=eB({abi:Z,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(eG||={});function tG(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return $H({key:tG.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(sW(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:tG.type})}}function nG(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 yI(r)}}function rG(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=IV({chain:i.chain,transport:tG(tU(e),tU(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?tG(tU(a),tU(n)):tU(a);return IV({chain:{...t,id:r},transport:o})}}let iG=U(RE(_E(`mpp`),{as:`Hex`}),0,4);function aG(e){return QT(U(RE(_E(e),{as:`Hex`}),0,10))}function oG(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(QT(iG),0),i[4]=1,i.set(aG(t),5),n&&i.set(aG(n),15),i.set(sG(r),25),WT(i)}function sG(e){return QT(U(RE(_E(e),{as:`Hex`}),0,7))}function cG(e,t){return e.toLowerCase()===t.toLowerCase()}let lG={mainnet:4217,testnet:42431},uG={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};lG.mainnet,uG.usdc,lG.testnet,uG.pathUsd;let dG={[lG.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[lG.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},fG={[lG.mainnet]:`https://rpc.tempo.xyz`,[lG.testnet]:`https://rpc.moderato.tempo.xyz`},pG=[uG.pathUsd,uG.usdc];async function mG(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!cG(e,i)),c=await Promise.allSettled([lV(e,VW.call({account:n,token:i})),...s.map(t=>lV(e,VW.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 TW(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[FW.call({token:l,spender:yW,amount:e}),bW.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new gG({currency:i})}}function hG(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>cG(e,t)))]:t,slippage:e.slippage??1}:!1}var gG=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function _G(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 vG={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function yG(e){return{name:`MPP`,version:`2`,chainId:e}}function bG(e,t){return{challengeId:e,realm:t}}function xG(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let SG=[`push`,`pull`],CG=QA({amount:_j(),memo:G(yj()),recipient:pj(HA(),uj(e=>e))}),wG=SM({name:`tempo`,intent:`charge`,schema:{credential:{payload:nj(`type`,[QA({hash:yj(),type:cj(`hash`)}),QA({signature:bj(),type:cj(`transaction`)}),QA({signature:bj(),type:cj(`proof`)})])},request:pj(QA({amount:_j(),chainId:G(WA()),currency:HA(),decimals:WA(),description:G(HA()),externalId:G(HA()),feePayer:G(pj(ej([KA(),hj()]),uj(e=>typeof e==`object`?!0:e))),memo:G(yj()),recipient:G(HA()),splits:G(XA(CG).check(IA(1),FA(10))),supportedModes:G(XA(oj(SG)).check(IA(1)))}).check(gj(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=zH(e,t),i=n.reduce((e,n)=>e+zH(n.amount,t),0n);return n.every(e=>zH(e.amount,t)>0n)&&i<r},`Invalid splits`)),uj(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:zH(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:zH(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),TG=SM({name:`tempo`,intent:`session`,schema:{credential:{payload:nj(`action`,[QA({action:cj(`open`),authorizedSigner:G(HA()),channelId:yj(),cumulativeAmount:_j(),signature:bj(),transaction:bj(),type:cj(`transaction`)}),QA({action:cj(`topUp`),additionalDeposit:_j(),channelId:yj(),transaction:bj(),type:cj(`transaction`)}),QA({action:cj(`voucher`),channelId:yj(),cumulativeAmount:_j(),signature:bj()}),QA({action:cj(`close`),channelId:yj(),cumulativeAmount:_j(),signature:bj()})])},request:pj(QA({amount:_j(),chainId:G(WA()),channelId:G(yj()),currency:HA(),decimals:WA(),escrowContract:G(HA()),feePayer:G(pj(ej([KA(),hj()]),uj(e=>typeof e==`object`?!0:e))),minVoucherDelta:G(_j()),recipient:G(HA()),suggestedDeposit:G(_j()),unitType:HA()}).check(gj(({amount:e,decimals:t})=>zH(e,t)>0n,`Session amount must be greater than 0`)),uj(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:zH(e,r).toString(),...s?{suggestedDeposit:zH(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:zH(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function EG(e={}){let{clientId:t}=e,n=rG({chain:gW,getClient:e.getClient,rpcUrl:fG}),r=nG({account:e.account});return CM(wG,{context:QA({account:G(hj()),autoSwap:G(hj()),mode:G(oj(SG))}),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 xM({challenge:i,payload:{signature:await QH(s,{account:c,domain:yG(o),types:vG,primaryType:`Proof`,message:bG(i.id,i.realm)}),type:`proof`},source:xG({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:oG({challengeId:i.id,clientId:t,serverId:i.realm}),g=_G({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>ZW.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=hG(a?.autoSwap??e.autoSwap,pG),v=[...(_?await mG(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 XH(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return xM({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Kz(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,xM({challenge:i,payload:{signature:await ZH(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function DG(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let OG={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function kG(e,t,n,r,i,a){let o=await QH(e,{account:t,domain:DG(r,i),types:OG,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=uU(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return DO(e.inner.signature)}catch{}return o}function AG(e){return RE(YD(ZD([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let jG=[{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 MG(e,t,n){return lV(e,{address:t,abi:jG,functionName:`getChannel`,args:[n]})}hI({abi:jG,name:`open`}),hI({abi:jG,name:`topUp`});function NG(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??dG[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function PG(e,t,n,r){return xM({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function FG(e,t,n,r,i,a,o){let s=await kG(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function IG(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=JT(32),f=AG({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=wI({abi:Z,functionName:`approve`,args:[r,o]}),m=wI({abi:jG,functionName:`open`,args:[i,a,o,d,u]}),h=await Kz(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await ZH(e,h),_=await kG(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 LG(e,t,n,r){try{let i=await MG(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 RG=QA({account:G(hj()),action:G(oj([`open`,`topUp`,`voucher`,`close`])),channelId:G(HA()),cumulativeAmount:G(_j()),cumulativeAmountRaw:G(HA()),transaction:G(HA()),authorizedSigner:G(HA()),additionalDeposit:G(_j()),additionalDepositRaw:G(HA()),depositRaw:G(HA())});function zG(e={}){let{decimals:t=6}=e,n=rG({chain:gW,getClient:e.getClient,rpcUrl:fG}),r=nG({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:zH(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 NG(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 zH(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 LG(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?zH(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 FG(g,f,te.channelId,te.cumulativeAmount,_,h,C),l(te);else{let e=await IG(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 PG(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?zH(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?zH(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 kG(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 FG(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 kG(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 PG(e,S,u,r)}return CM(TG,{context:RG,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 BG(e){let t=XO(e);return JSON.parse(t)}function VG(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 HG(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function UG(){return JSON.stringify({mpp:`payment-close-request`})}function WG(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`&&GG(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`&&KG(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&GG(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function GG(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function KG(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let qG={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function JG(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:zH(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,_=zG({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=nM({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);re(t),re(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function C(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function w(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function ne(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function re(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ie(e){let t=e.headers.get(`Payment-Receipt`),n=t?BG(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=qG.CLOSED,r=null}if(e===`open`&&(i=qG.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:{...iM(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=VG(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);re(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let ne=jj(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!ne)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=ne;let ie=await _.createCredential({challenge:ne,context:{}});d=null,c=ne,h=0n,g=BigInt(ne.request.amount);let ae=vM(ie);l=ae.payload.channelId;let se=new n(v,f);u=se;let ce=oe(se),le=e=>{w(Error(e)),te(Error(e)),(se.readyState===qG.CONNECTING||se.readyState===qG.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=WG(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(HG(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(HG(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===qG.OPEN){let t=d??await(async()=>(u.send(UG()),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(HG(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?BG(m):void 0}}}function YG(e={}){return[EG(e),zG(e)]}(function(e){e.charge=EG,e.session=JG})(YG||={});function XG(e){return e}function ZG(){return XG({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return jj(e)},getChallenge(e){return Aj(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function QG(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=ZG()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=Lj(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=nM(l);return n&&rM(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=Vj(r,o,$G(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a;c.expires&&Dw(c.expires,c.id);let u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function $G(e,t){return t?typeof t==`string`?Rj(t):t:e}rt(),O(),Rr();let eK=`0x01`,tK=`0x02`,nK=`0x03`,rK=`0x04`,iK=`0x7777777777777777777777777777777777777777777777777777777777777777`;function aK(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:aK({...e,signature:t.inner}):ea(oK(e))}function oK(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return pl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return oK({payload:t,signature:n.inner})}}function sK(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?D(e,0,-Jr(iK)):e;if(Jr(t)===65){let e=fc(t);return uc(e),{signature:e,type:`secp256k1`}}let n=D(t,0,1),r=D(t,1),i=Jr(r);if(n===eK){if(i!==129)throw new hK({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:Xr(D(r,64,96)),y:Xr(D(r,96,128))},prehash:Zr(D(r,128,129))!==0,signature:{r:Xr(D(r,0,32)),s:Xr(D(r,32,64))},type:`p256`}}if(n===tK){if(i<128)throw new hK({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=D(r,0,e),a,o;for(let t=37;t<e;t++){let e=Qr(D(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=D(n,0,t),o=e;break}catch{}}if(!a||!o)throw new hK({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:Xr(D(r,e+64,e+96)),y:Xr(D(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:Xr(D(r,e,e+32)),s:Xr(D(r,e+32,e+64))},type:`webAuthn`}}if(n===nK||n===rK)return{userAddress:D(r,0,20),inner:sK(D(r,20)),type:`keychain`,version:n===rK?`v2`:`v1`};throw new hK({reason:`Unknown signature type identifier: ${n}. Expected ${eK} (P256), ${tK} (WebAuthn), ${nK} (Keychain V1), or ${rK} (Keychain V2)`,serialized:t})}function cK(e,t){if(typeof e==`string`)return sK(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=uK(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:ea(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:ea(pl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function lK(e){if(e.type===`secp256k1`)return{signature:gc(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Jr(t),r,i;for(let e=37;e<n;e++){let n=Qr(D(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=D(t,0,e),i=n;break}catch{}}if(!r||!i)throw new hK({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:lK(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new mK({envelope:e})}function uK(e){if(typeof e!=`object`||!e)throw new mK({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 mK({envelope:e})}function dK(e,t={}){let n=uK(e);if(n===`secp256k1`)return Br(vc(e.signature),t.magic?iK:`0x`);if(n===`p256`){let n=e;return Br(eK,E(n.signature.r,{size:32}),E(n.signature.s,{size:32}),E(n.publicKey.x,{size:32}),E(n.publicKey.y,{size:32}),E(+!!n.prehash,{size:1}),t.magic?iK:`0x`)}if(n===`webAuthn`){let n=e;return Br(tK,Br(n.metadata.authenticatorData,Wr(n.metadata.clientDataJSON)),E(n.signature.r,{size:32}),E(n.signature.s,{size:32}),E(n.publicKey.x,{size:32}),E(n.publicKey.y,{size:32}),t.magic?iK:`0x`)}if(n===`keychain`){let n=e;return Br(n.version===`v1`?nK:rK,n.userAddress,dK(n.inner),t.magic?iK:`0x`)}throw new mK({envelope:e})}function fK(e){let t=uK(e);if(t===`secp256k1`)return{...yc(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:E(t.publicKey.x,{size:32}),pubKeyY:E(t.publicKey.y,{size:32}),r:E(t.signature.r,{size:32}),s:E(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=Br(t.metadata.authenticatorData,Wr(t.metadata.clientDataJSON));return{pubKeyX:E(t.publicKey.x,{size:32}),pubKeyY:E(t.publicKey.y,{size:32}),r:E(t.signature.r,{size:32}),s:E(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:fK(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new mK({envelope:e})}function pK(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return ea(t.publicKey)})();if(!r)return!1;let i=cK(e);if(i.type===`secp256k1`)return r?hl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return ta(ea(i.publicKey),r)?Ll({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return ta(ea(i.publicKey),r)?zu({challenge:Vr(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new gK(`Unable to verify signature envelope of type \"${i.type}\".`)}var mK=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Ir(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},hK=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`})}},gK=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};rt(),O();function _K(e){return e.startsWith(`tempo`)?vK(e).address:e}function vK(e){if(!e.startsWith(`tempox`))throw new yK({address:e});let t=e.slice(6);return zr(t,{strict:!0}),{address:Qi(t)}}var yK=class extends T{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};O();function bK(e,t={}){if(typeof e.chainId==`string`)return xK(e);let n={...e,address:_K(e.address)};return t.signature?{...n,signature:t.signature}:n}function xK(e){let{address:t,chainId:n,nonce:r}=e,i=lK(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function SK(e){return e.map(e=>xK(e))}function CK(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=sK(i)),bK(a)}function wK(e){let t=[];for(let n of e)t.push(CK(n));return t}function TK(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:E(n),nonce:E(r),signature:fK(i)}}function EK(e){return e.map(e=>TK(e))}function DK(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?dK(e.signature):void 0;return[n?E(n):`0x`,t,r?E(r):`0x`,...i?[i]:[]]}function OK(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(DK(n));return t}O();function kK(e,t={}){if(`keyId`in e)return AK(e);let n=e,r={...n,address:_K(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:_K(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:_K(e.address),selector:VK(e.selector),...e.recipients?{recipients:e.recipients.map(e=>_K(e))}:{}}))}:{}};return t.signature?{...r,signature:cK(t.signature)}:r}function AK(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=lK(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:BK(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&&zK(e.period)>0?{period:zK(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function jK(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:zK(o)||void 0,type:l,chainId:r===`0x`?0n:Xr(r),...o===void 0?{}:{expiry:zK(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:RK(n),...r===void 0?{}:{period:zK(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=sK(n)),kK(u)}function MK(e){return NK(e)}function NK(e){let[t]=FK(e);return Fi(fo(t))}function PK(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:VK(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:E(r),expiry:typeof i==`number`?E(i):null,keyId:_K(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:E(t),...n?{period:LK(n)}:{}})),signature:fK(s),...c?{allowedCalls:c}:{}}}function FK(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?dK(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,IK(e.limit)];return e.period&&e.period>0&&t.push(LK(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([VK(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[IK(n),s,t,i!=null&&i!==0||c||l?LK(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function IK(e){return e===0n?`0x`:E(e)}function LK(e){return e===0?`0x`:E(e)}function RK(e){return e===`0x`?0n:BigInt(e)}function zK(e){return e===`0x`?0:Zr(e)}function BK(e){return typeof e==`string`?e:Array.isArray(e)?Ur(new Uint8Array(e)):e}function VK(e){if(e)return e.startsWith(`0x`)?e:ua(e)}O();let HK=`0x20c0`;function UK(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):WK(e)}function WK(e){let t=_K(e);if(!t.toLowerCase().startsWith(HK))throw Error(`invalid tip20 address.`);return Xr(D(t,6))}function GK(e){if(typeof e==`string`){let t=_K(e);return Zi(t),t}return Br(HK,E(e,{size:18}))}O();let KK={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function qK(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Fi(Wr(KK[e]??e))}let JK={...Vc,tempo:`0x76`},YK={...Hc,\"0x76\":`tempo`};function XK(e,t={}){if(!e)return null;let n=Uc(e);return n.type=YK[e.type],e.aaAuthorizationList&&(n.authorizationList=SK(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=lK(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=AK(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=gc(e.feePayerSignature),n.feePayerSignature.v=Sc(n.feePayerSignature.yParity)),n}O();function ZK(e){let t=xu({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=EK(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?_K(e.to):e.to,value:e.value?E(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?_K(e.to):void 0,value:e.value?E(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=GK(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=PK(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=E(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=E(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return qr(6);if(typeof e.nonceKey==`bigint`)return E(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=JK.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}rt(),O();let QK=`tempo`;function $K(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new oq;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new sq({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&Zi(e.to,{strict:!1});if(n<=0)throw new Eu({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Tu({feeCap:r});if(i&&r&&i>r)throw new Ou({maxFeePerGas:r,maxPriorityFeePerGas:i})}function eq(e){let t=ao(D(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new Du({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:QK});let y={chainId:Number(n),type:QK};$r(a)&&a!==`0x`&&(y.gas=BigInt(a)),$r(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),$r(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),$r(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),$r(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),$r(u)&&u!==`0x`&&(y.validBefore=Number(u)),$r(d)&&d!==`0x`&&(y.validAfter=Number(d)),$r(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=no(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=wK(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||na(p)?(y.feePayerSignature=null,na(p)&&(y.from=p)):y.feePayerSignature=_c(p)),_&&(y.keyAuthorization=jK(_));let b=v?sK(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=aK({payload:rq(tq(y)),signature:b,root:!0})}catch{}return $K(y),y}function tq(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?eq(e):e;return i.from&&=_K(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:_K(e.to)}:{}})),$K(i),{...i,...r?{signature:cK(r)}:{},...n?{feePayerSignature:mc(n)}:{},type:`tempo`}}function nq(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;$K(e);let h=ro(n),g=t.signature||e.signature,_=OK(r),v=i.map(e=>[e.to?_K(e.to):`0x`,e.value?E(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=cK(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return ea(t.publicKey);if(t.type===`secp256k1`)return fl({payload:rq(tq(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?bc(n):`0x`})(),x=[E(a),f?E(f):`0x`,d?E(d):`0x`,s?E(s):`0x`,v,h,u?E(u):`0x`,l?E(l):`0x`,typeof p==`number`?E(p):`0x`,typeof m==`number`?E(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?GK(o):`0x`,b,_,...c?[FK(c)]:[],...g?[dK(cK(g))]:[]];return Br(t.format===`feePayer`?`0x78`:`0x76`,fo(x))}function rq(e,t={}){let n=iq(e,{presign:!0});return t.from?Fi(Br(`0x04`,n,_K(t.from))):n}function iq(e,t={}){return Fi(nq({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function aq(e,t){let n=_K(t.sender);return Fi(nq({...e,signature:void 0},{sender:n,format:`feePayer`}))}var oq=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},sq=class extends T{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};O();function cq(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:av(e)}function lq(e){try{return cq(e)===`tempo`}catch{return!1}}function uq(e){let t=D(e,0,1);return t===`0x76`||t===`0x78`?fq(e):Kb(e)}async function dq(e,t){if(!lq(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return $y(e,{r:E(n,{size:32}),s:E(r,{size:32}),yParity:i})}return $y(e,t)}if(cq(e)===`tempo`)return pq(e,t);throw Error(`Unsupported transaction type`)}function fq(e){let{feePayerSignature:t,nonce:n,...r}=eq(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:E(t.r,{size:32}),s:E(t.s,{size:32}),yParity:t.yParity}}}async function pq(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return cK({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=tq(c,{signature:n}),r=aq(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return fl({payload:rq(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return nq(t,{feePayerSignature:mc(await e.feePayer.sign({hash:r}))})}return i===!0?n?nq(c,{format:`feePayer`,sender:e.from,signature:n}):nq(c,{feePayerSignature:null}):nq({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}O(),Bm(),C_();function mq(e){if(!lq(e))return L_(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=XK(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:E(t.r,{size:32}),s:E(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:JK[i.type],type:i.type}}function hq(e){return By(e)}function gq(e,t){let n=e,r=n.account?zm(n.account):void 0;if(!lq(n))return y_(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=ZK({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?zm(n.feePayer):n.feePayer}:{}}}let _q=new Map;async function vq(e){_q.set(e,(_q.get(e)??0)+1),await Promise.resolve();let t=(_q.get(e)??0)>1;return queueMicrotask(()=>{let t=_q.get(e)??0;t<=1?_q.delete(e):_q.set(e,t-1)}),t}k_(),C_();let yq={blockTime:1e3,extendSchema:pb(),formatters:{transaction:R_({exclude:[`aaAuthorizationList`],format:mq}),transactionReceipt:Vy({format:hq}),transactionRequest:S_({format:gq})},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 vq(e):!1})()?(n.nonceKey=O_,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>dq(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=sK(i);if(a.type!==`keychain`){let i=await Ky(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return pK(a,{address:n,payload:r})}}return await _f(e,cx,`verifyHash`)({...t,chain:null})}},bq=fb({...yq,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`]}}}),xq=fb({...yq,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`]}}}),Sq=fb({...yq,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),Cq=fb({...yq,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),$=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],wq=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];O(),Bm(),Lp();function Tq(e){let{access:t}=e;return t?Nq(e):Mq(e)}function Eq(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Fl({privateKey:e});return Tq({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Lu({...t,challenge:n,rpId:r,origin:i});return dK({metadata:a,signature:Il({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function Dq(e,t={}){let{access:n,internal_version:r}=t,i=Fl({privateKey:e});return Tq({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return dK({signature:Il({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function Oq(e,t={}){let{access:n,internal_version:r}=t;return Tq({access:n,internal_version:r,keyType:`secp256k1`,publicKey:dl({privateKey:e}),async sign(t){let{hash:n}=t;return vc(ml({payload:n,privateKey:e}))}})}function kq(e,t={}){let{id:n}=e,r=Hi(e.publicKey);return Tq({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Ru({...t,challenge:e,credentialId:n});return dK({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function Aq(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return Tq({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return dK({signature:await Vu({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function jq(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??ea(e.publicKey),o=Wi(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Ip(Br(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?dK(cK({userAddress:n,inner:cK(o),type:`keychain`,version:i})):t===`secp256k1`?o:Br(o,iK)}return{address:Qi(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=cK(await s({hash:Xg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:E(a,{size:32}),s:E(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Tb(t)})},async signTransaction(e,t){let{serializer:n=dq}=t??{};return await n(e,cK(await s({hash:Ip(await n(e))})))},async signTypedData(e){return await s({hash:Mb(e)})},publicKey:o,source:r,type:`local`}}function Mq(e){let t=jq(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return kK({address:o,chainId:r,expiry:i,limits:a,signature:cK(await t.sign({hash:MK({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function Nq(e){let{access:t}=e,{address:n}=zm(t);return{...jq({...e,parentAddress:n}),accessKeyAddress:ea(e.publicKey),source:`accessKey`}}function Pq(e){return{...e,data:Wm(e),to:e.address}}O(),Bm(),Gm();async function Fq(e,t){let{token:n,...r}=t;return Fq.inner(Ly,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return Pq({address:GK(r),abi:$,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(Fq||={});async function Iq(e,t){return Iq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return Pq({address:GK(r),abi:$,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(Iq||={});async function Lq(e,t){return Lq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Gr(n,32)]}:{functionName:`burn`,args:[t]};return Pq({address:GK(r),abi:$,...i})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(Lq||={});async function Rq(e,t){return Rq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return Pq({address:GK(t),abi:$,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(Rq||={});async function zq(e,t){return zq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?zm(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=qr(32)}=e;return Pq({address:`0x20fc000000000000000000000000000000000000`,abi:wq,args:[t,n,r,GK(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=bv({abi:wq,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(zq||={});async function Bq(e,t){let{account:n=e.account}=t,r=n?zm(n).address:void 0;if(!r)throw Error(`account is required.`);return ky(e,{...t,...Bq.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return Pq({address:GK(r),abi:$,functionName:`allowance`,args:[t,n]})}e.call=t})(Bq||={});async function Vq(e,t){let{account:n=e.account,...r}=t,i=n?zm(n).address:void 0;if(!i)throw Error(`account is required.`);return ky(e,{...r,...Vq.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return Pq({address:GK(n),abi:$,functionName:`balanceOf`,args:[t]})}e.call=t})(Vq||={});async function Hq(e,t){let{token:n,...r}=t,i=GK(n),a=$;return UK(n)===WK(`0x20c0000000000000000000000000000000000000`)?nx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):nx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function Uq(e,t){return ky(e,{...t,...Uq.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return Pq({address:GK(n),abi:$,functionName:`getRoleAdmin`,args:[qK(t)]})}e.call=t})(Uq||={});async function Wq(e,t){let{account:n=e.account}=t,r=n?zm(n).address:void 0;if(!r)throw Error(`account is required.`);return ky(e,{...t,...Wq.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return Pq({address:GK(r),abi:$,functionName:`hasRole`,args:[t,qK(n)]})}e.call=t})(Wq||={});async function Gq(e,t){return Gq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=qK(r);return Pq({address:GK(t),abi:$,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Gq||={});async function Kq(e,t){return Kq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Gr(r,32)]}:{functionName:`mint`,args:[t,n]};return Pq({address:GK(i),abi:$,...a})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(Kq||={});async function qq(e,t){return qq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Pq({address:GK(t),abi:$,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(qq||={});async function Jq(e,t){return Jq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=qK(n);return Pq({address:GK(t),abi:$,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Jq||={});async function Yq(e,t){return Yq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=qK(r);return Pq({address:GK(t),abi:$,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Yq||={});async function Xq(e,t){return Xq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return Pq({address:GK(t),abi:$,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(Xq||={});async function Zq(e,t){return Zq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=qK(n),a=qK(r);return Pq({address:GK(t),abi:$,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(Zq||={});async function Qq(e,t){return Qq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Gr(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Gr(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return Pq({address:GK(i),abi:$,...o})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(Qq||={});async function $q(e,t){return $q.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Pq({address:GK(t),abi:$,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})($q||={});async function eJ(e,t){return eJ.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return Pq({address:GK(t),abi:$,functionName:`setNextQuoteToken`,args:[GK(n)]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(eJ||={});async function tJ(e,t){return tJ.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Pq({address:GK(t),abi:$,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(tJ||={});function nJ(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 rJ(e={}){let{account:t}=e,n=await Bu();return{accessKey:Aq(n,t?{access:t}:void 0),keyPair:n}}function iJ(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 aJ(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 oJ(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 sJ(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new nu({message:`Account \"${n}\" not found.`}):new iu({message:`No active account.`});if(t){let t=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(t){if(t.expiry&&t.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(e=>e!==t)});else if(uJ(t,e))return cJ(t)}}return lJ(l,{signable:r})}function cJ(e){if(`keyPair`in e&&e.keyPair)return Aq(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return Oq(e.privateKey,{access:e.access});case`p256`:return Dq(e.privateKey,{access:e.access})}throw new nu({message:`External access key cannot be hydrated for signing.`})}function lJ(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new nu({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return Oq(e.privateKey);case`p256`:return Dq(e.privateKey);case`webCrypto`:return Aq(e.keyPair);case`webAuthn`:return kq(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return Eq(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new nu({message:`Unknown key type.`})}}function uJ(e,t){return!t.calls||!e.scopes?!0:t.calls.every(t=>{if(!t.to)return!1;let n=t.to.toLowerCase(),r=t.data?.slice(0,10).toLowerCase();return e.scopes.some(e=>e.address.toLowerCase()===n?e.selector?r===(e.selector.startsWith(`0x`)&&e.selector.length===10?e.selector:to(e.selector)).toLowerCase():!0:!1)})}function dJ(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function fJ(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.`),dJ({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=vu();function c(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new tu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new tu({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let l=hu({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:bw});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await rJ();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){oJ({address:e,keyAuthorization:AK(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=nJ(n,{store:i});try{let e=await t(n,r??void 0);return aJ(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),iJ(n,{store:i});return}}let p=t({host:n,store:i,theme:o}),m=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);p?.syncRequests(t),t.length===0&&p?.close()});return{cleanup(){m(),p?.destroy()},actions:{async createAccount(e,t){let n=await u(e.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Xx(fw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await u(e?.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Xx(fw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await l.request(t)},async signTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=await fv(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async signTypedData(e,t){return await l.request(t)},async sendTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await fv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async sendTransactionSync(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await fv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[Xx(fw.authorizeAccessKey,r?r.request:t)]});return r&&d(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await l.request(t)},async deposit(e,t){return await l.request(t)},async send(e,t){return await l.request({...t,params:[Xx(gw.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let pJ=new Map;function mJ(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return gJ(r);if(r?.url)return gJ(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=pJ.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=gx(),r=i?hJ(i,t):t;u=Gy({chain:e,transport:o?_J(r,o,s):r,pollingInterval:1e3}),pJ.set(l,u)}return u}function hJ(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function gJ(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function _J(e,t,n){return r=>{let i=e(r),a=gx(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=uq(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 vJ(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(vJ.cache.get(n))return vJ.cache.get(n);let r=e().finally(()=>vJ.cache.delete(n));return vJ.cache.set(n,r),r}vJ.cache=new Map;function yJ(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function bJ(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=yJ(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let xJ;function SJ(){return xJ||=bJ(`keyval-store`,`keyval`),xJ}function CJ(e,t=SJ()){return t(`readonly`,t=>yJ(t.get(e)))}function wJ(e,t,n=SJ()){return n(`readwrite`,n=>(n.put(t,e),yJ(n.transaction)))}function TJ(e,t=SJ()){return t(`readwrite`,t=>(t.delete(e),yJ(t.transaction)))}function EJ(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 DJ(e={}){let t=typeof indexedDB<`u`?bJ(`tempo`,`store`):void 0;return EJ({async getItem(e){let n=await CJ(e,t);return n===null?null:n},async setItem(e,n){await wJ(e,n,t)},async removeItem(e){await TJ(e,t)}},e)}function OJ(e={}){let t=new Map;return EJ({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let kJ=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 AJ(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 jJ=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return jJ(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return jJ(t)(e)}}}},MJ=(e,t)=>(n,r,i)=>{let a={storage:AJ(()=>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 jJ(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},NJ=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},PJ=(e=>e?NJ(e):NJ);function FJ(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?DJ({key:`tempo`}):OJ({key:`tempo`})}=e;return PJ(kJ(MJ(()=>({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 IJ(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function LJ(e,t){let n=Jx(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new ru({message:`Unsupported method \"${t?.method}\".`}):new eu(-32602,`Invalid params: ${RJ(n.error.issues)}`)}return{...t,_decoded:n.data}}function RJ(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?RJ([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let zJ=new Set;function BJ(e={}){let{adapter:t=fJ(),chains:n=[bq,Cq,xq],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?DJ():OJ()}=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=FJ({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>sJ({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return mJ(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:s?.precedence}})(),store:c})}let f=t({getAccount:l,getClient:d,storage:o,store:c}),{actions:p}=f,m=mu();c.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>m.emit(`accountsChanged`,c.getState().accounts.map(e=>e.address))),c.subscribe(e=>e.chainId,e=>m.emit(`chainChanged`,E(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:E(c.getState().chainId)}):m.emit(`disconnect`,new iu)});function h(){if(c.getState().accounts.length===0)throw new iu({message:`No accounts connected.`})}function g(e){if(!f.persistAccounts)return e;let t=[...e];for(let e of c.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function _(e){if(e===!1)return!1;let t=typeof e==`string`?e:s?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let v=Object.assign(hu({...m,async request({method:t,params:r}){return await IJ(c),vJ(async()=>{let i;try{i=LJ(Sw,{method:t,params:r})}catch(e){if(!(e instanceof ru))throw e;return await mJ(void 0,{chains:n,store:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=c.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return E(c.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await p.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return c.setState({accounts:g(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=_(t.feePayer),a=e=>{let t=d({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return l({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=nJ(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...PK(n)}});return aJ(e,{store:c}),r}catch{return iJ(e,{store:c}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.signTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_sendTransactionSync`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransactionSync({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_signTypedData_v4`:{h();let[e,t]=i._decoded.params;return await p.signTypedData({address:e,data:t},i)}case`personal_sign`:{h();let[e,t]=i._decoded.params;return await p.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{h();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=_(t?.feePayer??(s?!0:void 0)),l={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=Br(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[Xx(YC,l)]}),Gr(E(c.getState().chainId),32),HJ);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[Xx(YC,l)]}),d=u.transactionHash,f=E(c.getState().chainId),m=Br(d,Gr(f,32),HJ);return{atomic:!0,capabilities:{sync:a},chainId:f,id:m,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=c.getState(),a=e?.account??t[r]?.address;if(!a)throw new iu({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new Zl({message:\"`tokens` is required.\"});let s=mJ(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([Vq(s,{account:a,token:e}),Hq(s,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:E(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(HJ.slice(2)))throw Error(\"`id` not supported\");zr(e);let t=D(e,0,32),r=E(Number(D(e,32,64))),a=await mJ(Number(r),{chains:n,store:c}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=c.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new nu({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(E(e.id))):n,o={};for(let e of a)o[E(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??qr(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new ru({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await p.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(h(),!p.revokeAccessKey)throw new ru({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await p.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!p.deposit)throw new ru({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new ru({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new cu({message:`Chain ${e} not configured.`});await p.switchChain?.({chainId:e}),c.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Ir({method:t,params:r})})}},{schema:bw}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return mJ(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,``)}`;zJ.has(e)||(zJ.add(e),Cw({info:{icon:t.icon??VJ,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&QG({methods:[YG({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let VJ=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,HJ=Fi(Wr(`TEMPO_5792`)),UJ={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},WJ={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},GJ={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var KJ=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let qJ={accent:new KJ(`accent`),background:new KJ(`background`),border:new KJ(`border`),foreground:new KJ(`foreground`),muted:new KJ(`muted`),negative:new KJ(`negative`),positive:new KJ(`positive`),surface:new KJ(`surface`),fontFamily:new KJ(`font-family`),fontSizeBase:new KJ(`font-size-base`),radius:new KJ(`radius`),spacingUnit:new KJ(`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: ${qJ.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 JJ(e){let t=new URL(location.href);t.searchParams.set(WJ.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 YJ(e){let t=document.getElementById(UJ.data),n=IT(t.textContent),r=t.getAttribute(GJ.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(GJ.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(GJ.challengeId),o=a?(i.removeAttribute(GJ.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(UJ.error)?.remove();return}let t=document.getElementById(UJ.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=UJ.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:JJ,vars:qJ}}let XJ=YJ(`tempo`),ZJ=String.raw,QJ=document.createElement(`style`);QJ.textContent=ZJ`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${XJ.vars.spacingUnit} * 8);\n }\n button {\n background: ${XJ.vars.accent};\n border-radius: ${XJ.vars.radius};\n color: ${XJ.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${XJ.vars.spacingUnit} * 4) calc(${XJ.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`,XJ.root.append(QJ);let $J=BJ({testnet:XJ.challenge.request.methodDetails?.chainId===Cq.id||XJ.challenge.request.methodDetails?.chainId===Sq.id}),eY=document.createElement(`button`);eY.innerHTML=`${XJ.text.pay===`Pay`?`Continue with`:XJ.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>`,eY.onclick=async()=>{try{XJ.error(),eY.disabled=!0;let e=await(async()=>{let e=await $J.request({method:`eth_accounts`});return e.length>0?e.at(0):(await $J.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await YG({account:e,getClient:e=>{let t=e.chainId??XJ.challenge.request.methodDetails?.chainId;return Gy({chain:[...$J?.chains??[],Cq,Sq].find(e=>e.id===t),transport:mx($J)})}})[0].createCredential({challenge:XJ.challenge,context:{}});await XJ.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;XJ.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{eY.disabled=!1}},XJ.root.appendChild(eY)})();</script>"