mppx 0.6.16 → 0.6.17

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 (36) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/Challenge.d.ts +0 -10
  3. package/dist/Challenge.d.ts.map +1 -1
  4. package/dist/Receipt.d.ts +0 -5
  5. package/dist/Receipt.d.ts.map +1 -1
  6. package/dist/stripe/server/internal/html.gen.d.ts +1 -1
  7. package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
  8. package/dist/stripe/server/internal/html.gen.js +1 -1
  9. package/dist/stripe/server/internal/html.gen.js.map +1 -1
  10. package/dist/tempo/internal/fee-token.d.ts +7 -0
  11. package/dist/tempo/internal/fee-token.d.ts.map +1 -0
  12. package/dist/tempo/internal/fee-token.js +44 -0
  13. package/dist/tempo/internal/fee-token.js.map +1 -0
  14. package/dist/tempo/server/Session.d.ts.map +1 -1
  15. package/dist/tempo/server/Session.js +2 -0
  16. package/dist/tempo/server/Session.js.map +1 -1
  17. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  18. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  19. package/dist/tempo/server/internal/html.gen.js +1 -1
  20. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  21. package/dist/tempo/session/Chain.d.ts +4 -0
  22. package/dist/tempo/session/Chain.d.ts.map +1 -1
  23. package/dist/tempo/session/Chain.js +19 -35
  24. package/dist/tempo/session/Chain.js.map +1 -1
  25. package/package.json +3 -3
  26. package/src/stripe/server/internal/html/node_modules/.bin/mppx +22 -0
  27. package/src/stripe/server/internal/html/node_modules/.bin/mppx.src +3 -2
  28. package/src/stripe/server/internal/html.gen.ts +1 -1
  29. package/src/tempo/internal/fee-token.test.ts +123 -0
  30. package/src/tempo/internal/fee-token.ts +51 -0
  31. package/src/tempo/server/Charge.test.ts +18 -2
  32. package/src/tempo/server/Session.ts +2 -0
  33. package/src/tempo/server/internal/html/node_modules/.bin/mppx +22 -0
  34. package/src/tempo/server/internal/html/node_modules/.bin/mppx.src +3 -2
  35. package/src/tempo/server/internal/html.gen.ts +1 -1
  36. package/src/tempo/session/Chain.ts +54 -42
@@ -1,3 +1,3 @@
1
1
  // Generated — do not edit.
2
- export const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t){return t.endsWith(`.local`)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let y={height:440,width:360};function b(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function x(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function S(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let ee,C,w,te=[];function ne(){return typeof window>`u`?ie():b({name:`iframe`},e=>{let{host:t}=e;if(ee&&ee.host===t){let t=C;return C=e.store,t&&t!==C&&!te.includes(t)&&te.push(t),w?.destroy(),w=re()(e),ee.instance.syncTheme(e.theme),ee.instance}ee?.instance.destroy(),C=e.store,w=re()(e);let n=!1,r=ue(),i=new URL(t);i.searchParams.set(`chainId`,String(C.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),v(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(C,te,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ce(e)}),e.on(`sync`,({valid:e})=>{e===!1&&C?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),ne(),n=!1,l=!0;let e=C?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&w?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,y=()=>se(C),b=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});b.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,ne=()=>{x&&(x=!1,a.removeEventListener(`cancel`,y),a.removeEventListener(`click`,y),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{x||(x=!0,a.addEventListener(`cancel`,y),a.addEventListener(`click`,y),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},de=!1,fe=()=>{de||(de=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(de){de=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},me={close(){w.close(),n=!1,pe(),ne()},destroy(){ee?.instance===me&&(ee=void 0),w?.close(),n=!1,ne(),pe(),w?.destroy(),f.destroy(),a.remove(),b.disconnect(),C=void 0,w=void 0,te=[]},open(){n||(n=!0,fe(),ie())},async syncRequests(e){if(l){w.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(S()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){w.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),w.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:le(C),chainId:C.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return ee={host:t,instance:me},me})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=y}=e;return b({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=ue(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),v(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:le(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ie(){return b({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){if(!C)return;let{accounts:t}=C.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function le(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ue(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var de=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function fe(e,t){return e.exec(t)?.groups}let pe=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,me=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,he=/^\\(.+?\\).*?$/,ge=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function _e(e){let t=e.type;if(ge.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=_e(i),r<n-1&&(t+=`, `)}let r=fe(ge,e.type);return t+=`)${r?.array||``}`,_e({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function ve(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=_e(i),r!==n-1&&(t+=`, `)}return t}function ye(e){return e.type===`function`?`function ${e.name}(${ve(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ve(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ve(e.inputs)})`:e.type===`error`?`error ${e.name}(${ve(e.inputs)})`:e.type===`constructor`?`constructor(${ve(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let be=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function xe(e){return be.test(e)}function Se(e){return fe(be,e)}let Ce=new Set([`memory`,`indexed`,`storage`,`calldata`]),we=new Set([`calldata`,`memory`,`storage`]);var Te=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Ee=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},De=class extends de{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Oe=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},ke=class extends de{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Ae=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},je=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Me=class extends de{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Ne=class extends de{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Pe=class extends de{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Fe=class extends de{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},Ie=class extends de{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Le(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Re=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),ze=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Be=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ve=/^u?int$/;function He(e,t){let n=Le(e,t?.type,t?.structs);if(Re.has(n))return Re.get(n);let r=he.test(e),i=fe(r?Be:ze,e);if(!i)throw new Oe({param:e});if(i.name&&Ke(i.name))throw new ke({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=Ue(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(He(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ve.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!We(c))throw new Ee({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Ae({param:e,type:t?.type,modifier:i.modifier});if(we.has(i.modifier)&&!qe(c,!!i.array))throw new je({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Re.set(n,u),u}function Ue(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?Ue(o,[...t,n.trim()]):Ue(o,t,`${n}${i}`,r);case`(`:return Ue(o,t,`${n}${i}`,r+1);case`)`:return Ue(o,t,`${n}${i}`,r-1);default:return Ue(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Ie({current:n,depth:r});return t.push(n.trim()),t}function We(e){return e===`address`||e===`bool`||e===`function`||e===`string`||pe.test(e)||me.test(e)}let Ge=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Ke(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||pe.test(e)||me.test(e)||Ge.test(e)}function qe(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Je(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!xe(n))continue;let i=Se(n);if(!i)throw new Ne({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=He(t,{type:`struct`});o.push(n)}if(!o.length)throw new Pe({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Xe(a,t)}return r}let Ye=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Xe(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(he.test(i.type))r.push(i);else{let e=fe(Ye,i.type);if(!e?.type)throw new Me({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fe({type:o});r.push({...i,type:`tuple${a??``}`,components:Xe(t[o],t,new Set([...n,o]))})}else if(We(o))r.push(i);else throw new Te({type:o})}}return r}function Ze(e){let t=[];if(typeof e==`string`){let n=Ue(e),r=n.length;for(let e=0;e<r;e++)t.push(He(n[e],{modifiers:Ce}))}else{let n=Je(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(xe(r))continue;let a=Ue(r),o=a.length;for(let e=0;e<o;e++)t.push(He(a[e],{modifiers:Ce,structs:n}))}}if(t.length===0)throw new De({params:e});return t}var Qe,$e=o((()=>{Qe=`0.1.1`}));function et(){return Qe}var tt=o((()=>{$e()}));function nt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?nt(e.cause,t):t?null:e}var T,rt=o((()=>{tt(),T=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return nt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${et()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),it,at=o((()=>{it=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function ot(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function st(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function ct(e,...t){if(!ot(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function lt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);st(e.outputLen),st(e.blockLen)}function ut(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function dt(e,t){ct(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ft(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function pt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function mt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ht(e,t){return e<<32-t|e>>>t}function gt(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function _t(e){for(let t=0;t<e.length;t++)e[t]=gt(e[t]);return e}function vt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function yt(e){return typeof e==`string`&&(e=vt(e)),ct(e),e}function bt(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];ct(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function xt(e){let t=t=>e().update(yt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function St(e){let t=(t,n)=>e(n).update(yt(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ct(e=32){if(it&&typeof it.getRandomValues==`function`)return it.getRandomValues(new Uint8Array(e));if(it&&typeof it.randomBytes==`function`)return Uint8Array.from(it.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var wt,Tt,Et,Dt=o((()=>{at(),wt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Tt=wt?e=>e:_t,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Et=class{}})),Ot,kt,At=o((()=>{Dt(),Ot=class extends Et{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lt(e);let n=yt(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),pt(i)}update(e){return ut(this),this.iHash.update(e),this}digestInto(e){ut(this),ct(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kt=(e,t,n)=>new Ot(e,t).update(n).digest(),kt.create=(e,t)=>new Ot(e,t)}));function jt(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Mt(e,t,n){return e&t^~e&n}function Nt(e,t,n){return e&t^e&n^t&n}var Pt,Ft,It,Lt,Rt=o((()=>{Dt(),Pt=class extends Et{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=mt(this.buffer)}update(e){ut(this),e=yt(e),ct(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=mt(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ut(this),dt(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,pt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;jt(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=mt(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ft=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),It=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function zt(e,t=!1){return t?{h:Number(e&Ht),l:Number(e>>Ut&Ht)}:{h:Number(e>>Ut&Ht)|0,l:Number(e&Ht)|0}}function Bt(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=zt(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function Vt(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn=o((()=>{Ht=BigInt(2**32-1),Ut=BigInt(32),Wt=(e,t,n)=>e>>>n,Gt=(e,t,n)=>e<<32-n|t>>>n,Kt=(e,t,n)=>e>>>n|t<<32-n,qt=(e,t,n)=>e<<32-n|t>>>n,Jt=(e,t,n)=>e<<64-n|t>>>n-32,Yt=(e,t,n)=>e>>>n-32|t<<64-n,Xt=(e,t,n)=>e<<n|t>>>32-n,Zt=(e,t,n)=>t<<n|e>>>32-n,Qt=(e,t,n)=>t<<n-32|e>>>64-n,$t=(e,t,n)=>e<<n-32|t>>>64-n,en=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),tn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,nn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),rn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,an=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),on=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function cn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=xn(a,o,1)^n[r],c=Sn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=gn[n],a=xn(t,i,r),o=Sn(t,i,r),s=hn[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=yn[r],e[1]^=bn[r]}pt(n)}var ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn=o((()=>{sn(),Dt(),ln=BigInt(0),un=BigInt(1),dn=BigInt(2),fn=BigInt(7),pn=BigInt(256),mn=BigInt(113),hn=[],gn=[],_n=[];for(let e=0,t=un,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],hn.push(2*(5*r+n)),gn.push((e+1)*(e+2)/2%64);let i=ln;for(let e=0;e<7;e++)t=(t<<un^(t>>fn)*mn)%pn,t&dn&&(i^=un<<(un<<BigInt(e))-un);_n.push(i)}vn=Bt(_n,!0),yn=vn[0],bn=vn[1],xn=(e,t,n)=>n>32?Qt(e,t,n):Xt(e,t,n),Sn=(e,t,n)=>n>32?$t(e,t,n):Zt(e,t,n),Cn=class e extends Et{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,st(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ft(this.state)}clone(){return this._cloneInto()}keccak(){Tt(this.state32),cn(this.state32,this.rounds),Tt(this.state32),this.posOut=0,this.pos=0}update(e){ut(this),e=yt(e),ct(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ut(this,!1),ct(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return st(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dt(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,pt(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},wn=(e,t,n)=>xt(()=>new Cn(t,e,n)),wn(6,144,224/8),wn(6,136,256/8),wn(6,104,384/8),wn(6,72,512/8),wn(1,144,224/8),Tn=wn(1,136,256/8),wn(1,104,384/8),wn(1,72,512/8),En=(e,t,n)=>St((r={})=>new Cn(t,e,r.dkLen===void 0?n:r.dkLen,!0)),En(31,168,128/8),En(31,136,256/8)})),On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn=o((()=>{Rt(),sn(),Dt(),On=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kn=new Uint32Array(64),An=class extends Pt{constructor(e=32){super(64,e,8,!1),this.A=Ft[0]|0,this.B=Ft[1]|0,this.C=Ft[2]|0,this.D=Ft[3]|0,this.E=Ft[4]|0,this.F=Ft[5]|0,this.G=Ft[6]|0,this.H=Ft[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)kn[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=kn[e-15],n=kn[e-2],r=ht(t,7)^ht(t,18)^t>>>3;kn[e]=(ht(n,17)^ht(n,19)^n>>>10)+kn[e-7]+r+kn[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=ht(o,6)^ht(o,11)^ht(o,25),u=l+t+Mt(o,s,c)+On[e]+kn[e]|0,d=(ht(n,2)^ht(n,13)^ht(n,22))+Nt(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){pt(kn)}destroy(){this.set(0,0,0,0,0,0,0,0),pt(this.buffer)}},jn=Bt(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Mn=jn[0],Nn=jn[1],Pn=new Uint32Array(80),Fn=new Uint32Array(80),In=class extends Pt{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Pn[n]=e.getUint32(t),Fn[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Pn[e-15]|0,n=Fn[e-15]|0,r=Kt(t,n,1)^Kt(t,n,8)^Wt(t,n,7),i=qt(t,n,1)^qt(t,n,8)^Gt(t,n,7),a=Pn[e-2]|0,o=Fn[e-2]|0,s=Kt(a,o,19)^Jt(a,o,61)^Wt(a,o,6),c=qt(a,o,19)^Yt(a,o,61)^Gt(a,o,6),l=nn(i,c,Fn[e-7],Fn[e-16]);Pn[e]=rn(l,r,s,Pn[e-7],Pn[e-16])|0,Fn[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=Kt(u,d,14)^Kt(u,d,18)^Jt(u,d,41),v=qt(u,d,14)^qt(u,d,18)^Yt(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=an(_,v,b,Nn[e],Fn[e]),S=on(x,g,t,y,Mn[e],Pn[e]),ee=x|0,C=Kt(n,r,28)^Jt(n,r,34)^Jt(n,r,39),w=qt(n,r,28)^Yt(n,r,34)^Yt(n,r,39),te=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=Vt(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let re=en(ee,w,ne);n=tn(re,S,C,te),r=re|0}({h:n,l:r}=Vt(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=Vt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=Vt(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=Vt(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=Vt(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=Vt(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=Vt(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=Vt(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){pt(Pn,Fn)}destroy(){pt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ln=class extends In{constructor(){super(48),this.Ah=It[0]|0,this.Al=It[1]|0,this.Bh=It[2]|0,this.Bl=It[3]|0,this.Ch=It[4]|0,this.Cl=It[5]|0,this.Dh=It[6]|0,this.Dl=It[7]|0,this.Eh=It[8]|0,this.El=It[9]|0,this.Fh=It[10]|0,this.Fl=It[11]|0,this.Gh=It[12]|0,this.Gl=It[13]|0,this.Hh=It[14]|0,this.Hl=It[15]|0}},Rn=xt(()=>new An),zn=xt(()=>new In),Bn=xt(()=>new Ln)}));Vn();let Hn=Rn;function Un(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Wn(e){if(!Un(e))throw Error(`Uint8Array expected`)}function Gn(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Kn(e){let t=e.toString(16);return t.length&1?`0`+t:t}function qn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?dr:BigInt(`0x`+e)}function Jn(e){if(Wn(e),pr)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=mr[e[n]];return t}function Yn(e){if(e>=hr._0&&e<=hr._9)return e-hr._0;if(e>=hr.A&&e<=hr.F)return e-(hr.A-10);if(e>=hr.a&&e<=hr.f)return e-(hr.a-10)}function Xn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(pr)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Yn(e.charCodeAt(i)),a=Yn(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Zn(e){return qn(Jn(e))}function Qn(e){return Wn(e),qn(Jn(Uint8Array.from(e).reverse()))}function $n(e,t){return Xn(e.toString(16).padStart(t*2,`0`))}function er(e,t){return $n(e,t).reverse()}function tr(e,t,n){let r;if(typeof t==`string`)try{r=Xn(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Un(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function nr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Wn(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function rr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function ir(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ar(e,t,n){return gr(e)&&gr(t)&&gr(n)&&t<=e&&e<n}function or(e,t,n,r){if(!ar(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function sr(e){let t;for(t=0;e>dr;e>>=fr,t+=1);return t}function cr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=vr(e),i=vr(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=vr(0))=>{i=s(yr([0]),e),r=s(),e.length!==0&&(i=s(yr([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return nr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function lr(e,t,n={}){let r=(t,n,r)=>{let i=br[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function ur(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr=o((()=>{dr=BigInt(0),fr=BigInt(1),pr=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,mr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hr={_0:48,_9:57,A:65,F:70,a:97,f:102},gr=e=>typeof e==`bigint`&&dr<=e,_r=e=>(fr<<BigInt(e))-fr,vr=e=>new Uint8Array(e),yr=e=>Uint8Array.from(e),br={bigint:e=>typeof e==`bigint`,function:e=>typeof e==`function`,boolean:e=>typeof e==`boolean`,string:e=>typeof e==`string`,stringOrUint8Array:e=>typeof e==`string`||Un(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e==`function`&&Number.isSafeInteger(e.outputLen)}}));function Sr(e,t){if(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>";
2
+ export const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t){return t.endsWith(`.local`)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let y={height:440,width:360};function b(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function x(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function S(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let ee,C,w,te=[];function ne(){return typeof window>`u`?ie():b({name:`iframe`},e=>{let{host:t}=e;if(ee&&ee.host===t){let t=C;return C=e.store,t&&t!==C&&!te.includes(t)&&te.push(t),w?.destroy(),w=re()(e),ee.instance.syncTheme(e.theme),ee.instance}ee?.instance.destroy(),C=e.store,w=re()(e);let n=!1,r=ue(),i=new URL(t);i.searchParams.set(`chainId`,String(C.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),v(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(C,te,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ce(e)}),e.on(`sync`,({valid:e})=>{e===!1&&C?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),ne(),n=!1,l=!0;let e=C?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&w?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,y=()=>se(C),b=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});b.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,ne=()=>{x&&(x=!1,a.removeEventListener(`cancel`,y),a.removeEventListener(`click`,y),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{x||(x=!0,a.addEventListener(`cancel`,y),a.addEventListener(`click`,y),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},de=!1,fe=()=>{de||(de=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(de){de=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},me={close(){w.close(),n=!1,pe(),ne()},destroy(){ee?.instance===me&&(ee=void 0),w?.close(),n=!1,ne(),pe(),w?.destroy(),f.destroy(),a.remove(),b.disconnect(),C=void 0,w=void 0,te=[]},open(){n||(n=!0,fe(),ie())},async syncRequests(e){if(l){w.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(S()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){w.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),w.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:le(C),chainId:C.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return ee={host:t,instance:me},me})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=y}=e;return b({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=ue(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),v(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:le(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ie(){return b({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){if(!C)return;let{accounts:t}=C.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function le(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ue(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var de=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function fe(e,t){return e.exec(t)?.groups}let pe=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,me=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,he=/^\\(.+?\\).*?$/,ge=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function _e(e){let t=e.type;if(ge.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=_e(i),r<n-1&&(t+=`, `)}let r=fe(ge,e.type);return t+=`)${r?.array||``}`,_e({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function ve(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=_e(i),r!==n-1&&(t+=`, `)}return t}function ye(e){return e.type===`function`?`function ${e.name}(${ve(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ve(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ve(e.inputs)})`:e.type===`error`?`error ${e.name}(${ve(e.inputs)})`:e.type===`constructor`?`constructor(${ve(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let be=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function xe(e){return be.test(e)}function Se(e){return fe(be,e)}let Ce=new Set([`memory`,`indexed`,`storage`,`calldata`]),we=new Set([`calldata`,`memory`,`storage`]);var Te=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},Ee=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},De=class extends de{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Oe=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},ke=class extends de{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Ae=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},je=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Me=class extends de{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Ne=class extends de{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Pe=class extends de{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Fe=class extends de{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},Ie=class extends de{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Le(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Re=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),ze=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Be=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ve=/^u?int$/;function He(e,t){let n=Le(e,t?.type,t?.structs);if(Re.has(n))return Re.get(n);let r=he.test(e),i=fe(r?Be:ze,e);if(!i)throw new Oe({param:e});if(i.name&&Ke(i.name))throw new ke({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=Ue(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(He(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ve.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!We(c))throw new Ee({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Ae({param:e,type:t?.type,modifier:i.modifier});if(we.has(i.modifier)&&!qe(c,!!i.array))throw new je({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Re.set(n,u),u}function Ue(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?Ue(o,[...t,n.trim()]):Ue(o,t,`${n}${i}`,r);case`(`:return Ue(o,t,`${n}${i}`,r+1);case`)`:return Ue(o,t,`${n}${i}`,r-1);default:return Ue(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Ie({current:n,depth:r});return t.push(n.trim()),t}function We(e){return e===`address`||e===`bool`||e===`function`||e===`string`||pe.test(e)||me.test(e)}let Ge=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Ke(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||pe.test(e)||me.test(e)||Ge.test(e)}function qe(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Je(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!xe(n))continue;let i=Se(n);if(!i)throw new Ne({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=He(t,{type:`struct`});o.push(n)}if(!o.length)throw new Pe({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Xe(a,t)}return r}let Ye=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Xe(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(he.test(i.type))r.push(i);else{let e=fe(Ye,i.type);if(!e?.type)throw new Me({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fe({type:o});r.push({...i,type:`tuple${a??``}`,components:Xe(t[o],t,new Set([...n,o]))})}else if(We(o))r.push(i);else throw new Te({type:o})}}return r}function Ze(e){let t=[];if(typeof e==`string`){let n=Ue(e),r=n.length;for(let e=0;e<r;e++)t.push(He(n[e],{modifiers:Ce}))}else{let n=Je(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(xe(r))continue;let a=Ue(r),o=a.length;for(let e=0;e<o;e++)t.push(He(a[e],{modifiers:Ce,structs:n}))}}if(t.length===0)throw new De({params:e});return t}var Qe,$e=o((()=>{Qe=`0.1.1`}));function et(){return Qe}var tt=o((()=>{$e()}));function nt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?nt(e.cause,t):t?null:e}var T,rt=o((()=>{tt(),T=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return nt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${et()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),it,at=o((()=>{it=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function ot(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function st(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function ct(e,...t){if(!ot(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function lt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);st(e.outputLen),st(e.blockLen)}function ut(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function dt(e,t){ct(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ft(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function pt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function mt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ht(e,t){return e<<32-t|e>>>t}function gt(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function _t(e){for(let t=0;t<e.length;t++)e[t]=gt(e[t]);return e}function vt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function yt(e){return typeof e==`string`&&(e=vt(e)),ct(e),e}function bt(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];ct(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function xt(e){let t=t=>e().update(yt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function St(e){let t=(t,n)=>e(n).update(yt(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ct(e=32){if(it&&typeof it.getRandomValues==`function`)return it.getRandomValues(new Uint8Array(e));if(it&&typeof it.randomBytes==`function`)return Uint8Array.from(it.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var wt,Tt,Et,Dt=o((()=>{at(),wt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Tt=wt?e=>e:_t,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Et=class{}})),Ot,kt,At=o((()=>{Dt(),Ot=class extends Et{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lt(e);let n=yt(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),pt(i)}update(e){return ut(this),this.iHash.update(e),this}digestInto(e){ut(this),ct(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kt=(e,t,n)=>new Ot(e,t).update(n).digest(),kt.create=(e,t)=>new Ot(e,t)}));function jt(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Mt(e,t,n){return e&t^~e&n}function Nt(e,t,n){return e&t^e&n^t&n}var Pt,Ft,It,Lt,Rt=o((()=>{Dt(),Pt=class extends Et{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=mt(this.buffer)}update(e){ut(this),e=yt(e),ct(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=mt(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ut(this),dt(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,pt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;jt(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=mt(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ft=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),It=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function zt(e,t=!1){return t?{h:Number(e&Ht),l:Number(e>>Ut&Ht)}:{h:Number(e>>Ut&Ht)|0,l:Number(e&Ht)|0}}function Bt(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=zt(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function Vt(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn=o((()=>{Ht=BigInt(2**32-1),Ut=BigInt(32),Wt=(e,t,n)=>e>>>n,Gt=(e,t,n)=>e<<32-n|t>>>n,Kt=(e,t,n)=>e>>>n|t<<32-n,qt=(e,t,n)=>e<<32-n|t>>>n,Jt=(e,t,n)=>e<<64-n|t>>>n-32,Yt=(e,t,n)=>e>>>n-32|t<<64-n,Xt=(e,t,n)=>e<<n|t>>>32-n,Zt=(e,t,n)=>t<<n|e>>>32-n,Qt=(e,t,n)=>t<<n-32|e>>>64-n,$t=(e,t,n)=>e<<n-32|t>>>64-n,en=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),tn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,nn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),rn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,an=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),on=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function cn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=xn(a,o,1)^n[r],c=Sn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=gn[n],a=xn(t,i,r),o=Sn(t,i,r),s=hn[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=yn[r],e[1]^=bn[r]}pt(n)}var ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn=o((()=>{sn(),Dt(),ln=BigInt(0),un=BigInt(1),dn=BigInt(2),fn=BigInt(7),pn=BigInt(256),mn=BigInt(113),hn=[],gn=[],_n=[];for(let e=0,t=un,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],hn.push(2*(5*r+n)),gn.push((e+1)*(e+2)/2%64);let i=ln;for(let e=0;e<7;e++)t=(t<<un^(t>>fn)*mn)%pn,t&dn&&(i^=un<<(un<<BigInt(e))-un);_n.push(i)}vn=Bt(_n,!0),yn=vn[0],bn=vn[1],xn=(e,t,n)=>n>32?Qt(e,t,n):Xt(e,t,n),Sn=(e,t,n)=>n>32?$t(e,t,n):Zt(e,t,n),Cn=class e extends Et{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,st(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ft(this.state)}clone(){return this._cloneInto()}keccak(){Tt(this.state32),cn(this.state32,this.rounds),Tt(this.state32),this.posOut=0,this.pos=0}update(e){ut(this),e=yt(e),ct(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ut(this,!1),ct(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return st(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dt(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,pt(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},wn=(e,t,n)=>xt(()=>new Cn(t,e,n)),wn(6,144,224/8),wn(6,136,256/8),wn(6,104,384/8),wn(6,72,512/8),wn(1,144,224/8),Tn=wn(1,136,256/8),wn(1,104,384/8),wn(1,72,512/8),En=(e,t,n)=>St((r={})=>new Cn(t,e,r.dkLen===void 0?n:r.dkLen,!0)),En(31,168,128/8),En(31,136,256/8)})),On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn=o((()=>{Rt(),sn(),Dt(),On=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),kn=new Uint32Array(64),An=class extends Pt{constructor(e=32){super(64,e,8,!1),this.A=Ft[0]|0,this.B=Ft[1]|0,this.C=Ft[2]|0,this.D=Ft[3]|0,this.E=Ft[4]|0,this.F=Ft[5]|0,this.G=Ft[6]|0,this.H=Ft[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)kn[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=kn[e-15],n=kn[e-2],r=ht(t,7)^ht(t,18)^t>>>3;kn[e]=(ht(n,17)^ht(n,19)^n>>>10)+kn[e-7]+r+kn[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=ht(o,6)^ht(o,11)^ht(o,25),u=l+t+Mt(o,s,c)+On[e]+kn[e]|0,d=(ht(n,2)^ht(n,13)^ht(n,22))+Nt(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){pt(kn)}destroy(){this.set(0,0,0,0,0,0,0,0),pt(this.buffer)}},jn=Bt(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Mn=jn[0],Nn=jn[1],Pn=new Uint32Array(80),Fn=new Uint32Array(80),In=class extends Pt{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Pn[n]=e.getUint32(t),Fn[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Pn[e-15]|0,n=Fn[e-15]|0,r=Kt(t,n,1)^Kt(t,n,8)^Wt(t,n,7),i=qt(t,n,1)^qt(t,n,8)^Gt(t,n,7),a=Pn[e-2]|0,o=Fn[e-2]|0,s=Kt(a,o,19)^Jt(a,o,61)^Wt(a,o,6),c=qt(a,o,19)^Yt(a,o,61)^Gt(a,o,6),l=nn(i,c,Fn[e-7],Fn[e-16]);Pn[e]=rn(l,r,s,Pn[e-7],Pn[e-16])|0,Fn[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=Kt(u,d,14)^Kt(u,d,18)^Jt(u,d,41),v=qt(u,d,14)^qt(u,d,18)^Yt(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=an(_,v,b,Nn[e],Fn[e]),S=on(x,g,t,y,Mn[e],Pn[e]),ee=x|0,C=Kt(n,r,28)^Jt(n,r,34)^Jt(n,r,39),w=qt(n,r,28)^Yt(n,r,34)^Yt(n,r,39),te=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=Vt(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let re=en(ee,w,ne);n=tn(re,S,C,te),r=re|0}({h:n,l:r}=Vt(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=Vt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=Vt(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=Vt(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=Vt(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=Vt(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=Vt(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=Vt(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){pt(Pn,Fn)}destroy(){pt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ln=class extends In{constructor(){super(48),this.Ah=It[0]|0,this.Al=It[1]|0,this.Bh=It[2]|0,this.Bl=It[3]|0,this.Ch=It[4]|0,this.Cl=It[5]|0,this.Dh=It[6]|0,this.Dl=It[7]|0,this.Eh=It[8]|0,this.El=It[9]|0,this.Fh=It[10]|0,this.Fl=It[11]|0,this.Gh=It[12]|0,this.Gl=It[13]|0,this.Hh=It[14]|0,this.Hl=It[15]|0}},Rn=xt(()=>new An),zn=xt(()=>new In),Bn=xt(()=>new Ln)}));Vn();let Hn=Rn;function Un(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Wn(e){if(!Un(e))throw Error(`Uint8Array expected`)}function Gn(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Kn(e){let t=e.toString(16);return t.length&1?`0`+t:t}function qn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?dr:BigInt(`0x`+e)}function Jn(e){if(Wn(e),pr)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=mr[e[n]];return t}function Yn(e){if(e>=hr._0&&e<=hr._9)return e-hr._0;if(e>=hr.A&&e<=hr.F)return e-(hr.A-10);if(e>=hr.a&&e<=hr.f)return e-(hr.a-10)}function Xn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(pr)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Yn(e.charCodeAt(i)),a=Yn(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Zn(e){return qn(Jn(e))}function Qn(e){return Wn(e),qn(Jn(Uint8Array.from(e).reverse()))}function $n(e,t){return Xn(e.toString(16).padStart(t*2,`0`))}function er(e,t){return $n(e,t).reverse()}function tr(e,t,n){let r;if(typeof t==`string`)try{r=Xn(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Un(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function nr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Wn(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function rr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function ir(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ar(e,t,n){return gr(e)&&gr(t)&&gr(n)&&t<=e&&e<n}function or(e,t,n,r){if(!ar(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function sr(e){let t;for(t=0;e>dr;e>>=fr,t+=1);return t}function cr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=vr(e),i=vr(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=vr(0))=>{i=s(yr([0]),e),r=s(),e.length!==0&&(i=s(yr([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return nr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function lr(e,t,n={}){let r=(t,n,r)=>{let i=br[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function ur(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr=o((()=>{dr=BigInt(0),fr=BigInt(1),pr=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,mr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hr={_0:48,_9:57,A:65,F:70,a:97,f:102},gr=e=>typeof e==`bigint`&&dr<=e,_r=e=>(fr<<BigInt(e))-fr,vr=e=>new Uint8Array(e),yr=e=>Uint8Array.from(e),br={bigint:e=>typeof e==`bigint`,function:e=>typeof e==`function`,boolean:e=>typeof e==`boolean`,string:e=>typeof e==`string`,stringOrUint8Array:e=>typeof e==`string`||Un(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e==`function`&&Number.isSafeInteger(e.outputLen)}}));function Sr(e,t){if(yi(e)>t)throw new Mi({givenSize:yi(e),maxSize:t})}function Cr(e,t){if(typeof t==`number`&&t>0&&t>yi(e)-1)throw new Ni({offset:t,position:`start`,size:yi(e)})}function wr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&yi(e)!==n-t)throw new Ni({offset:n,position:`end`,size:yi(e)})}function Tr(e){if(e>=Or.zero&&e<=Or.nine)return e-Or.zero;if(e>=Or.A&&e<=Or.F)return e-(Or.A-10);if(e>=Or.a&&e<=Or.f)return e-(Or.a-10)}function Er(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Pi({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function Dr(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var Or,kr=o((()=>{Fi(),Or={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ar(e,t){if(Jr(e)>t)throw new si({givenSize:Jr(e),maxSize:t})}function jr(e,t){if(typeof t==`number`&&t>0&&t>Jr(e)-1)throw new ci({offset:t,position:`start`,size:Jr(e)})}function Mr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Jr(e)!==n-t)throw new ci({offset:n,position:`end`,size:Jr(e)})}function Nr(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new li({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Pr(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var Fr=o((()=>{A()}));function Ir(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>Ir(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${Ir(r)}`),t},[]).join(`,`)}}`}function Lr(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(zr)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Rr(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+zr:n,n)}var zr,Br=o((()=>{zr=`#__bigint`}));function Vr(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new ii(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new ai(e)}function E(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function Hr(e){return e instanceof Uint8Array?D(e):Array.isArray(e)?D(new Uint8Array(e)):e}function Ur(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ar(n,t.size),Gr(n,t.size)):n}function D(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=ni[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ar(r,t.size),Kr(r,t.size)):r}function O(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ri({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Gr(s,r):s}function Wr(e,t={}){return D(ti.encode(e),t)}function Gr(e,t){return Nr(e,{dir:`left`,size:t})}function Kr(e,t){return Nr(e,{dir:`right`,size:t})}function qr(e){return D(vi(e))}function k(e,t,n,r={}){let{strict:i}=r;jr(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Mr(a,t,n),a}function Jr(e){return Math.ceil((e.length-2)/2)}function Yr(e){return Pr(e,{dir:`left`})}function Xr(e,t={}){let{signed:n}=t;t.size&&Ar(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Zr(e,t={}){return mi(e,t)}function Qr(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:Xr(e,t))}function $r(e,t={}){let{size:n}=t,r=mi(e);return n&&(Sr(r,n),r=Ei(r)),new TextDecoder().decode(r)}function ei(e,t={}){let{strict:n=!1}=t;try{return Vr(e,{strict:n}),!0}catch{return!1}}var ti,ni,ri,ii,ai,oi,si,ci,li,A=o((()=>{Fi(),rt(),kr(),Fr(),Br(),ti=new TextEncoder,ni=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ri=class extends T{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},ii=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Rr(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},ai=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},oi=class extends T{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},si=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},ci=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},li=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function ui(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new ji(e)}function di(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function fi(e){return e instanceof Uint8Array?e:typeof e==`string`?mi(e):pi(e)}function pi(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function mi(e,t={}){let{size:n}=t,r=e;n&&(Ar(e,n),r=Kr(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=Tr(i.charCodeAt(t++)),r=Tr(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new T(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function hi(e,t={}){let{size:n}=t,r=ki.encode(e);return typeof n==`number`?(Sr(r,n),_i(r,n)):r}function gi(e,t){return rr(e,t)}function _i(e,t){return Er(e,{dir:`right`,size:t})}function vi(e){return crypto.getRandomValues(new Uint8Array(e))}function yi(e){return e.length}function bi(e,t,n,r={}){let{strict:i}=r;Cr(e,t);let a=e.slice(t,n);return i&&wr(a,t,n),a}function xi(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Xr(D(e,t),t)}function Si(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(Sr(r,n),r=Ti(r)),r.length>1||r[0]>1)throw new Ai(r);return!!r[0]}function Ci(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Qr(D(e,t),t)}function wi(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(Sr(r,n),r=Ei(r)),Oi.decode(r)}function Ti(e){return Dr(e,{dir:`left`})}function Ei(e){return Dr(e,{dir:`right`})}function Di(e){try{return ui(e),!0}catch{return!1}}var Oi,ki,Ai,ji,Mi,Ni,Pi,Fi=o((()=>{xr(),rt(),A(),kr(),Fr(),Br(),Oi=new TextDecoder,ki=new TextEncoder,Ai=class extends T{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},ji=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Rr(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},Mi=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Ni=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Pi=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));At(),Dn(),Fi(),A();function Ii(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(fi(e));return n===`Bytes`?r:D(r)}function Li(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=kt(Hn,fi(e),fi(t));return r===`Bytes`?i:D(i)}function Ri(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(fi(e));return n===`Bytes`?r:D(r)}function zi(e){return ei(e)&&Jr(e)===32}let Bi={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;Fi(),rt(),A(),Br();function Vi(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new Ji({prefix:r,cause:new Xi});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Ji({prefix:r,cause:new Yi});return}throw new qi({publicKey:e})}function Hi(e){let t=(()=>{if(ei(e))return Wi(e);if(Di(e))return Ui(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return Vi(t),t}function Ui(e){return Wi(D(e))}function Wi(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Zi({publicKey:e});return e.length===130?{prefix:4,x:BigInt(k(e,0,32)),y:BigInt(k(e,32,64))}:e.length===132?{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33)),y:BigInt(k(e,33,65))}:{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33))}}function Gi(e,t={}){return mi(Ki(e,t))}function Ki(e,t={}){Vi(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return E(a?O(n,{size:1}):`0x`,O(r,{size:32}),typeof i==`bigint`?O(i,{size:32}):`0x`)}var qi=class extends T{constructor({publicKey:e}){super(`Value \\`${Rr(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},Ji=class extends T{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},Yi=class extends T{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},Xi=class extends T{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Zi=class extends T{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Jr(Hr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Fi(),rt();let Qi=/^0x[a-fA-F0-9]{40}$/;function $i(e,t={}){let{strict:n=!0}=t;if(!Qi.test(e))throw new aa({address:e,cause:new oa});if(n){if(e.toLowerCase()===e)return;if(ea(e)!==e)throw new aa({address:e,cause:new sa})}}function ea(e){if(Bi.has(e))return Bi.get(e);$i(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ii(hi(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Bi.set(e,i),i}function ta(e,t={}){let{checksum:n=!1}=t;return $i(e),n?ea(e):e}function na(e,t={}){return ta(`0x${Ii(`0x${Ki(e).slice(4)}`).substring(26)}`,t)}function ra(e,t){return $i(e,{strict:!1}),$i(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function ia(e,t={}){let{strict:n=!0}=t??{};try{return $i(e,{strict:n}),!0}catch{return!1}}var aa=class extends T{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},oa=class extends T{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},sa=class extends T{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};rt();function ca(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new T(`Unable to normalize signature.`);return i}function la(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return ia(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>la(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>la(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ua(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ua(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&ia(n[r],{strict:!1}))return o}}rt(),A();function da(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=ei(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?fa(e)===k(t,0,4):e.type===`event`?ma(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ga({name:t});if(o.length===1)return{...o[0],...i?{hash:ma(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:ma(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?la(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ua(e.inputs,s.inputs,r);if(t)throw new ha({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new ga({name:t});return{...c,...i?{hash:ma(c)}:{}}}function fa(...e){return k(ma((()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})()),0,4)}function pa(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})();return ca(typeof t==`string`?t:ye(t))}function ma(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return da(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Ii(Wr(pa(t)))}var ha=class extends T{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ca(ye(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${ca(ye(t.abiItem))}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},ga=class extends T{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let _a=/^(.*)\\[([0-9]*)\\]$/,va=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ya=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let ba=2n**256n-1n;Fi(),rt(),A();function xa(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=za(t.type);if(a){let[n,o]=a;return Ca(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return Da(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return Sa(e,{checksum:r});if(t.type===`bool`)return wa(e);if(t.type.startsWith(`bytes`))return Ta(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Ea(e,t);if(t.type===`string`)return Oa(e,{staticPosition:i});throw new no(t.type)}function Sa(e,t={}){let{checksum:n=!1}=t;return[(e=>n?ea(e):e)(D(bi(e.readBytes(32),-20))),32]}function Ca(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Ci(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Ci(e.readBytes(32)),s=Ba(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=xa(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ba(t)){let n=a+Ci(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=xa(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=xa(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function wa(e){return[Si(e.readBytes(32),{size:32}),32]}function Ta(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Ci(e.readBytes(32));e.setPosition(n+t);let r=Ci(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[D(i),32]}return[D(e.readBytes(Number.parseInt(i,10),32)),32]}function Ea(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?xi(i,{signed:n}):Ci(i,{signed:n}),32]}function Da(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(Ba(t)){let n=i+Ci(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=xa(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=xa(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function Oa(e,{staticPosition:t}){let n=t+Ci(e.readBytes(32));e.setPosition(n);let r=Ci(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=wi(Ti(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function ka({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(Aa({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function Aa({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=za(r.type);if(i){let[t,a]=i;return Na(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Ra(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return Ma(n,{checksum:e});if(r.type===`bool`)return Fa(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=ya.exec(r.type)??[];return Ia(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return Pa(n,{type:r.type});if(r.type===`string`)return La(n);throw new no(r.type)}function ja(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Jr(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(O(t+i,{size:32})),r.push(s),i+=Jr(s)):n.push(s)}return E(...n,...r)}function Ma(e,t){let{checksum:n=!1}=t;return $i(e,{strict:n}),{dynamic:!1,encoded:Gr(e.toLowerCase())}}function Na(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new to(e);if(!a&&e.length!==r)throw new Qa({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=Aa({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ja(s);if(a){let t=O(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?E(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:E(...s.map(({encoded:e})=>e))}}function Pa(e,{type:t}){let[,n]=t.split(`bytes`),r=Jr(e);if(!n){let t=e;return r%32!=0&&(t=Kr(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:E(Gr(O(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new $a({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Kr(e)}}function Fa(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Gr(Ur(e))}}function Ia(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new ri({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:O(e,{size:32,signed:t})}}function La(e){let t=Wr(e),n=Math.ceil(Jr(t)/32),r=[];for(let e=0;e<n;e++)r.push(Kr(k(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:E(Kr(O(Jr(t),{size:32})),...r)}}function Ra(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=Aa({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ja(a):E(...a.map(({encoded:e})=>e))}}function za(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ba(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ba);let n=za(e.type);return!!(n&&Ba({...e,type:n[1]}))}rt();let Va={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Ga({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Wa({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ua({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Ua({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Ha(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Va);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Ua=class extends T{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Wa=class extends T{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Ga=class extends T{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Fi(),rt(),A();function Ka(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?mi(t):t,o=Ha(a);if(yi(a)===0&&e.length>0)throw new Za;if(yi(a)&&yi(a)<32)throw new Xa({data:typeof t==`string`?t:D(t),parameters:e,size:yi(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=xa(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function qa(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new eo({expectedLength:e.length,givenLength:t.length});let i=ja(ka({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ja(e,t){if(e.length!==t.length)throw new eo({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(Ja.encode(i,a))}return E(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return $i(e),Gr(e.toLowerCase(),r?32:0)}if(e===`string`)return Wr(n);if(e===`bytes`)return n;if(e===`bool`)return Gr(Ur(n),r?32:1);let i=e.match(ya);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return O(n,{size:r?32:o,signed:t===`int`})}let a=e.match(va);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new $a({expectedSize:Number.parseInt(t,10),value:n});return Kr(n,r?32:0)}let o=e.match(_a);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:E(...i)}throw new no(e)}e.encode=t})(Ja||={});function Ya(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Ze(e):e}var Xa=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${ve(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Za=class extends T{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Qa=class extends T{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},$a=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Jr(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},eo=class extends T{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},to=class extends T{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},no=class extends T{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function ro(e){return fa(e)}rt(),A();function io(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&$i(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>zi(e)?e:Yr(e))})}return t}function ao(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Jr(r[e])!==32)throw new oo({storageKey:r[e]});n&&$i(n,{strict:!1}),t.push([n,r])}return t}var oo=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Jr(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};Fi(),rt(),A();function so(e){return co(e,`Hex`)}function co(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return lo(Ha((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new oi(e);return mi(e)}return e})(),{recursiveReadLimit:1/0}),n)}function lo(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?D(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=uo(e,n,128),i=e.readBytes(r);return t===`Hex`?D(i):i}return fo(e,uo(e,n,192),t)}function uo(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new T(`Invalid RLP prefix`)}function fo(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(lo(e,n));return i}function po(e,t){let{as:n}=t,r=ho(e),i=Ha(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}function mo(e,t={}){let{as:n=`Hex`}=t;return po(e,{as:n})}function ho(e){return Array.isArray(e)?go(e.map(e=>ho(e))):_o(e)}function go(e){let t=e.reduce((e,t)=>e+t.length,0),n=vo(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function _o(e){let t=typeof e==`string`?mi(e):e,n=vo(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function vo(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new T(`Length is too large.`)}function yo(e,t){let n=e%t;return n>=Fo?n:t+n}function bo(e,t,n){let r=e;for(;t-- >Fo;)r*=r,r%=n;return r}function xo(e,t){if(e===Fo)throw Error(`invert: expected non-zero number`);if(t<=Fo)throw Error(`invert: expected positive modulus, got `+t);let n=yo(e,t),r=t,i=Fo,a=Io,o=Io,s=Fo;for(;n!==Fo;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==Io)throw Error(`invert: does not exist`);return yo(i,t)}function So(e,t){let n=(e.ORDER+Io)/zo,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function Co(e,t){let n=(e.ORDER-Bo)/Vo,r=e.mul(t,Lo),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Lo),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function wo(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Io,n=0;for(;t%Lo===Fo;)t/=Lo,n++;let r=Lo,i=jo(e);for(;ko(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return So;let a=i.pow(r,t),o=(t+Io)/Lo;return function(e,r){if(e.is0(r))return r;if(ko(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=Io<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function To(e){return e%zo===Ro?So:e%Vo===Bo?Co:wo(e)}function Eo(e){return lr(e,Ho.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Do(e,t,n){if(n<Fo)throw Error(`invalid exponent, negatives unsupported`);if(n===Fo)return e.ONE;if(n===Io)return t;let r=e.ONE,i=t;for(;n>Fo;)n&Io&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Io;return r}function Oo(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function ko(e,t){let n=(e.ORDER-Io)/Lo,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function Ao(e,t){t!==void 0&&st(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function jo(e,t,n=!1,r={}){if(e<=Fo)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Ao(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:_r(i),ZERO:Fo,ONE:Io,create:t=>yo(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Fo<=t&&t<e},is0:e=>e===Fo,isOdd:e=>(e&Io)===Io,neg:t=>yo(-t,e),eql:(e,t)=>e===t,sqr:t=>yo(t*t,e),add:(t,n)=>yo(t+n,e),sub:(t,n)=>yo(t-n,e),mul:(t,n)=>yo(t*n,e),pow:(e,t)=>Do(s,e,t),div:(t,n)=>yo(t*xo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>xo(t,e),sqrt:r.sqrt||(t=>(o||=To(e),o(s,t))),toBytes:e=>n?er(e,a):$n(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Qn(e):Zn(e)},invertBatch:e=>Oo(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Mo(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function No(e){let t=Mo(e);return t+Math.ceil(t/2)}function Po(e,t,n=!1){let r=e.length,i=Mo(t),a=No(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=yo(n?Qn(e):Zn(e),t-Io)+Io;return n?er(o,i):$n(o,i)}var Fo,Io,Lo,Ro,zo,Bo,Vo,Ho,Uo=o((()=>{Dt(),xr(),Fo=BigInt(0),Io=BigInt(1),Lo=BigInt(2),Ro=BigInt(3),zo=BigInt(4),Bo=BigInt(5),Vo=BigInt(8),Ho=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Wo(e,t){let n=t.negate();return e?n:t}function Go(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Ko(e,t){Go(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:_r(e),maxNumber:i,shiftBy:BigInt(e)}}function qo(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=ts);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function Jo(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function Yo(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function Xo(e){return rs.get(e)||1}function Zo(e,t){return{constTimeNegate:Wo,hasPrecomputes(e){return Xo(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>es;)n&ts&&(r=r.add(i)),i=i.double(),n>>=ts;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Ko(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Ko(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=qo(i,e,s);i=t,c?o=o.add(Wo(u,r[d])):a=a.add(Wo(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Ko(n,t);for(let e=0;e<o.windows&&i!==es;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=qo(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=ns.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&ns.set(t,n(r))),r},wNAFCached(e,t,n){let r=Xo(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Xo(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Go(n,t),rs.set(e,n),ns.delete(e)}}}function Qo(e,t,n,r){Jo(n,e),Yo(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=sr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=_r(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function $o(e){return Eo(e.Fp),lr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Ao(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var es,ts,ns,rs,is=o((()=>{Uo(),xr(),es=BigInt(0),ts=BigInt(1),ns=new WeakMap,rs=new WeakMap}));function as(e){e.lowS!==void 0&&Gn(`lowS`,e.lowS),e.prehash!==void 0&&Gn(`prehash`,e.prehash)}function os(e){let t=$o(e);lr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function ss(e,t){return Jn($n(e,t))}function cs(e){let t=os(e),{Fp:n}=t,r=jo(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return nr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,_s),vs),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return ar(e,j,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Un(e)&&(e=Jn(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Zn(tr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=yo(o,a)),or(`private key`,o,j,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=ur((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=ur(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Oo(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(tr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Qo(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,_s),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,_s),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;or(`scalar`,e,hs,i);let a=h.ZERO;if(e===hs)return a;if(this.is0()||e===j)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>hs||l>hs;)s&j&&(u=u.add(f)),l&j&&(d=d.add(f)),f=f.double(),s>>=j,l>>=j;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;or(`scalar`,e,j,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===hs||t===j||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===j)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===j?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Gn(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Gn(`isCompressed`,e),Jn(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=Zo(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function ls(e){let t=$o(e);return lr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function us(e){let t=ls(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return yo(e,r)}function l(e){return xo(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=cs({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=nr;return Gn(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Zn(i);if(!ar(e,j,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&j)===j;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>j}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Zn(e.slice(t,n));class _{constructor(e,t,n){or(`r`,e,j,r),or(`s`,t,j,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=tr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=ms.toSig(tr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(tr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+ss(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return ms.hexFromSig(this)}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){let e=i;return ss(this.r,e)+ss(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=No(t.n);return Po(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=tr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Zn(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=_r(a);function w(e){return or(`num < 2^`+a,e,hs,C),$n(e,i)}function te(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=tr(`msgHash`,e),as(i),f&&(e=tr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[w(y),w(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(tr(`extraEntropy`,e))}let x=nr(...b),C=v;function te(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===hs)return;let a=c(n*c(C+i*y));if(a===hs)return;let o=(r.x===i?0:2)|Number(r.y&j),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:te}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=te(e,n,r),o=t;return cr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=tr(`msgHash`,n),r=tr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(as(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Un(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof ms.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),C=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return C?c(C.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function ds(e,t){let n=e.ORDER,r=hs;for(let e=n-j;e%gs===hs;e/=gs)r+=j;let i=r,a=gs<<i-j-j,o=a*gs,s=(n-j)/o,c=(s-j)/gs,l=o-j,u=a,d=e.pow(t,s),f=e.pow(t,(s+j)/gs),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>j;t--){let n=t-gs;n=gs<<n-j;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%vs===_s){let n=(e.ORDER-_s)/vs,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function fs(e,t){if(Eo(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=ds(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=Oo(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var ps,ms,hs,j,gs,_s,vs,ys=o((()=>{is(),Uo(),xr(),ps=class extends Error{constructor(e=``){super(e)}},ms={Err:ps,_tlv:{encode:(e,t)=>{let{Err:n}=ms;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Kn(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Kn(i.length/2|128):``;return Kn(e)+a+i+t},decode(e,t){let{Err:n}=ms,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=ms;if(e<hs)throw new t(`integer: negative integers are not allowed`);let n=Kn(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=ms;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Zn(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=ms,i=tr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=ms,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},hs=BigInt(0),j=BigInt(1),gs=BigInt(2),_s=BigInt(3),vs=BigInt(4)}));function bs(e){return{hash:e,hmac:(t,...n)=>kt(e,t,bt(...n)),randomBytes:Ct}}function xs(e,t){let n=t=>us({...e,...bs(t)});return{...n(t),create:n}}var Ss=o((()=>{At(),Dt(),ys()}));function Cs(e,t){if(Ts(e),Ts(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function ws(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function Ts(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Es(e,t,n,r){Wn(e),Wn(t),Ts(n),t.length>255&&(t=r(nr(ir(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=nr(t,Cs(t.length,1)),c=Cs(0,a),l=Cs(n,2),u=Array(o),d=r(nr(c,e,l,Cs(0,1),s));u[0]=r(nr(d,Cs(1,1),s));for(let e=1;e<=o;e++)u[e]=r(nr(ws(d,u[e-1]),Cs(e+1,1),s));return nr(...u).slice(0,n)}function Ds(e,t,n,r,i){if(Wn(e),Wn(t),Ts(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(ir(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(Cs(n,2)).update(t).update(Cs(t.length,1)).digest()}function Os(e,t,n){lr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Wn(e),Ts(t);let l=typeof c==`string`?ir(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Es(e,l,f,o);else if(s===`xof`)p=Ds(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=yo(js(p.subarray(i,i+d)),r)}m[e]=t}return m}function ks(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=Oo(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function As(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=Os(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(Os(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var js,Ms=o((()=>{Uo(),xr(),js=Zn})),Ns=c({encodeToCurve:()=>lc,hashToCurve:()=>cc,schnorr:()=>ic,secp256k1:()=>Ys,secp256k1_hasher:()=>sc});function Ps(e){let t=Hs,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=bo(bo(bo(u,n,t)*u%t,n,t)*u%t,Ks,t)*l%t,f=bo(d,i,t)*d%t,p=bo(f,a,t)*f%t,m=bo(p,s,t)*p%t,h=bo(bo(bo(bo(bo(bo(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Ks,t);if(!Js.eql(Js.sqr(h),e))throw Error(`Cannot find square root`);return h}function Fs(e,...t){let n=Xs[e];if(n===void 0){let t=Rn(Uint8Array.from(e,e=>e.charCodeAt(0)));n=nr(t,t),Xs[e]=n}return Rn(nr(n,...t))}function Is(e){let t=Ys.utils.normPrivateKeyToScalar(e),n=tc.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:ec(-t),bytes:Zs(n)}}function Ls(e){or(`x`,e,Gs,Hs);let t=Ps($s($s(e*e)*e+BigInt(7)));t%Ks!==Ws&&(t=$s(-t));let n=new tc(e,t,Gs);return n.assertValidity(),n}function Rs(...e){return ec(rc(Fs(`BIP0340/challenge`,...e)))}function zs(e){return Is(e).bytes}function Bs(e,t,n=Ct(32)){let r=tr(`message`,e),{bytes:i,scalar:a}=Is(t),o=ec(rc(Fs(`BIP0340/nonce`,Qs(a^rc(Fs(`BIP0340/aux`,tr(`auxRand`,n,32)))),i,r)));if(o===Ws)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Is(o),l=Rs(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Qs(ec(c+l*a)),32),!Vs(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Vs(e,t,n){let r=tr(`signature`,e,64),i=tr(`message`,t),a=tr(`publicKey`,n,32);try{let e=Ls(rc(a)),t=rc(r.subarray(0,32));if(!ar(t,Gs,Hs))return!1;let n=rc(r.subarray(32,64));if(!ar(n,Gs,Us))return!1;let o=nc(e,n,ec(-Rs(Qs(t),Zs(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs,Zs,Qs,$s,ec,tc,nc,rc,ic,ac,oc,sc,cc,lc,uc=o((()=>{Vn(),Dt(),Ss(),Ms(),Uo(),xr(),ys(),Hs=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Us=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Ws=BigInt(0),Gs=BigInt(1),Ks=BigInt(2),qs=(e,t)=>(e+t/Ks)/t,Js=jo(Hs,void 0,void 0,{sqrt:Ps}),Ys=xs({a:Ws,b:BigInt(7),Fp:Js,n:Us,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Us,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Gs*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=qs(a*e,t),c=qs(-r*e,t),l=yo(e-s*n-c*i,t),u=yo(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Rn),Xs={},Zs=e=>e.toRawBytes(!0).slice(1),Qs=e=>$n(e,32),$s=e=>yo(e,Hs),ec=e=>yo(e,Us),tc=Ys.ProjectivePoint,nc=(e,t,n)=>tc.BASE.multiplyAndAddUnsafe(e,t,n),rc=Zn,ic={getPublicKey:zs,sign:Bs,verify:Vs,utils:{randomPrivateKey:Ys.utils.randomPrivateKey,lift_x:Ls,pointToBytes:Zs,numberToBytesBE:$n,bytesToNumberBE:Zn,taggedHash:Fs,mod:yo}},ac=ks(Js,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),oc=fs(Js,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:Js.create(BigInt(`-11`))}),sc=As(Ys.ProjectivePoint,e=>{let{x:t,y:n}=oc(Js.create(e[0]));return ac(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:Js.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),cc=sc.hashToCurve,lc=sc.encodeToCurve}));rt(),A(),Br();function dc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Tc({signature:e});if(e.r<0n||e.r>ba)throw new Ec({value:e.r});if(e.s<0n||e.s>ba)throw new Dc({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Oc({value:e.yParity})}function fc(e){return pc(D(e))}function pc(e){if(e.length!==130&&e.length!==132)throw new wc({signature:e});let t=BigInt(k(e,0,32)),n=BigInt(k(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return Sc(t)}catch{throw new Oc({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function mc(e){if(e.r!==void 0&&e.s!==void 0)return hc(e)}function hc(e){let t=typeof e==`string`?pc(e):e instanceof Uint8Array?fc(e):typeof e.r==`string`?_c(e):e.v?gc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return dc(t),t}function gc(e){return{r:e.r,s:e.s,yParity:Sc(e.v)}}function _c(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=Sc(t)),typeof n!=`number`)throw new Oc({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function vc(e){let[t,n,r]=e;return hc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function yc(e){dc(e);let t=e.r,n=e.s;return E(O(t,{size:32}),O(n,{size:32}),typeof e.yParity==`number`?O(Cc(e.yParity),{size:1}):`0x`)}function bc(e){let{r:t,s:n,yParity:r}=e;return{r:O(t,{size:32}),s:O(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function xc(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Yr(O(t)),n===0n?`0x`:Yr(O(n))]}function Sc(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new kc({value:e})}function Cc(e){if(e===0)return 27;if(e===1)return 28;throw new Oc({value:e})}var wc=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Jr(Hr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Tc=class extends T{constructor({signature:e}){super(`Signature \\`${Rr(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Ec=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Dc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Oc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},kc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};A();function Ac(e,t={}){return typeof e.chainId==`string`?jc(e):{...e,...t.signature}}function jc(e){let{address:t,chainId:n,nonce:r}=e,i=mc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Mc(e){return e.map(jc)}function Nc(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:O(n),nonce:O(r),...bc(i)}}function Pc(e){return e.map(Nc)}Fi();let Fc=new TextEncoder,Ic=new TextDecoder,Lc=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Rc={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function zc(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=Lc[r>>18],i[t+1]=Lc[r>>12&63],i[t+2]=Lc[r>>6&63],i[t+3]=Lc[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Ic.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function Bc(e,t={}){return zc(mi(e),t)}function Vc(e,t={}){return zc(hi(e),t)}function Hc(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Fc.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Rc[r[e]]<<18)+(Rc[r[e+1]]<<12)+(Rc[r[e+2]]<<6)+Rc[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function Uc(e){return wi(Hc(e))}let Wc={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Gc={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Kc(e,t={}){if(!e)return null;let n=mc(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=Mc(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Gc[e.type]??e.type),n&&(r.v=Cc(n.yParity)),r}function qc(e){return{address:e.address,amount:O(e.amount),index:O(e.index),validatorIndex:O(e.validatorIndex)}}var Jc=o((()=>{A()}));function Yc(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:O(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:O(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:O(e.gasLimit)},...typeof e.number==`bigint`&&{number:O(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:O(e.prevRandao)},...typeof e.time==`bigint`&&{time:O(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(qc)}}}var Xc=o((()=>{A(),Jc()}));Fi(),rt(),A();function Zc(e,t={}){let{as:n=`Hex`}=t,r=dl(e),i=Ha(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}var Qc=class extends T{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},$c=class extends T{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},el=class extends T{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},tl=class extends T{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},nl=class extends T{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},rl=class extends T{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},il=class extends T{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},al=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},ol=class extends T{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},sl=class extends T{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},cl=class extends T{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},ll=class extends T{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},ul=class extends T{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function dl(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return dl.number(e);if(typeof e==`bigint`)throw new il;if(typeof e==`string`)return dl.string(e);if(Array.isArray(e))return dl.array(e);if(e instanceof Uint8Array)return dl.byteString(e);if(e instanceof ArrayBuffer)return dl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return dl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return dl.map(e);if(typeof e==`object`)return dl.object(e);throw new al({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new ol({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new ol({number:e.toString(10)})}e.number=t;function n(e){let t=hi(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new sl({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new cl({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new ul({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new ll({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new ll({size:i})}e.map=o})(dl||={});function fl(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return fl.readUnsignedInteger(e,r);case 1:return fl.readNegativeInteger(e,r);case 2:return fl.readByteString(e,r);case 3:return fl.readTextString(e,r);case 4:return fl.readArray(e,r);case 5:return fl.readMap(e,r);case 6:throw new tl({tag:r});case 7:return fl.readSimpleOrFloat(e,r);default:throw new Qc({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new el:new $c({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new nl({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new nl({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return wi(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new rl({value:t});return}throw new $c({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(fl||={}),rt();function pl(e){let t=Gi(e),n=t.slice(1,33),r=t.slice(33,65);return Zc(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}uc(),Fi(),A();function ml(e){let{privateKey:t}=e;return Hi(Ys.ProjectivePoint.fromPrivateKey(Hr(t).slice(2)))}function hl(e){return na(gl(e))}function gl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Hi(new Ys.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(Hr(t).substring(2)))}function _l(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Ys.sign(fi(r),fi(i),{extraEntropy:typeof t==`boolean`?t:Hr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function vl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?ra(t,hl({payload:r,signature:a})):Ys.verify(a,fi(r),Gi(i),...n?[{prehash:!0,lowS:!0}]:[])}Vn(),Ss(),Ms(),Uo(),ys();let yl=jo(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),bl=yl.create(BigInt(`-3`)),xl=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Sl=xs({a:bl,b:xl,Fp:yl,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Rn),Cl=Sl,wl=fs(yl,{A:bl,B:xl,Z:yl.create(BigInt(`-10`))}),Tl=As(Cl.ProjectivePoint,e=>wl(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:yl.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),El=jo(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Dl=El.create(BigInt(`-3`)),Ol=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),kl=xs({a:Dl,b:Ol,Fp:El,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Bn),Al=fs(El,{A:Dl,B:Ol,Z:El.create(BigInt(`-12`))});As(kl.ProjectivePoint,e=>Al(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:El.ORDER,m:1,k:192,expand:`xmd`,hash:Bn});let jl=jo(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Ml=jl.create(BigInt(`-3`)),Nl=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Pl=xs({a:Ml,b:Nl,Fp:jl,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},zn),Fl=fs(jl,{A:Ml,B:Nl,Z:jl.create(BigInt(`-4`))});As(Pl.ProjectivePoint,e=>Fl(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:jl.ORDER,m:1,k:256,expand:`xmd`,hash:zn});let Il=Sl,Ll=Sl;Tl.hashToCurve,Tl.encodeToCurve,Fi(),A();function Rl(e){let{privateKey:t}=e;return Hi(Ll.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):D(t).slice(2)))}function zl(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Ll.sign(r instanceof Uint8Array?r:mi(r),i instanceof Uint8Array?i:mi(i),{extraEntropy:typeof t==`boolean`?t:Hr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Bl(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Ll.verify(i,n instanceof Uint8Array?n:mi(n),Ki(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Vl=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function Hl(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Ul(r.error);return r.result}function Ul(e){let t=e;if(t instanceof Error&&!(`code`in t))return new tu({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===tu.code?new tu(t):n===Gl.code?new Gl(t):n===eu.code?new eu(t):n===Ql.code?new Ql(t):n===Xl.code?new Xl(t):n===$l.code?new $l(t):n===Yl.code?new Yl(t):n===nu.code?new nu(t):n===Kl.code?new Kl(t):n===ql.code?new ql(t):n===Jl.code?new Jl(t):n===Zl.code?new Zl(t):new tu({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Wl=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},Gl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(Gl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Kl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(Kl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var ql=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Jl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(Jl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Yl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(Yl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var Xl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(Xl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Zl=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(Zl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Ql=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(Ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var $l=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty($l,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var eu=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(eu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var tu=class e extends Wl{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var nu=class e extends Wl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty(nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),rt();var ru=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},iu=class extends ru{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var au=class extends ru{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var ou=class extends ru{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var su=class extends ru{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(su,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var cu=class extends ru{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(cu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var lu=class extends ru{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var uu=class extends ru{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var du=class extends ru{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty(du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var fu=class extends ru{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var pu=class extends ru{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var mu=class extends ru{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(mu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var hu=class extends ru{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(hu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var gu=class extends ru{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(gu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function _u(){let e=new Vl.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function vu(e,t={}){if(!e)throw new bu;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?Hl(n):n}catch(e){throw yu(e)}}}}function yu(e){let t=Ul(e);if(t instanceof tu){if(!t.data)return t;let{code:e}=t.data;if(e===su.code)return new su(t);if(e===cu.code)return new cu(t);if(e===iu.code)return new iu(t);if(e===au.code)return new au(t);if(e===ou.code)return new ou(t);if(e===lu.code)return new lu(t);if(e===hu.code)return new hu(t);if(e===gu.code)return new gu(t);if(e===mu.code)return new mu(t);if(e===pu.code)return new pu(t);if(e===fu.code)return new fu(t);if(e===du.code)return new du(t);if(e===uu.code)return new uu(t)}return t}var bu=class extends T{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function xu(e={}){let t=e.id??0;return{prepare(e){return Su({id:t++,...e})},get id(){return t}}}function Su(e){return{...e,jsonrpc:`2.0`}}function Cu(){return null}A();function wu(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Pc(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=O(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=O(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=O(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=O(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=O(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=O(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Wc[e.type]||e.type),e.value!==void 0&&(t.value=O(e.value)),t}rt();let Tu={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Eu(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function Du(e,t=`wei`){return Eu(e,Tu.gwei-Tu[t])}rt();var Ou=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Du(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},ku=class extends T{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},Au=class extends T{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},ju=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Du(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Du(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function Mu(e){let t=Il.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}A();function Nu(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=E(Ri(Wr(r)),O(n,{size:1}),O(i,{size:4}));if(!t)return a;let o=D(new Uint8Array(16)),s=D(t.id);return E(a,o,O(t.id.length,{size:2}),s,pl(t.publicKey))}function Pu(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:Bc(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Fi(),rt(),A();function Fu(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:Hc(e),type:`public-key`})):[{id:Hc(t),type:`public-key`}]}:{},challenge:mi(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Iu(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Nu({flag:i,rpId:o,signCount:s}),u=Pu({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ri(Wr(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:E(l,d)}}async function Lu(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Fu(n);try{let e=await t(r);if(!e)throw new Ru;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=Mu(o);return{id:s,metadata:{authenticatorData:D(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Ru({cause:e})}}var Ru=class extends T{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function zu(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=mi(s);if(u.length<37||a!==void 0&&!gi(u.slice(0,32),Ri(Wr(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||D(Hc(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Bl({hash:!0,payload:di(u,Ri(hi(c),{as:`Bytes`})),publicKey:i,signature:o})}let Bu=Iu;async function Vu(e){return Lu(e)}function Hu(e){return zu(e)}Fi();async function Uu(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=Hi(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Wu(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,fi(t)),i=pi(new Uint8Array(r)),a=xi(bi(i,0,32)),o=xi(bi(i,32,64));return o>Il.CURVE.n/2n&&(o=Il.CURVE.n-o),{r:a,s:o}}var Gu,Ku=o((()=>{Gu=`1.2.3`})),qu,Ju=o((()=>{Ku(),qu=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Gu}`].join(`\n`);super(a),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function Yu(e,t){return e.exec(t)?.groups}var Xu,Zu,Qu,$u=o((()=>{Xu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Zu=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Qu=/^\\(.+?\\).*?$/}));function ed(e){let t=e.type;if(td.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=ed(i),r<n-1&&(t+=`, `)}let r=Yu(td,e.type);return t+=`)${r?.array||``}`,ed({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var td,nd=o((()=>{$u(),td=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function rd(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ed(i),r!==n-1&&(t+=`, `)}return t}var id=o((()=>{nd()}));function ad(e){return e.type===`function`?`function ${e.name}(${rd(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${rd(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${rd(e.inputs)})`:e.type===`error`?`error ${e.name}(${rd(e.inputs)})`:e.type===`constructor`?`constructor(${rd(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var od=o((()=>{id()}));function sd(e){return bd.test(e)}function cd(e){return Yu(bd,e)}function ld(e){return xd.test(e)}function ud(e){return Yu(xd,e)}function dd(e){return Sd.test(e)}function fd(e){return Yu(Sd,e)}function pd(e){return Cd.test(e)}function md(e){return Yu(Cd,e)}function hd(e){return wd.test(e)}function gd(e){return Yu(wd,e)}function _d(e){return Td.test(e)}function vd(e){return Yu(Td,e)}function yd(e){return Ed.test(e)}var bd,xd,Sd,Cd,wd,Td,Ed,Dd,Od,kd=o((()=>{$u(),bd=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,xd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Sd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Cd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,wd=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Td=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Ed=/^receive\\(\\) external payable$/,Dd=new Set([`indexed`]),Od=new Set([`calldata`,`memory`,`storage`])})),Ad,jd,Md=o((()=>{Ju(),Ad=class extends qu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},jd=class extends qu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),Nd,Pd,Fd,Id,Ld,Rd=o((()=>{Ju(),Nd=class extends qu{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Pd=class extends qu{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},Fd=class extends qu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Id=class extends qu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Ld=class extends qu{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),zd,Bd,Vd,Hd=o((()=>{Ju(),zd=class extends qu{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Bd=class extends qu{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},Vd=class extends qu{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),Ud,Wd=o((()=>{Ju(),Ud=class extends qu{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),Gd,Kd=o((()=>{Ju(),Gd=class extends qu{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function qd(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var Jd,Yd=o((()=>{Jd=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]])}));function Xd(e,t={}){if(dd(e))return Zd(e,t);if(ld(e))return Qd(e,t);if(sd(e))return $d(e,t);if(hd(e))return ef(e,t);if(_d(e))return tf(e);if(yd(e))return{type:`receive`,stateMutability:`payable`};throw new Bd({signature:e})}function Zd(e,t={}){let n=fd(e);if(!n)throw new zd({signature:e,type:`function`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{modifiers:Od,structs:t,type:`function`}));let o=[];if(n.returns){let e=rf(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(nf(e[n],{modifiers:Od,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function Qd(e,t={}){let n=ud(e);if(!n)throw new zd({signature:e,type:`event`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{modifiers:Dd,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function $d(e,t={}){let n=cd(e);if(!n)throw new zd({signature:e,type:`error`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function ef(e,t={}){let n=gd(e);if(!n)throw new zd({signature:e,type:`constructor`});let r=rf(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(nf(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function tf(e){let t=vd(e);if(!t)throw new zd({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function nf(e,t){let n=qd(e,t?.type,t?.structs);if(Jd.has(n))return Jd.get(n);let r=Qu.test(e),i=Yu(r?lf:cf,e);if(!i)throw new Nd({param:e});if(i.name&&of(i.name))throw new Pd({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=rf(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(nf(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(uf.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!af(c))throw new jd({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Fd({param:e,type:t?.type,modifier:i.modifier});if(Od.has(i.modifier)&&!sf(c,!!i.array))throw new Id({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Jd.set(n,u),u}function rf(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?rf(o,[...t,n.trim()]):rf(o,t,`${n}${i}`,r);case`(`:return rf(o,t,`${n}${i}`,r+1);case`)`:return rf(o,t,`${n}${i}`,r-1);default:return rf(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Gd({current:n,depth:r});return t.push(n.trim()),t}function af(e){return e===`address`||e===`bool`||e===`function`||e===`string`||Xu.test(e)||Zu.test(e)}function of(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||Xu.test(e)||Zu.test(e)||df.test(e)}function sf(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var cf,lf,uf,df,ff=o((()=>{$u(),Md(),Rd(),Hd(),Kd(),Yd(),kd(),cf=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,lf=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,uf=/^u?int$/,df=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function pf(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!pd(n))continue;let i=md(n);if(!i)throw new zd({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=nf(t,{type:`struct`});o.push(n)}if(!o.length)throw new Vd({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=mf(a,t)}return r}function mf(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Qu.test(i.type))r.push(i);else{let e=Yu(hf,i.type);if(!e?.type)throw new Ld({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Ud({type:o});r.push({...i,type:`tuple${a??``}`,components:mf(t[o],t,new Set([...n,o]))})}else if(af(o))r.push(i);else throw new Ad({type:o})}}return r}var hf,gf=o((()=>{$u(),Md(),Rd(),Hd(),Wd(),kd(),ff(),hf=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function _f(e){let t=pf(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];pd(r)||n.push(Xd(r,t))}return n}var vf=o((()=>{kd(),gf(),ff()})),yf=o((()=>{Ju(),od(),nd(),id(),vf(),Md(),kd(),gf(),ff(),Rd(),Hd(),Kd(),Wd()}));function M(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function bf(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new Qf(e.type);return`${e.name}(${xf(e.inputs,{includeName:t})})`}function xf(e,{includeName:t=!1}={}){return e?e.map(e=>Sf(e,{includeName:t})).join(t?`, `:`,`):``}function Sf(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${xf(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Cf=o((()=>{$f()}));function N(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var wf=o((()=>{}));function P(e){return N(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Tf=o((()=>{wf()})),Ef,Df=o((()=>{Ef=`2.47.6`}));function Of(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Of(e.cause,t):t?null:e}var kf,F,I=o((()=>{Df(),kf={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Ef}`},F=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=kf.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...kf.version?[`Version: ${kf.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Ef}walk(e){return Of(this,e)}}})),Af,jf,Mf,Nf,Pf,Ff,If,Lf,Rf,zf,Bf,Vf,Hf,Uf,Wf,Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf,$f=o((()=>{Cf(),Tf(),I(),Af=class extends F{constructor({docsPath:e}){super([`A constructor was not found on the ABI.`,`Make sure you are using the correct ABI and that the constructor exists on it.`].join(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},jf=class extends F{constructor({docsPath:e}){super([\"Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.\",\"Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.\"].join(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},Mf=class extends F{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${xf(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`AbiDecodingDataSizeTooSmallError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=t,this.size=n}},Nf=class extends F{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Pf=class extends F{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Ff=class extends F{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${P(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},If=class extends F{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},Lf=class extends F{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" on the ABI does not contain any parameters (\\`inputs\\`).`,`Cannot encode error result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the inputs exist on it.`].join(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Rf=class extends F{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},zf=class extends F{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},Bf=class extends F{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Vf=class extends F{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the event exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},Hf=class extends F{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},Uf=class extends F{constructor(e,{docsPath:t}){super([`Function \"${e}\" does not contain any \\`outputs\\` on ABI.`,`Cannot decode function result without knowing what the parameter types are.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},Wf=class extends F{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`,`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},Gf=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${bf(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${bf(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Kf=class extends F{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},qf=class extends F{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${xf(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`DecodeLogDataMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`params`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`size`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e,this.data=t,this.params=n,this.size=r}},Jf=class extends F{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${bf(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},Yf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},Xf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},Zf=class extends F{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},Qf=class extends F{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),ep,tp,np,rp=o((()=>{I(),ep=class extends F{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},tp=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},np=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function ip(e,{dir:t,size:n=32}={}){return typeof e==`string`?ap(e,{dir:t,size:n}):op(e,{dir:t,size:n})}function ap(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new tp({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function op(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new tp({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var sp=o((()=>{rp()})),cp,lp,up,dp,fp,pp=o((()=>{I(),cp=class extends F{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},lp=class extends F{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},up=class extends F{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},dp=class extends F{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},fp=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function mp(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var hp=o((()=>{}));function gp(e,{size:t}){if(P(e)>t)throw new fp({givenSize:P(e),maxSize:t})}function L(e,t={}){let{signed:n}=t;t.size&&gp(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function _p(e,t={}){let n=e;if(t.size&&(gp(n,{size:t.size}),n=mp(n)),mp(n)===`0x00`)return!1;if(mp(n)===`0x01`)return!0;throw new up(n)}function vp(e,t={}){let n=L(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new cp({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var yp=o((()=>{pp(),Tf(),hp()}));function bp(e,t={}){return typeof e==`number`||typeof e==`bigint`?R(e,t):typeof e==`string`?Cp(e,t):typeof e==`boolean`?xp(e,t):Sp(e,t)}function xp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{size:t.size})):n}function Sp(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=wp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(gp(r,{size:t.size}),ip(r,{dir:`right`,size:t.size})):r}function R(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new cp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?ip(s,{size:r}):s}function Cp(e,t={}){return Sp(Tp.encode(e),t)}var wp,Tp,z=o((()=>{pp(),sp(),yp(),wp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Tp=new TextEncoder}));function Ep(e,t={}){return typeof e==`number`||typeof e==`bigint`?Ap(e,t):typeof e==`boolean`?Dp(e,t):N(e)?kp(e,t):jp(e,t)}function Dp(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{size:t.size})):n}function Op(e){if(e>=Np.zero&&e<=Np.nine)return e-Np.zero;if(e>=Np.A&&e<=Np.F)return e-(Np.A-10);if(e>=Np.a&&e<=Np.f)return e-(Np.a-10)}function kp(e,t={}){let n=e;t.size&&(gp(n,{size:t.size}),n=ip(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=Op(r.charCodeAt(t++)),i=Op(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new F(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Ap(e,t){return kp(R(e,t))}function jp(e,t={}){let n=Mp.encode(e);return typeof t.size==`number`?(gp(n,{size:t.size}),ip(n,{dir:`right`,size:t.size})):n}var Mp,Np,Pp=o((()=>{I(),wf(),sp(),yp(),z(),Mp=new TextEncoder,Np={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Fp(e,t){let n=t||`hex`,r=Tn(N(e,{strict:!1})?Ep(e):e);return n===`bytes`?r:bp(r)}var Ip=o((()=>{Dn(),wf(),Pp(),z()}));function Lp(e){return Rp(e)}var Rp,zp=o((()=>{Pp(),Ip(),Rp=e=>Fp(Ep(e))}));function Bp(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new F(`Unable to normalize signature.`);return i}var Vp=o((()=>{I()})),Hp,Up=o((()=>{yf(),Vp(),Hp=e=>Bp(typeof e==`string`?e:ad(e))}));function Wp(e){return Lp(Hp(e))}var Gp=o((()=>{zp(),Up()})),Kp,qp=o((()=>{Gp(),Kp=Wp})),Jp,Yp=o((()=>{I(),Jp=class extends F{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),Xp,Zp=o((()=>{Xp=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function Qp(e,t){if(em.has(`${e}.${t}`))return em.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Fp(jp(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return em.set(`${e}.${t}`,a),a}function $p(e,t){if(!nm(e,{strict:!1}))throw new Jp({address:e});return Qp(e,t)}var em,tm=o((()=>{Yp(),Pp(),Ip(),Zp(),am(),em=new Xp(8192)}));function nm(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(im.has(r))return im.get(r);let i=rm.test(e)?e.toLowerCase()===e?!0:n?Qp(e)===e:!0:!1;return im.set(r,i),i}var rm,im,am=o((()=>{Zp(),tm(),rm=/^0x[a-fA-F0-9]{40}$/,im=new Xp(8192)}));function om(e){return typeof e[0]==`string`?cm(e):sm(e)}function sm(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function cm(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var lm=o((()=>{}));function um(e,t,n,{strict:r}={}){return N(e,{strict:!1})?mm(e,t,n,{strict:r}):pm(e,t,n,{strict:r})}function dm(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new ep({offset:t,position:`start`,size:P(e)})}function fm(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new ep({offset:n,position:`end`,size:P(e)})}function pm(e,t,n,{strict:r}={}){dm(e,t);let i=e.slice(t,n);return r&&fm(i,t,n),i}function mm(e,t,n,{strict:r}={}){dm(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&fm(i,t,n),i}var hm=o((()=>{rp(),wf(),Tf()})),gm,_m,vm=o((()=>{gm=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,_m=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/}));function ym(e,t){if(e.length!==t.length)throw new If({expectedLength:e.length,givenLength:t.length});let n=Sm(bm({params:e,values:t}));return n.length===0?`0x`:n}function bm({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(xm({param:e[r],value:t[r]}));return n}function xm({param:e,value:t}){let n=Am(e.type);if(n){let[r,i]=n;return wm(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return km(t,{param:e});if(e.type===`address`)return Cm(t);if(e.type===`bool`)return Em(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=_m.exec(e.type)??[];return Dm(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Tm(t,{param:e});if(e.type===`string`)return Om(t);throw new Yf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Sm(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=P(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(R(t+i,{size:32})),r.push(s),i+=P(s)):n.push(s)}return om([...n,...r])}function Cm(e){if(!nm(e))throw new Jp({address:e});return{dynamic:!1,encoded:ap(e.toLowerCase())}}function wm(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new Zf(e);if(!r&&e.length!==t)throw new Pf({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=xm({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Sm(a);if(r){let t=R(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?om([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:om(a.map(({encoded:e})=>e))}}function Tm(e,{param:t}){let[,n]=t.type.split(`bytes`),r=P(e);if(!n){let t=e;return r%32!=0&&(t=ap(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:om([ap(R(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Ff({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ap(e,{dir:`right`})}}function Em(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ap(xp(e))}}function Dm(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new cp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:R(e,{size:32,signed:t})}}function Om(e){let t=Cp(e),n=Math.ceil(P(t)/32),r=[];for(let e=0;e<n;e++)r.push(ap(um(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:om([ap(R(P(t),{size:32})),...r])}}function km(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=xm({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Sm(r):om(r.map(({encoded:e})=>e))}}function Am(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var jm=o((()=>{$f(),Yp(),I(),pp(),am(),lm(),sp(),Tf(),hm(),z(),vm()})),Mm,Nm=o((()=>{hm(),Gp(),Mm=e=>um(Wp(e),0,4)}));function Pm(e){let{abi:t,args:n=[],name:r}=e,i=N(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Mm(e)===r:e.type===`event`?Kp(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Fm(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Im(e.inputs,o.inputs,n);if(t)throw new Gf({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Fm(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return nm(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,r)=>n===`object`&&Fm(Object.values(e)[r],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(r)?Array.isArray(e)&&e.every(e=>Fm(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Im(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Im(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&nm(n[r],{strict:!1}))return o}}var Lm=o((()=>{$f(),wf(),am(),qp(),Nm()}));function Rm(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var zm=o((()=>{}));function Bm(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Pm({abi:t,args:n,name:r});if(!e)throw new Hf(r,{docsPath:Vm});i=e}if(i.type!==`function`)throw new Hf(void 0,{docsPath:Vm});return{abi:[i],functionName:Mm(bf(i))}}var Vm,Hm=o((()=>{$f(),Nm(),Cf(),Lm(),Vm=`/docs/contract/encodeFunctionData`}));function Um(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Bm(e),i=n[0];return cm([r,(`inputs`in i&&i.inputs?ym(i.inputs,t??[]):void 0)??`0x`])}var Wm=o((()=>{lm(),jm(),Hm()})),Gm,Km,qm,Jm=o((()=>{Gm={1:\"An `assert` condition failed.\",17:`Arithmetic operation resulted in underflow or overflow.`,18:\"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).\",33:`Attempted to convert to an invalid type.`,34:`Attempted to access a storage byte array that is incorrectly encoded.`,49:\"Performed `.pop()` on an empty array\",50:`Array index is out of bounds.`,65:`Allocated too much memory or created an array which is too large.`,81:`Attempted to call a zero-initialized variable of internal function type.`},Km={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},qm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Ym,Xm,Zm,Qm=o((()=>{I(),Ym=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Xm=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Zm=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function $m(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(eh);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var eh,th=o((()=>{Qm(),eh={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Zm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Xm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ym({offset:e});let t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Ym({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function nh(e,t={}){return t.size!==void 0&&gp(e,{size:t.size}),L(Sp(e,t),t)}function rh(e,t={}){let n=e;if(t.size!==void 0&&(gp(n,{size:t.size}),n=mp(n)),n.length>1||n[0]>1)throw new lp(n);return!!n[0]}function ih(e,t={}){return t.size!==void 0&&gp(e,{size:t.size}),vp(Sp(e,t),t)}function ah(e,t={}){let n=e;return t.size!==void 0&&(gp(n,{size:t.size}),n=mp(n,{dir:`right`})),new TextDecoder().decode(n)}var oh=o((()=>{pp(),hp(),yp(),z()}));function sh(e,t){let n=typeof t==`string`?kp(t):t,r=$m(n);if(P(n)===0&&e.length>0)throw new Nf;if(P(t)&&P(t)<32)throw new Mf({data:typeof t==`string`?t:Sp(t),params:e,size:P(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=ch(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function ch(e,t,{staticPosition:n}){let r=Am(t.type);if(r){let[i,a]=r;return uh(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return mh(e,t,{staticPosition:n});if(t.type===`address`)return lh(e);if(t.type===`bool`)return dh(e);if(t.type.startsWith(`bytes`))return fh(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return ph(e,t);if(t.type===`string`)return hh(e,{staticPosition:n});throw new Xf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function lh(e){return[Qp(Sp(pm(e.readBytes(32),-20))),32]}function uh(e,t,{length:n,staticPosition:r}){if(!n){let n=r+ih(e.readBytes(vh)),i=n+_h;e.setPosition(n);let a=ih(e.readBytes(_h)),o=gh(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=ch(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(gh(t)){let i=r+ih(e.readBytes(vh)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=ch(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=ch(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function dh(e){return[rh(e.readBytes(32),{size:32}),32]}function fh(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=ih(e.readBytes(32));e.setPosition(n+t);let r=ih(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Sp(i),32]}return[Sp(e.readBytes(Number.parseInt(i,10),32)),32]}function ph(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?nh(i,{signed:n}):ih(i,{signed:n}),32]}function mh(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(gh(t)){let o=n+ih(e.readBytes(vh));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=ch(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=ch(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function hh(e,{staticPosition:t}){let n=t+ih(e.readBytes(32));e.setPosition(n);let r=ih(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=ah(mp(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function gh(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(gh);let n=Am(e.type);return!!(n&&gh({...e,type:n[1]}))}var _h,vh,yh=o((()=>{$f(),tm(),th(),Tf(),hm(),hp(),oh(),Pp(),z(),jm(),_h=32,vh=32}));function bh(e){let{abi:t,data:n,cause:r}=e,i=um(n,0,4);if(i===`0x`)throw new Nf({cause:r});let a=[...t||[],Km,qm].find(e=>e.type===`error`&&i===Mm(bf(e)));if(!a)throw new zf(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?sh(a.inputs,um(n,4)):void 0,errorName:a.name}}var xh=o((()=>{Jm(),$f(),hm(),Nm(),yh(),Cf()})),Sh,Ch=o((()=>{Sh=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function wh({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if(`name`in e&&`inputs`in e&&e.inputs)return`${n?e.name:``}(${e.inputs.map((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?Sh(t[n]):t[n]}`).join(`, `)})`}var Th=o((()=>{Ch()})),Eh,Dh,Oh=o((()=>{Eh={gwei:9,wei:18},Dh={ether:-9,wei:9}}));function kh(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var Ah=o((()=>{}));function jh(e,t=`wei`){return kh(e,Eh[t])}var Mh=o((()=>{Oh(),Ah()}));function Nh(e,t=`wei`){return kh(e,Dh[t])}var Ph=o((()=>{Oh(),Ah()}));function Fh(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Ih(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=Fh(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Fh(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Lh,Rh,zh=o((()=>{I(),Lh=class extends F{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},Rh=class extends F{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Bh(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var Vh,Hh,Uh,Wh,Gh,Kh,qh=o((()=>{Mh(),Ph(),I(),Vh=class extends F{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Hh=class extends F{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Bh(e),`}`,``,`To infer the type, either provide:`,\"- a `type` to the Transaction, or\",\"- an EIP-1559 Transaction with `maxFeePerGas`, or\",\"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or\",\"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},Uh=class extends F{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},Wh=class extends F{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`InvalidSerializedTransactionError`}),Object.defineProperty(this,`serializedTransaction`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`type`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}},Gh=class extends F{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Kh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Bh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),Jh,Yh,Xh=o((()=>{Jh=e=>e,Yh=e=>e})),Zh,Qh,$h,eg,tg,ng,rg=o((()=>{zm(),Jm(),xh(),Cf(),Th(),Lm(),Mh(),Ph(),$f(),I(),zh(),qh(),Xh(),Zh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=Bh({from:(t?Rm(t):void 0)?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});f&&(p+=`\\n${Ih(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},Qh=class extends F{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Pm({abi:t,args:n,name:a}),c=s?wh({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?bf(s,{includeName:!0}):void 0,u=Bh({address:r&&Jh(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),Object.defineProperty(this,`abi`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`args`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`contractAddress`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`formattedArgs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`functionName`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`sender`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},$h=class extends F{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=bh({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=Gm[e]}else{let e=n?bf(n,{includeName:!0}):void 0,t=n&&a?wh({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof zf&&(l=a.signature,s=[`Unable to decode signature \"${l}\" as it was not found on the provided ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`,`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`reason`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.raw=t,this.reason=c,this.signature=l}},eg=class extends F{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},tg=class extends F{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},ng=class extends F{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),ig,ag,og,sg=o((()=>{Ch(),I(),Xh(),ig=class extends F{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${Yh(a)}`,e&&`Request body: ${Sh(e)}`].filter(Boolean),name:`HttpRequestError`}),Object.defineProperty(this,`body`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`headers`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`status`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=i,this.url=a}},ag=class extends F{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Yh(n)}`,`Request body: ${Sh(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},og=class extends F{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Yh(t)}`,`Request body: ${Sh(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),cg,lg,ug,dg,fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg,Tg,Eg,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig,Lg,Rg=o((()=>{I(),sg(),cg=-1,lg=class extends F{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof ag?e.code:t??cg}},ug=class extends lg{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},dg=class e extends lg{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),fg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),pg=class e extends lg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),mg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),hg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(hg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),gg=class e extends lg{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(gg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),_g=class e extends lg{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(_g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),vg=class e extends lg{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(vg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),yg=class e extends lg{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(yg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),bg=class e extends lg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(bg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),xg=class e extends lg{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(xg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Sg=class e extends lg{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Sg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Cg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(Cg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),wg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(wg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Tg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Tg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Eg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Eg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Dg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Og=class e extends ug{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(Og,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),kg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(kg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Ag=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(Ag,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),jg=class e extends ug{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(jg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Mg=class e extends ug{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Ng=class e extends ug{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Ng,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Pg=class e extends ug{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(Pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Fg=class e extends ug{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Ig=class e extends ug{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Ig,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Lg=class extends lg{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));$f(),I(),rg(),sg(),Rg();function zg(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof ng?e:e instanceof F?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Qh(e instanceof Nf?new eg({functionName:a,cause:e}):[3,hg.code].includes(c)&&(l||u||d||f)||c===gg.code&&u===`execution reverted`&&l?new $h({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof ag?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}tm(),Ip();function Bg(e){return Qp(`0x${Fp(`0x${e.substring(4)}`).substring(26)}`)}wf(),Tf(),yp(),z();async function Vg({hash:e,signature:t}){let n=N(e)?e:bp(e),{secp256k1:r}=await Promise.resolve().then(()=>(uc(),Ns));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Hg(Number(a??i));return new r.Signature(L(e),L(n)).addRecoveryBit(o)}let e=N(t)?t:bp(t);if(P(e)!==65)throw Error(`invalid signature length`);let n=Hg(vp(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Hg(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Ug({hash:e,signature:t}){return Bg(await Vg({hash:e,signature:t}))}I(),th(),Pp(),z();function Wg(e,t=`hex`){let n=Gg(e),r=$m(new Uint8Array(n.length));return n.encode(r),t===`hex`?Sp(r.bytes):r.bytes}function Gg(e){return Array.isArray(e)?Kg(e.map(e=>Gg(e))):qg(e)}function Kg(e){let t=e.reduce((e,t)=>e+t.length,0),n=Jg(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function qg(e){let t=typeof e==`string`?kp(e):e,n=Jg(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Jg(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new F(`Length is too large.`)}lm(),Pp(),z(),Ip();function Yg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Fp(cm([`0x05`,Wg([t?R(t):`0x`,i,n?R(n):`0x`])]));return r===`bytes`?kp(a):a}async function Xg(e){let{authorization:t,signature:n}=e;return Ug({hash:Yg(t),signature:n??t})}Mh(),Ph(),I(),qh();var Zg=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Bh({from:t?.address,to:u,value:d!==void 0&&`${jh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Nh(o)} gwei`,maxFeePerGas:s!==void 0&&`${Nh(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Nh(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},Qg,$g,e_,t_,n_,r_,i_,a_,o_,s_,c_,l_,u_=o((()=>{Ph(),I(),Qg=class extends F{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(Qg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Qg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),$g=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Nh(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty($g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),e_=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Nh(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(e_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/}),t_=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(t_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),n_=class extends F{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(n_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),r_=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(r_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),i_=class extends F{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,metaMessages:[`This error could arise when the account does not have enough funds to:`,` - pay for the total gas fee,`,` - pay for the value to send.`,` `,\"The cost of the transaction is calculated as `gas * gas fee + value`, where:\",\" - `gas` is the amount of gas needed for transaction to execute,\",\" - `gas fee` is the gas fee,\",\" - `value` is the amount of ether to send to the recipient.\"],name:`InsufficientFundsError`})}},Object.defineProperty(i_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),a_=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(a_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),o_=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(o_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),s_=class extends F{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(s_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),c_=class extends F{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Nh(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Nh(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(c_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),l_=class extends F{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function d_(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof F?e.walk(e=>e?.code===Qg.code):e;return r instanceof F?new Qg({cause:e,message:r.details}):Qg.nodeMessage.test(n)?new Qg({cause:e,message:e.details}):$g.nodeMessage.test(n)?new $g({cause:e,maxFeePerGas:t?.maxFeePerGas}):e_.nodeMessage.test(n)?new e_({cause:e,maxFeePerGas:t?.maxFeePerGas}):t_.nodeMessage.test(n)?new t_({cause:e,nonce:t?.nonce}):n_.nodeMessage.test(n)?new n_({cause:e,nonce:t?.nonce}):r_.nodeMessage.test(n)?new r_({cause:e,nonce:t?.nonce}):i_.nodeMessage.test(n)?new i_({cause:e}):a_.nodeMessage.test(n)?new a_({cause:e,gas:t?.gas}):o_.nodeMessage.test(n)?new o_({cause:e,gas:t?.gas}):s_.nodeMessage.test(n)?new s_({cause:e}):c_.nodeMessage.test(n)?new c_({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new l_({cause:e})}var f_=o((()=>{I(),u_()}));u_(),f_();function p_(e,{docsPath:t,...n}){return new Zg((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}function m_(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var h_=o((()=>{}));function g_(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var __=o((()=>{}));function v_(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=y_(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Sp(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=R(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=R(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=R(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=R(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=R(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=b_[e.type]),e.value!==void 0&&(n.value=R(e.value)),n}function y_(e){return e.map(e=>({address:e.address,r:e.r?R(BigInt(e.r)):e.r,s:e.s?R(BigInt(e.s)):e.s,chainId:R(e.chainId),nonce:R(e.nonce),...e.yParity===void 0?{}:{yParity:R(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:R(e.v)}:{}}))}var b_,x_,S_=o((()=>{z(),__(),b_={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},x_=g_(`transactionRequest`,v_)}));function C_(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new np({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new np({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function w_(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=R(t)),n!==void 0&&(o.nonce=R(n)),r!==void 0&&(o.state=C_(r)),i!==void 0){if(o.state)throw new Rh;o.stateDiff=C_(i)}return o}function T_(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!nm(n,{strict:!1}))throw new Jp({address:n});if(t[n])throw new Lh({address:n});t[n]=w_(r)}return t}var E_=o((()=>{Yp(),rp(),zh(),am(),z()})),D_,O_=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),D_=2n**256n-1n}));function k_(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?Rm(t):void 0;if(a&&!nm(a.address))throw new Jp({address:a.address});if(i&&!nm(i))throw new Jp({address:i});if(n&&n>D_)throw new $g({maxFeePerGas:n});if(r&&n&&r>n)throw new c_({maxFeePerGas:n,maxPriorityFeePerGas:r})}var A_=o((()=>{zm(),O_(),Yp(),u_(),am()}));Ph(),I();var j_=class extends F{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},M_=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},N_=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Nh(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};I();var P_=class extends F{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};yp(),__();let F_={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function I_(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?vp(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?vp(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?F_[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=R_(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let L_=g_(`transaction`,I_);function R_(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function z_(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:I_(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}z();async function B_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:R(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new P_({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||z_)(s,`getBlock`)}async function V_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}yp();async function H_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await M(e,B_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?L(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):M(e,B_,`getBlock`)({}),M(e,V_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new M_;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function U_(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new j_;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await M(e,B_,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new M_;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await H_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await M(e,V_,`getGasPrice`)({}))}}yp(),z();async function W_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return vp(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?R(r):n]},{dedupe:!!r}))}Pp(),z();function G_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>kp(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Sp(e))}Pp(),z();function K_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>kp(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>kp(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Sp(e))}wf(),Pp(),z();function q_(e,t){let n=t||`hex`,r=Hn(N(e,{strict:!1})?Ep(e):e);return n===`bytes`?r:bp(r)}z();function J_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=q_(t,`bytes`);return i.set([n],0),r===`bytes`?i:Sp(i)}function Y_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(J_({commitment:e,to:r,version:n}));return i}let X_=4096,Z_=32*X_;Z_*6-1-1*X_*6,I();var Q_=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},$_=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},ev=class extends F{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},tv=class extends F{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};th(),Tf(),Pp(),z();function nv(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?kp(e.data):e.data,r=P(n);if(!r)throw new $_;if(r>761855)throw new Q_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=$m(new Uint8Array(Z_)),t=0;for(;t<X_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Sp(e.bytes))}function rv(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??nv({data:t,to:r}),a=e.commitments??G_({blobs:i,kzg:n,to:r}),o=e.proofs??K_({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}qh();function iv(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new Hh({transaction:e})}u_(),qh(),f_();function av(e,{docsPath:t,...n}){return new Kh((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}yp();async function ov(e){return vp(await e.request({method:`eth_chainId`},{dedupe:!0}))}zm(),h_(),S_(),A_();async function sv(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=Rm(n),r=a?a.id:await M(e,ov,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();k_(t);let x=a?.formatters?.transactionRequest?.format,S=(x||v_)({...m_(y,{format:x}),account:n?Rm(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||I_)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await M(e,B_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new j_;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw av(n,{...t,chain:e.chain})}}zm(),Zp(),A_();let cv=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],lv=new Map,uv=new Xp(128);async function dv(e,t){let n=t;n.account??=e.account,n.parameters??=cv;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await M(e,ov,`getChainId`)({}),c):n.chainId)}let u=r&&Rm(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||uv.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await M(e,sv,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return uv.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&uv.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await M(e,B_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await M(e,W_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=G_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Y_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=rv({blobs:p,commitments:e,proofs:K_({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=iv(n)}catch{let t=lv.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,lv.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await U_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new N_({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new M_;if(n.gasPrice===void 0){let{gasPrice:t}=await U_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await M(e,fv,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),k_(n),delete n.parameters,n}zm(),I(),z(),h_(),S_(),E_(),A_();async function fv(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?Rm(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Xg({authorization:t.authorizationList[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await dv(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?R(u):void 0)||d,ee=T_(b);k_(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||v_)({...m_(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw p_(n,{...t,account:i,chain:e.chain})}}function pv(e,t){if(!nm(e,{strict:!1}))throw new Jp({address:e});if(!nm(t,{strict:!1}))throw new Jp({address:t});return e.toLowerCase()===t.toLowerCase()}var mv=o((()=>{Yp(),am()}));function hv(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}$f(),Qm(),Tf(),qp(),yh(),Cf();let gv=`/docs/contract/decodeEventLog`;function _v(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Bf({docsPath:gv});let c=t.find(e=>e.type===`event`&&o===Kp(bf(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Vf(o,{docsPath:gv});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new Jf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=vv({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=sh(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof Mf||e instanceof Xm?new qf({abiItem:c,data:n,params:g,size:P(n)}):e}else if(a)throw new qf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function vv({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(sh([e],t)||[])[0]}mv(),Pp(),Ip(),qp();function yv(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:Kp(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?hv(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=_v({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=_v({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!bv({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function bv(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?pv(t,n):e.type===`string`||e.type===`bytes`?Fp(Ep(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function xv(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Pm({abi:t,args:n,name:r});if(!e)throw new Hf(r,{docsPath:Sv});a=e}if(a.type!==`function`)throw new Hf(void 0,{docsPath:Sv});if(!a.outputs)throw new Uf(a.name,{docsPath:Sv});let o=sh(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var Sv,Cv=o((()=>{$f(),yh(),Lm(),Sv=`/docs/contract/decodeFunctionResult`})),wv,Tv,Ev,Dv,Ov,kv=o((()=>{wv=[{inputs:[{components:[{name:`target`,type:`address`},{name:`allowFailure`,type:`bool`},{name:`callData`,type:`bytes`}],name:`calls`,type:`tuple[]`}],name:`aggregate3`,outputs:[{components:[{name:`success`,type:`bool`},{name:`returnData`,type:`bytes`}],name:`returnData`,type:`tuple[]`}],stateMutability:`view`,type:`function`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],Tv=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],Ev=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...Ev],[...Ev],Dv=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Ov=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),Av=o((()=>{})),jv,Mv,Nv,Pv,Fv=o((()=>{jv=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Mv=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Nv=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Pv=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Iv,Lv,Rv,zv,Bv,Vv=o((()=>{I(),Iv=class extends F{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Lv=class extends F{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},Rv=class extends F{constructor(){super([`No chain was provided to the request.`,\"Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient.\"].join(`\n`),{name:`ChainNotFoundError`})}},zv=class extends F{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Bv=class extends F{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Hv(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new Af({docsPath:Uv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new jf({docsPath:Uv});return cm([r,ym(i.inputs,n)])}var Uv,Wv=o((()=>{$f(),lm(),jm(),Uv=`/docs/contract/encodeDeployData`}));function Gv({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Iv({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Iv({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Kv=o((()=>{Vv()}));function qv(e,{docsPath:t,...n}){return new Zh((()=>{let t=d_(e,n);return t instanceof l_?e:t})(),{docsPath:t,...n})}var Jv=o((()=>{rg(),u_(),f_()}));function Yv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Xv=o((()=>{}));function Zv({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>Qv.delete(t),s=()=>c().map(({args:e})=>e),c=()=>Qv.get(t)||[],l=e=>Qv.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Yv();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var Qv,$v=o((()=>{Xv(),Qv=new Map})),ey,ty,ny,ry=o((()=>{Ch(),I(),Xh(),ey=class extends F{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${Yh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ty=class extends F{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Yh(t)}`,`Response: ${Sh(e)}`],name:`OffchainLookupResponseMalformedError`})}},ny=class extends F{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function iy(e){let{abi:t,data:n}=e,r=um(n,0,4),i=t.find(e=>e.type===`function`&&r===Mm(bf(e)));if(!i)throw new Wf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?sh(i.inputs,um(n,4)):void 0}}var ay=o((()=>{$f(),hm(),Nm(),yh(),Cf()}));function oy(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Pm({abi:t,args:r,name:n});if(!e)throw new Rf(n,{docsPath:sy});i=e}if(i.type!==`error`)throw new Rf(void 0,{docsPath:sy});let a=Mm(bf(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new Lf(i.name,{docsPath:sy});o=ym(i.inputs,r)}return cm([a,o])}var sy,cy=o((()=>{$f(),lm(),Nm(),jm(),Cf(),Lm(),sy=`/docs/contract/encodeErrorResult`}));function ly(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Pm({abi:t,name:n});if(!e)throw new Hf(n,{docsPath:uy});i=e}if(i.type!==`function`)throw new Hf(void 0,{docsPath:uy});if(!i.outputs)throw new Uf(i.name,{docsPath:uy});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Zf(r)})();return ym(i.outputs,a)}var uy,dy=o((()=>{$f(),jm(),Lm(),uy=`/docs/contract/encodeFunctionResult`}));async function fy(e){let{data:t,ccipRequest:n}=e,{args:[r]}=iy({abi:Tv,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await fy({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=py(e)}})),ly({abi:Tv,functionName:`query`,result:[i,a]})}function py(e){return e.name===`HttpRequestError`&&e.status?oy({abi:Tv,errorName:`HttpError`,args:[e.status,e.shortMessage]}):oy({abi:[Km],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var my=o((()=>{kv(),Jm(),ay(),cy(),dy()})),hy=c({ccipRequest:()=>_y,offchainLookup:()=>gy,offchainLookupAbiItem:()=>yy,offchainLookupSignature:()=>vy});async function gy(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=bh({data:r,abi:[yy]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:_y;try{if(!pv(i,o))throw new ny({sender:o,to:i});let{data:r}=await xy(e,{blockNumber:t,blockTag:n,data:om([l,ym([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await fy({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new ey({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function _y({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new ig({body:s,details:i?.error?Sh(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!N(i)){r=new ty({result:i,url:a});continue}return i}catch(e){r=new ig({body:s,details:e.message,url:a})}}throw r}var vy,yy,by=o((()=>{Dy(),ry(),sg(),xh(),jm(),mv(),lm(),wf(),my(),Ch(),vy=`0x556f1830`,yy={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function xy(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?Rm(n):void 0;if(u&&(f||p))throw new F(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new F(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?wy({code:u,data:d}):te?Ty({data:d,factory:f,factoryData:p,to:b}):d;try{k_(t);let n=(typeof a==`bigint`?R(a):void 0)||o,u=l?Yc(l):void 0,d=T_(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||v_)({...m_(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&Sy({request:p})&&!d&&!u)try{return await Cy(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof zv)&&!(e instanceof Iv))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=Ey(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(by(),hy));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new tg({factory:f}):qv(n,{...t,account:C,chain:e.chain})}}function Sy({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function Cy(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return Gv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new zv})(),u=(typeof a==`bigint`?R(a):void 0)||o,{schedule:d}=Zv({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=Um({abi:wv,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:wy({code:Pv,data:r})}:{to:l,data:r}},u]});return xv({abi:wv,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new ng({data:f});return f===`0x`?{data:void 0}:{data:f}}function wy(e){let{code:t,data:n}=e;return Hv({abi:_f([`constructor(bytes, bytes)`]),bytecode:jv,args:[t,n]})}function Ty(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Hv({abi:_f([`constructor(address, bytes, address, bytes)`]),bytecode:Mv,args:[i,t,n,r]})}function Ey(e){if(!(e instanceof F))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Dy=o((()=>{yf(),Xc(),zm(),kv(),Av(),Fv(),I(),Vv(),rg(),Cv(),Wv(),Wm(),Kv(),z(),Jv(),h_(),S_(),$v(),E_(),A_()}));Cv(),Wm(),Dy();async function Oy(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Um({abi:n,args:i,functionName:a});try{let{data:t}=await M(e,xy,`call`)({...o,data:s,to:r});return xv({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw zg(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let ky=new Map,Ay=new Map,jy=0;function My(e,t,n){let r=++jy,i=()=>ky.get(e)||[],a=()=>{let t=i();ky.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Ay.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(ky.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&Ay.set(e,l),o}async function Ny(e){return new Promise(t=>setTimeout(t,e))}function Py(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Ny(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Ny(r),s())};s()})(),a}I();var Fy=class extends F{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,\"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},Iy=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Vv();function Ly({chain:e,currentChainId:t}){if(!e)throw new Rv;if(t!==e.id)throw new Lv({chain:e,currentChainId:t})}async function Ry(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}zm(),I(),lm(),h_(),S_(),Zp(),A_();let zy=new Xp(128);async function By(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new Fy({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?Rm(n):null;try{k_(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Xg({authorization:o[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await M(e,ov,`getChainId`)({}),r&&Ly({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||v_)({...m_(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?om([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=zy.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(zy.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(zy.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await M(e,dv,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?om([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...cv,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await M(e,Ry,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Iy({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Iy({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Iy?e:av(e,{...t,account:y,chain:t.chain||void 0})}}zm(),Wm();async function Vy(e,t){return Vy.internal(e,By,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new Fy({docsPath:`/docs/contract/writeContract`});let u=a?Rm(a):null,d=Um({abi:i,args:s,functionName:c});try{return await M(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw zg(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Vy||={}),I();var Hy=class extends F{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function Uy(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await Ny(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}yp(),__();let Wy={\"0x0\":`reverted`,\"0x1\":`success`};function Gy(e,t){let n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(e=>hv(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?vp(e.transactionIndex):null,status:e.status?Wy[e.status]:null,type:e.type?F_[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Ky=g_(`transactionReceipt`,Gy);zm(),I(),Rg(),Wm(),lm(),yp(),z();let qy=R(0,{size:32});async function Jy(e,t){let{account:n=e.account,chain:r=e.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:s,version:c=`2.0.0`}=t,l=n?Rm(n):null,u=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(u=typeof e.dataSuffix==`string`?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});let d=t.calls.map(e=>{let t=e,n=t.abi?Um({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?om([n,t.dataSuffix]):n,to:t.to,value:t.value?R(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:R(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new kg(new F(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new Fg(new F(e,{details:e}))}let t=[];for(let n of d){let i=By(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?L(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:om([...n.map(e=>e.status===`fulfilled`?e.value:qy),R(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw av(n,{...t,account:l,chain:t.chain})}}hm(),hp(),yp();async function Yy(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=mp(mm(t,-64,-32)),r=mm(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>qy.slice(2)===t?void 0:e.request({method:`eth_getTransactionReceipt`,params:[`0x${t}`]},{dedupe:!0}))),a=i.some(e=>e===null)?100:i.every(e=>e?.status===`0x1`)?200:i.every(e=>e?.status===`0x0`)?500:600;return{atomic:!1,chainId:vp(n),receipts:i.filter(Boolean),status:a,version:`2.0.0`}}return e.request({method:`wallet_getCallsStatus`,params:[t]})}let{atomic:r=!1,chainId:i,receipts:a,version:o=`2.0.0`,...s}=await n(t.id),[c,l]=(()=>{let e=s.status;return e>=100&&e<200?[`pending`,e]:e>=200&&e<300?[`success`,e]:e>=300&&e<700?[`failure`,e]:e===`CONFIRMED`?[`success`,200]:e===`PENDING`?[`pending`,100]:[void 0,e]})();return{...s,atomic:r,chainId:i?vp(i):void 0,receipts:a?.map(e=>({...e,blockNumber:L(e.blockNumber),gasUsed:L(e.gasUsed),status:Wy[e.status]}))??[],statusCode:l,status:c,version:o}}I(),Xv(),Ch();async function Xy(e,t){let{id:n,pollingInterval:r=e.pollingInterval,status:i=({statusCode:e})=>e===200||e>=300,retryCount:a=4,retryDelay:o=({count:e})=>~~(1<<e)*200,timeout:s=6e4,throwOnFailure:c=!1}=t,l=Sh([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=Yv(),p,m=My(l,{resolve:d,reject:f},t=>{let s=Py(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await Uy(async()=>{let t=await M(e,Yy,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Hy(t);return t},{retryCount:a,delay:o});if(!i(s))return;r(()=>t.resolve(s))}catch(e){r(()=>t.reject(e))}},{interval:r,emitOnBegin:!0});return s});return p=s?setTimeout(()=>{m(),clearTimeout(p),f(new Zy({id:n}))},s):void 0,await u}var Zy=class extends F{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let Qy=256,$y;function eb(e=11){if(!$y||Qy+e>256*2){$y=``,Qy=0;for(let e=0;e<256;e++)$y+=(256+Math.random()*256|0).toString(16).substring(1)}return $y.substring(Qy,Qy+++e)}zm();function tb(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?Rm(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:eb(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}z();async function nb(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:R(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}O_(),Yp(),I(),Vv(),u_(),am(),Tf(),hm(),yp();function rb(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!nm(n))throw new Jp({address:n});if(t<0)throw new Bv({chainId:t})}ab(e)}function ib(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new $_;for(let e of t){let t=P(e),n=vp(um(e,0,1));if(t!==32)throw new ev({hash:e,size:t});if(n!==1)throw new tv({hash:e,version:n})}}ab(e)}function ab(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Bv({chainId:t});if(i&&!nm(i))throw new Jp({address:i});if(r&&r>D_)throw new $g({maxFeePerGas:r});if(n&&r&&n>r)throw new c_({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ob(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Bv({chainId:t});if(a&&!nm(a))throw new Jp({address:a});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>D_)throw new $g({maxFeePerGas:r})}function sb(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!nm(a))throw new Jp({address:a});if(t!==void 0&&t<=0)throw new Bv({chainId:t});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>D_)throw new $g({maxFeePerGas:r})}Yp(),qh(),am();function cb(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new Gh({storageKey:i[e]});if(!nm(r,{strict:!1}))throw new Jp({address:r});t.push([r,i])}return t}qh(),lm(),hp(),z();function lb(e,t){let n=iv(e);return n===`eip1559`?fb(e,t):n===`eip2930`?pb(e,t):n===`eip4844`?db(e,t):n===`eip7702`?ub(e,t):mb(e,t)}function ub(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;rb(e);let f=cb(u),p=gb(n);return cm([`0x04`,Wg([R(r),a?R(a):`0x`,l?R(l):`0x`,c?R(c):`0x`,i?R(i):`0x`,o??`0x`,s?R(s):`0x`,d??`0x`,f,p,...hb(e,t)])])}function db(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;ib(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Sp(e)),n=e.kzg,r=G_({blobs:t,kzg:n});f===void 0&&(f=Y_({commitments:r})),p===void 0&&(p=rv({blobs:t,commitments:r,proofs:K_({blobs:t,commitments:r,kzg:n})}))}let m=cb(u),h=[R(n),i?R(i):`0x`,l?R(l):`0x`,c?R(c):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,d??`0x`,m,s?R(s):`0x`,f??[],...hb(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return cm([`0x03`,Wg(p?[h,g,_,v]:h)])}function fb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;ab(e);let d=cb(l);return cm([`0x02`,Wg([R(n),i?R(i):`0x`,c?R(c):`0x`,s?R(s):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,u??`0x`,d,...hb(e,t)])])}function pb(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;ob(e);let u=cb(c);return cm([`0x01`,Wg([R(n),a?R(a):`0x`,l?R(l):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`,u,...hb(e,t)])])}function mb(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;sb(e);let l=[a?R(a):`0x`,c?R(c):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new Vh({v:t.v});return e})(),r=mp(t.r),i=mp(t.s);l=[...l,R(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,R(n),`0x`,`0x`]);return Wg(l)}function hb(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=mp(n.r),o=mp(n.s);return[typeof i==`number`?i?R(1):`0x`:r===0n?`0x`:r===1n?R(1):r===27n?`0x`:R(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}z();function gb(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?bp(e):`0x`,a,r?bp(r):`0x`,...hb({},i)])}return t}tm(),mv();async function _b({address:e,authorization:t,signature:n}){return pv($p(e),await Xg({authorization:t,signature:n}))}Zp();let vb=new Xp(8192);function yb(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(vb.get(n))return vb.get(n);let r=e().finally(()=>vb.delete(n));return vb.set(n,r),r}I(),sg(),Rg(),z(),Ch();function bb(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new bg(Error(`method not supported`),{method:l});return yb(()=>Uy(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case dg.code:throw new dg(t);case fg.code:throw new fg(t);case pg.code:throw new pg(t,{method:n.method});case mg.code:throw new mg(t);case hg.code:throw new hg(t);case gg.code:throw new gg(t);case _g.code:throw new _g(t);case vg.code:throw new vg(t);case yg.code:throw new yg(t);case bg.code:throw new bg(t,{method:n.method});case xg.code:throw new xg(t);case Sg.code:throw new Sg(t);case Cg.code:throw new Cg(t);case wg.code:throw new wg(t);case Tg.code:throw new Tg(t);case Eg.code:throw new Eg(t);case Dg.code:throw new Dg(t);case Og.code:throw new Og(t);case kg.code:throw new kg(t);case Ag.code:throw new Ag(t);case jg.code:throw new jg(t);case Mg.code:throw new Mg(t);case Ng.code:throw new Ng(t);case Pg.code:throw new Pg(t);case Fg.code:throw new Fg(t);case 5e3:throw new Cg(t);case Ig.code:throw new Ig(t);default:throw e instanceof F?e:new Lg(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof ig){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>xb(e)}),{enabled:i,id:i?Cp(`${c}.${Sh(n)}`):void 0})}}function xb(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===xg.code||e.code===hg.code:e instanceof ig&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function Sb(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function Cb(){return{}}I(),pp(),th(),Pp(),z();function wb(e,t=`hex`){return Tb($m((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new dp(e);return kp(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Tb(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Sp(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Eb(e,n,128),i=e.readBytes(r);return t===`hex`?Sp(i):i}return Db(e,Eb(e,n,192),t)}function Eb(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new F(`Invalid RLP prefix`)}function Db(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Tb(e,n));return i}wf(),Tf();function Ob(e){return N(e)&&P(e)===32}function kb(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function Ab(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let jb=Ab();sg(),Ch();function Mb(e,t={}){let{url:n,headers:r}=Nb(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await kb(async({signal:e})=>{let t={...l,body:Sh(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??jb.take(),...e})):{jsonrpc:`2.0`,id:i.id??jb.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new og({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new ig({body:i,details:Sh(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof ig||e instanceof og?e:new ig({body:i,cause:e,url:n})}}}}function Nb(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}lm(),Tf(),z();function Pb(e){let t=typeof e==`string`?Cp(e):typeof e.raw==`string`?e.raw:Sp(e.raw);return om([Cp(`\u0019Ethereum Signed Message:\n${P(t)}`),t])}Ip();function Fb(e,t){return Fp(Pb(e),t)}Ch(),I();var Ib=class extends F{constructor({domain:e}){super(`Invalid domain \"${Sh(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Lb=class extends F{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Rb=class extends F{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};$f(),Yp(),am(),Tf(),z(),vm(),Ch();function zb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{let n={...t};for(let t of e){let{name:e,type:r}=t;r===`address`&&(n[e]=n[e].toLowerCase())}return n};return Sh({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Bb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(_m);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;R(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!nm(o))throw new Jp({address:o});let c=r.match(gm);if(c){let[e,t]=c;if(t&&P(o)!==Number.parseInt(t,10))throw new Kf({expectedSize:Number.parseInt(t,10),givenSize:P(o)})}let l=i[r];l&&(Hb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Ib({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Lb({primaryType:r,types:i})}function Vb({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function Hb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Rb({type:e})}jm(),lm(),z(),Ip();function Ub(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Vb({domain:t}),...e.types};Bb({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Wb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Gb({data:n,primaryType:r,types:i})),Fp(om(a))}function Wb({domain:e,types:t}){return Gb({data:e,primaryType:`EIP712Domain`,types:t})}function Gb({data:e,primaryType:t,types:n}){return Fp(Kb({data:e,primaryType:t,types:n}))}function Kb({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[qb({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Xb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return ym(r,i)}function qb({primaryType:e,types:t}){return Fp(bp(Jb({primaryType:e,types:t})))}function Jb({primaryType:e,types:t}){let n=``,r=Yb({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Yb({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Yb({primaryType:e.type,types:t},n);return n}function Xb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Fp(Kb({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Fp(r)];if(n===`string`)return[{type:`bytes32`},Fp(bp(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Xb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Fp(ym(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}rt(),A();let Zb=Ya(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Qb(e){if(typeof e==`string`){if(k(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new tx(e)}else dc(e.authorization)}function $b(e){Qb(e);let t=Qr(k(e,-64,-32)),n=k(e,-t-64,-64),r=k(e,0,-t-64),[i,a,o]=Ka(Zb,n);return{authorization:Ac({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function ex(e){try{return Qb(e),!0}catch{return!1}}var tx=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};qh(),hm(),yp();function nx(e){let t=mm(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&vp(t)>=192)return`legacy`;throw new Uh({serializedType:t})}Yp(),qh(),am(),wf(),sp(),hp(),yp();function rx(e){let t=nx(e);return t===`eip1559`?ox(e):t===`eip2930`?sx(e):t===`eip4844`?ax(e):t===`eip7702`?ix(e):cx(e)}function ix(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Wh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:vp(n),type:`eip7702`};return N(s)&&s!==`0x`&&(h.to=s),N(o)&&o!==`0x`&&(h.gas=L(o)),N(l)&&l!==`0x`&&(h.data=l),N(r)&&(h.nonce=r===`0x`?0:vp(r)),N(c)&&c!==`0x`&&(h.value=L(c)),N(a)&&a!==`0x`&&(h.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(h.accessList=ux(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=dx(d)),rb(h),{...t.length===13?fx(t):void 0,...h}}function ax(e){let t=lx(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new Wh({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:vp(a),to:u,type:`eip4844`};return N(l)&&l!==`0x`&&(S.gas=L(l)),N(f)&&f!==`0x`&&(S.data=f),N(o)&&(S.nonce=o===`0x`?0:vp(o)),N(d)&&d!==`0x`&&(S.value=L(d)),N(m)&&m!==`0x`&&(S.maxFeePerBlobGas=L(m)),N(c)&&c!==`0x`&&(S.maxFeePerGas=L(c)),N(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=L(s)),p.length!==0&&p!==`0x`&&(S.accessList=ux(p)),y&&b&&x&&(S.sidecars=rv({blobs:y,commitments:b,proofs:x})),ib(S),{...r.length===14?fx(r):void 0,...S}}function ox(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Wh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:vp(n),type:`eip1559`};return N(s)&&s!==`0x`&&(m.to=s),N(o)&&o!==`0x`&&(m.gas=L(o)),N(l)&&l!==`0x`&&(m.data=l),N(r)&&(m.nonce=r===`0x`?0:vp(r)),N(c)&&c!==`0x`&&(m.value=L(c)),N(a)&&a!==`0x`&&(m.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(m.accessList=ux(u)),ab(m),{...t.length===12?fx(t):void 0,...m}}function sx(e){let t=lx(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Wh({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:vp(n),type:`eip2930`};return N(o)&&o!==`0x`&&(p.to=o),N(a)&&a!==`0x`&&(p.gas=L(a)),N(c)&&c!==`0x`&&(p.data=c),N(r)&&(p.nonce=r===`0x`?0:vp(r)),N(s)&&s!==`0x`&&(p.value=L(s)),N(i)&&i!==`0x`&&(p.gasPrice=L(i)),l.length!==0&&l!==`0x`&&(p.accessList=ux(l)),ob(p),{...t.length===11?fx(t):void 0,...p}}function cx(e){let t=wb(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Wh({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(N(a)&&a!==`0x`&&(d.to=a),N(i)&&i!==`0x`&&(d.gas=L(i)),N(s)&&s!==`0x`&&(d.data=s),N(n)&&(d.nonce=n===`0x`?0:vp(n)),N(o)&&o!==`0x`&&(d.value=L(o)),N(r)&&r!==`0x`&&(d.gasPrice=L(r)),sb(d),t.length===6)return d;let f=N(c)&&c!==`0x`?L(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new Vh({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function lx(e){return wb(`0x${e.slice(4)}`,`hex`)}function ux(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!nm(r,{strict:!1}))throw new Jp({address:r});t.push({address:r,storageKeys:i.map(e=>Ob(e)?e:mp(e))})}return t}function dx(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:vp(r),nonce:a===`0x`?0:vp(a),...fx([o,s,c])})}return t}function fx(e){let t=e.slice(-3),n=t[0]===`0x`||L(t[0])===0n?27n:28n;return{r:ap(t[1],{size:32}),s:ap(t[2],{size:32}),v:n,yParity:n===27n?0:1}}I();var px=class extends F{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function mx(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new px({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,`0`);return BigInt(`${i?`-`:``}${n}${r}`)}kv(),Fv(),$f(),I(),rg(),Cv(),Wm(),Kv();async function hx(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return Gv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=Um({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=zg(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>M(e,Oy,`readContract`)({...f===null?{code:Pv}:{address:f},abi:wv,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new Nf;if(!a)throw new ng({data:r});let e=xv({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=zg(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new F(`multicall results mismatch`);return _}rt(),A();function gx(e){if(k(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new yx(e)}function _x(e){let{data:t,signature:n,to:r}=e;return E(qa(Ya(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function vx(e){try{return gx(e),!0}catch{return!1}}var yx=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};uc(),yp(),Pp();function bx({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Ys.Signature(L(e),L(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:kp(o)}kv(),Fv(),rg(),Wv(),Wm(),tm(),mv(),lm(),wf(),yp(),z(),Dy();async function xx(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return N(e)?e:typeof e==`object`&&`r`in e&&`s`in e?bx(e):Sp(e)})();try{if(s===`eoa`)try{if(pv($p(n),await Ug({hash:i,signature:c})))return!0}catch{}return ex(c)?await Sx(e,{...t,multicallAddress:o,signature:c}):await Cx(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(pv($p(n),await Ug({hash:i,signature:c})))return!0}catch{}if(e instanceof Tx)return!1;throw e}}async function Sx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=$b(t.signature);if(await nb(e,{address:n,blockNumber:r,blockTag:i})===cm([`0xef0100`,s.address]))return await wx(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:R(s.r,{size:32}),s:R(s.s,{size:32}),yParity:s.yParity};if(!await _b({address:n,authorization:d}))throw new Tx;let f=await M(e,Oy,`readContract`)({...o?{address:o}:{code:Pv},authorizationList:[d],abi:wv,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Um({abi:Dv,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Tx}async function Cx(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||vx(o)?o:_x({data:i,signature:o,to:r}))(),u=s?{to:s,data:Um({abi:Ov,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Hv({abi:Ov,args:[n,a,l],bytecode:Nv}),...c},{data:d}=await M(e,xy,`call`)(u).catch(e=>{throw e instanceof Zh?new Tx:e});if(_p(d??`0x0`))return!0;throw new Tx}async function wx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await M(e,Oy,`readContract`)({address:n,abi:Dv,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Qh?new Tx:e})).startsWith(`0x1626ba7e`))return!0;throw new Tx}var Tx=class extends Error{};async function Ex(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await M(e,Jy,`sendCalls`)(t);return await M(e,Xy,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}zm(),z(),S_(),A_();async function Dx(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Fy({docsPath:`/docs/actions/wallet/signTransaction`});let a=Rm(n);k_({account:a,...t});let o=await M(e,ov,`getChainId`)({});r!==null&&Ly({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||v_;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:R(o),from:a.address}]},{retryCount:0})}zm();async function Ox(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Fy({docsPath:`/docs/actions/wallet/signTypedData`});let o=Rm(n),s={EIP712Domain:Vb({domain:r}),...t.types};if(Bb({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=zb({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function kx({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=eb();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:bb(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Ax(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>kx({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}I();var jx=class extends F{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};sg(),$v();function Mx(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new jx;let b=Mb(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return kx({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=Zv({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new ag({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}var Nx;function B(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var Px=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Fx=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Nx=globalThis).__zod_globalConfig??(Nx.__zod_globalConfig={});let Ix=globalThis.__zod_globalConfig;function Lx(e){return e&&Object.assign(Ix,e),Ix}function Rx(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function zx(e,t){return typeof t==`bigint`?t.toString():t}function Bx(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Vx(e){return e==null}function Hx(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Ux=Symbol(`evaluating`);function V(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Ux)return r===void 0&&(r=Ux,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let Wx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Gx(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Kx(e){if(Gx(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Gx(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let qx=new Set([`string`,`number`,`symbol`]),Jx=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Yx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Xx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Zx(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Qx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function $x(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function eS(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function tS(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function nS(e){return typeof e==`string`?e:e?.message}function rS(e,t,n){let r=e.message?e.message:nS(e.inst?._zod.def?.error?.(e))??nS(t?.error?.(e))??nS(n.customError?.(e))??nS(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function iS(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function aS(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let oS=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,zx,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},sS=B(`$ZodError`,oS),cS=B(`$ZodError`,oS,{Parent:Error}),lS=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Px;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>rS(e,a,Lx())));throw Wx(t,i?.callee),t}return o.value},uS=lS(cS),dS=(e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>rS(e,a,Lx())));throw Wx(t,i?.callee),t}return o.value})(cS),fS=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Px;return a.issues.length?{success:!1,error:new(e??sS)(a.issues.map(e=>rS(e,i,Lx())))}:{success:!0,data:a.value}})(cS),pS=(e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>rS(e,i,Lx())))}:{success:!0,data:a.value}})(cS),mS=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return lS(e)(t,n,i)})(cS),hS=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},gS=/^-?\\d+n?$/,_S=/^-?\\d+(?:\\.\\d+)?$/,vS=/^(?:true|false)$/i,yS=/^null$/i,bS=/^undefined$/i,xS=B(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),SS=B(`$ZodCheckMaxLength`,(e,t)=>{var n;xS.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Vx(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=iS(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),CS=B(`$ZodCheckMinLength`,(e,t)=>{var n;xS.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Vx(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=iS(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),wS=B(`$ZodCheckStringFormat`,(e,t)=>{var n,r;xS.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),TS=B(`$ZodCheckRegex`,(e,t)=>{wS.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),ES={major:4,minor:4,patch:2},H=B(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ES;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=$x(e),i;for(let a of t){if(a._zod.def.when){if(eS(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new Px;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=$x(e,t))});else{if(e.issues.length===t)continue;r||=$x(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if($x(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Px;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Px;return o.then(e=>t(e,r,a))}return t(o,r,a)}}V(e,`~standard`,()=>({validate:t=>{try{let n=fS(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return pS(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),DS=B(`$ZodString`,(e,t)=>{H.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??hS(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),OS=B(`$ZodNumber`,(e,t)=>{H.init(e,t),e._zod.pattern=e._zod.bag.pattern??_S,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),kS=B(`$ZodBoolean`,(e,t)=>{H.init(e,t),e._zod.pattern=vS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),AS=B(`$ZodBigInt`,(e,t)=>{H.init(e,t),e._zod.pattern=gS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),jS=B(`$ZodUndefined`,(e,t)=>{H.init(e,t),e._zod.pattern=bS,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),MS=B(`$ZodNull`,(e,t)=>{H.init(e,t),e._zod.pattern=yS,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),NS=B(`$ZodUnknown`,(e,t)=>{H.init(e,t),e._zod.parse=e=>e}),PS=B(`$ZodVoid`,(e,t)=>{H.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function FS(e,t,n){e.issues.length&&t.issues.push(...tS(n,e.issues)),t.value[n]=e.value}let IS=B(`$ZodArray`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>FS(t,n,e))):FS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function LS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...tS(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function RS(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Qx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function zS(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>LS(e,n,i,t,u,d))):LS(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let BS=B(`$ZodObject`,(e,t)=>{if(H.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Bx(()=>RS(t));V(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Gx,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>LS(n,t,e,s,r,i))):LS(a,t,e,s,r,i)}return i?zS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function VS(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!$x(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>rS(e,r,Lx())))}),t)}let HS=B(`$ZodUnion`,(e,t)=>{H.init(e,t),V(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),V(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),V(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),V(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Hx(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>VS(t,r,e,i)):VS(o,r,e,i)}}),US=B(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,HS.init(e,t);let n=e._zod.parse;V(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Bx(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Gx(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),WS=B(`$ZodTuple`,(e,t)=>{H.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=GS(n,`optin`),c=GS(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>KS(t,r,e))):KS(a,r,e)}}return o.length?Promise.all(o).then(()=>qS(l,r,n,a,c)):qS(l,r,n,a,c)}});function GS(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function KS(e,t,n){e.issues.length&&t.issues.push(...tS(n,e.issues)),t.value[n]=e.value}function qS(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...tS(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}let JS=B(`$ZodRecord`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Kx(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>rS(e,r,Lx())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...tS(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...tS(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&_S.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>rS(e,r,Lx())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...tS(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...tS(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),YS=B(`$ZodEnum`,(e,t)=>{H.init(e,t);let n=Rx(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>qx.has(typeof e)).map(e=>typeof e==`string`?Yx(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),XS=B(`$ZodLiteral`,(e,t)=>{if(H.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Yx(e):e?Yx(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),ZS=B(`$ZodTransform`,(e,t)=>{H.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Fx(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new Px;return n.value=i,n}});function QS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let $S=B(`$ZodOptional`,(e,t)=>{H.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,V(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),V(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Hx(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>QS(t,e.value)):QS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),eC=B(`$ZodNullable`,(e,t)=>{H.init(e,t),V(e._zod,`optin`,()=>t.innerType._zod.optin),V(e._zod,`optout`,()=>t.innerType._zod.optout),V(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Hx(e.source)}|null)$`):void 0}),V(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),tC=B(`$ZodPipe`,(e,t)=>{H.init(e,t),V(e._zod,`values`,()=>t.in._zod.values),V(e._zod,`optin`,()=>t.in._zod.optin),V(e._zod,`optout`,()=>t.out._zod.optout),V(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>nC(e,t.in,n)):nC(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>nC(e,t.out,n)):nC(r,t.out,n)}});function nC(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let rC=B(`$ZodCodec`,(e,t)=>{H.init(e,t),V(e._zod,`values`,()=>t.in._zod.values),V(e._zod,`optin`,()=>t.in._zod.optin),V(e._zod,`optout`,()=>t.out._zod.optout),V(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>iC(e,t,n)):iC(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>iC(e,t,n)):iC(r,t,n)}}});function iC(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>aC(e,r,t.out,n)):aC(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>aC(e,r,t.in,n)):aC(e,r,t.in,n)}}function aC(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let oC=B(`$ZodReadonly`,(e,t)=>{H.init(e,t),V(e._zod,`propValues`,()=>t.innerType._zod.propValues),V(e._zod,`values`,()=>t.innerType._zod.values),V(e._zod,`optin`,()=>t.innerType?._zod?.optin),V(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(sC):sC(r)}});function sC(e){return e.value=Object.freeze(e.value),e}let cC=B(`$ZodTemplateLiteral`,(e,t)=>{H.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||Jx.has(typeof e))n.push(Yx(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),lC=B(`$ZodCustom`,(e,t)=>{xS.init(e,t),H.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>uC(t,n,r,e));uC(i,n,r,e)}});function uC(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(aS(e))}}function dC(e,t){return new e({type:`string`,...Zx(t)})}function fC(e,t){return new e({type:`number`,checks:[],...Zx(t)})}function pC(e,t){return new e({type:`boolean`,...Zx(t)})}function mC(e,t){return new e({type:`bigint`,...Zx(t)})}function hC(e,t){return new e({type:`undefined`,...Zx(t)})}function gC(e,t){return new e({type:`null`,...Zx(t)})}function _C(e){return new e({type:`unknown`})}function vC(e,t){return new e({type:`void`,...Zx(t)})}function yC(e,t){return new SS({check:`max_length`,...Zx(t),maximum:e})}function bC(e,t){return new CS({check:`min_length`,...Zx(t),minimum:e})}function xC(e,t){return new TS({check:`string_format`,format:`regex`,...Zx(t),pattern:e})}function SC(e,t,n){let r=Zx(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function CC(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Zx(n)})}let wC=B(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);H.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>uS(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>fS(e,t,n),e.parseAsync=async(t,n)=>dS(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>pS(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Xx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),TC=B(`ZodMiniString`,(e,t)=>{DS.init(e,t),wC.init(e,t)});function U(e){return dC(TC,e)}let EC=B(`ZodMiniNumber`,(e,t)=>{OS.init(e,t),wC.init(e,t)});function DC(e){return fC(EC,e)}let OC=B(`ZodMiniBoolean`,(e,t)=>{kS.init(e,t),wC.init(e,t)});function kC(e){return pC(OC,e)}let AC=B(`ZodMiniBigInt`,(e,t)=>{AS.init(e,t),wC.init(e,t)});function jC(e){return mC(AC,e)}let MC=B(`ZodMiniUndefined`,(e,t)=>{jS.init(e,t),wC.init(e,t)});function NC(e){return hC(MC,e)}let PC=B(`ZodMiniNull`,(e,t)=>{MS.init(e,t),wC.init(e,t)});function FC(e){return gC(PC,e)}let IC=B(`ZodMiniUnknown`,(e,t)=>{NS.init(e,t),wC.init(e,t)});function LC(){return _C(IC)}let RC=B(`ZodMiniVoid`,(e,t)=>{PS.init(e,t),wC.init(e,t)});function zC(e){return vC(RC,e)}let BC=B(`ZodMiniArray`,(e,t)=>{IS.init(e,t),wC.init(e,t)});function W(e,t){return new BC({type:`array`,element:e,...Zx(t)})}let VC=B(`ZodMiniObject`,(e,t)=>{BS.init(e,t),wC.init(e,t),V(e,`shape`,()=>t.shape)});function G(e,t){return new VC({type:`object`,shape:e??{},...Zx(t)})}let HC=B(`ZodMiniUnion`,(e,t)=>{HS.init(e,t),wC.init(e,t)});function UC(e,t){return new HC({type:`union`,options:e,...Zx(t)})}let WC=B(`ZodMiniDiscriminatedUnion`,(e,t)=>{US.init(e,t),wC.init(e,t)});function GC(e,t,n){return new WC({type:`union`,options:t,discriminator:e,...Zx(n)})}let KC=B(`ZodMiniTuple`,(e,t)=>{WS.init(e,t),wC.init(e,t)});function qC(e,t,n){let r=t instanceof H;return new KC({type:`tuple`,items:e,rest:r?t:null,...Zx(r?n:t)})}let JC=B(`ZodMiniRecord`,(e,t)=>{JS.init(e,t),wC.init(e,t)});function YC(e,t,n){return!t||!t._zod?new JC({type:`record`,keyType:U(),valueType:e,...Zx(t)}):new JC({type:`record`,keyType:e,valueType:t,...Zx(n)})}let XC=B(`ZodMiniEnum`,(e,t)=>{YS.init(e,t),wC.init(e,t),e.options=Object.values(t.entries)});function ZC(e,t){return new XC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Zx(t)})}let QC=B(`ZodMiniLiteral`,(e,t)=>{XS.init(e,t),wC.init(e,t)});function K(e,t){return new QC({type:`literal`,values:Array.isArray(e)?e:[e],...Zx(t)})}let $C=B(`ZodMiniTransform`,(e,t)=>{ZS.init(e,t),wC.init(e,t)});function ew(e){return new $C({type:`transform`,transform:e})}let tw=B(`ZodMiniOptional`,(e,t)=>{$S.init(e,t),wC.init(e,t)});function q(e){return new tw({type:`optional`,innerType:e})}let nw=B(`ZodMiniNullable`,(e,t)=>{eC.init(e,t),wC.init(e,t)});function rw(e){return new nw({type:`nullable`,innerType:e})}let iw=B(`ZodMiniPipe`,(e,t)=>{tC.init(e,t),wC.init(e,t)});function aw(e,t){return new iw({type:`pipe`,in:e,out:t})}let ow=B(`ZodMiniCodec`,(e,t)=>{iw.init(e,t),rC.init(e,t)});function sw(e,t,n){return new ow({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let cw=B(`ZodMiniReadonly`,(e,t)=>{oC.init(e,t),wC.init(e,t)});function J(e){return new cw({type:`readonly`,innerType:e})}let lw=B(`ZodMiniTemplateLiteral`,(e,t)=>{cC.init(e,t),wC.init(e,t)});function uw(e,t){return new lw({type:`template_literal`,parts:e,...Zx(t)})}let dw=B(`ZodMiniCustom`,(e,t)=>{lC.init(e,t),wC.init(e,t)});function fw(e,t){return SC(dw,e??(()=>!0),t)}function pw(e,t={}){return CC(dw,e,t)}function mw(e){return e}function hw(e){return e}let Y=()=>uw([`0x`,U()],`Expected address`),gw=()=>sw(UC([X(),jC()]),jC(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:Xr(e),encode:e=>O(e)}),X=()=>uw([`0x`,U()],`Expected hex value`),_w=()=>sw(UC([X(),DC()]),DC(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Qr(e),encode:e=>O(e)}),vw=G({address:Y(),blockHash:X(),blockNumber:gw(),data:X(),logIndex:_w(),removed:kC(),topics:J(W(X())),transactionHash:X(),transactionIndex:_w()}),yw=G({blobGasPrice:q(gw()),blobGasUsed:q(gw()),blockHash:X(),blockNumber:gw(),contractAddress:rw(Y()),cumulativeGasUsed:gw(),effectiveGasPrice:gw(),feePayer:q(Y()),feeToken:q(Y()),from:Y(),gasUsed:gw(),logs:W(vw),logsBloom:X(),root:q(X()),status:sw(X(),ZC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:rw(Y()),transactionHash:X(),transactionIndex:_w(),type:X()}),bw=fw(),xw=UC([K(`secp256k1`),K(`p256`),K(`webAuthn`)]),Sw=G({address:Y(),chainId:gw(),expiry:UC([_w(),FC(),NC()]),keyId:Y(),keyType:xw,limits:q(J(W(G({token:Y(),limit:gw(),period:q(_w())})))),signature:bw}),Cw=G({data:q(X()),to:q(Y()),value:q(gw())}),ww=G({accessList:q(W(G({address:Y(),storageKeys:W(X())}))),calls:q(J(W(Cw))),chainId:q(_w()),data:q(X()),feePayer:q(UC([kC(),U()])),feePayerSignature:q(YC(U(),LC())),feeToken:q(Y()),from:q(Y()),gas:q(gw()),keyAuthorization:q(Sw),maxFeePerGas:q(gw()),maxPriorityFeePerGas:q(gw()),nonce:q(_w()),nonceKey:q(gw()),to:q(Y()),validAfter:q(_w()),validBefore:q(_w()),value:q(gw())});var Tw;(function(e){e.schema=mw({method:K(`eth_accounts`),params:void 0,returns:J(W(Y()))})})(Tw||={});var Ew;(function(e){e.schema=mw({method:K(`eth_chainId`),params:void 0,returns:X()})})(Ew||={});var Dw;(function(e){e.schema=mw({method:K(`eth_requestAccounts`),params:void 0,returns:J(W(Y()))})})(Dw||={});var Ow;(function(e){e.schema=mw({method:K(`eth_sendTransaction`),params:J(qC([ww])),returns:X()})})(Ow||={});var kw;(function(e){let t=G({address:Y(),decimals:DC(),direction:ZC([`incoming`,`outgoing`]),formatted:U(),name:U(),recipients:J(W(Y())),symbol:U(),value:X()}),n=G({decimals:DC(),formatted:U(),name:U(),symbol:U(),token:Y(),value:X()});e.schema=mw({method:K(`eth_fillTransaction`),params:J(qC([ww])),returns:G({capabilities:G({balanceDiffs:q(YC(Y(),J(W(t)))),error:q(G({abiItem:q(YC(U(),LC())),data:q(X()),errorName:U(),message:U()})),fee:q(G({amount:X(),decimals:DC(),formatted:U(),symbol:U()})),requireFunds:q(G({amount:X(),decimals:DC(),formatted:U(),token:Y(),symbol:U()})),autoSwap:q(G({maxIn:n,minOut:n,slippage:DC()})),sponsor:q(G({address:Y(),name:q(U()),url:q(U())})),sponsored:kC()}),tx:YC(U(),LC())})})})(kw||={});var Aw;(function(e){e.schema=mw({method:K(`eth_signTransaction`),params:J(qC([ww])),returns:X()})})(Aw||={});var jw;(function(e){e.schema=mw({method:K(`eth_sendTransactionSync`),params:J(qC([ww])),returns:yw})})(jw||={});var Mw;(function(e){e.schema=mw({method:K(`eth_signTypedData_v4`),params:J(qC([Y(),U()])),returns:X()})})(Mw||={});var Nw;(function(e){e.schema=mw({method:K(`personal_sign`),params:J(qC([X(),Y()])),returns:X()})})(Nw||={});let Pw=q(G({feePayer:q(UC([kC(),U()])),sync:q(kC())}));var Fw;(function(e){e.schema=mw({method:K(`wallet_sendCalls`),params:q(J(qC([G({atomicRequired:q(kC()),calls:J(W(Cw)),capabilities:Pw,chainId:q(_w()),from:q(Y()),version:q(U())})]))),returns:G({atomic:q(kC()),capabilities:Pw,chainId:q(_w()),id:U(),receipts:q(W(yw)),status:q(DC()),version:q(U())})})})(Fw||={});var Iw;(function(e){e.schema=mw({method:K(`wallet_getBalances`),params:q(J(qC([G({account:q(Y()),chainId:q(_w()),tokens:q(J(W(Y())))})]))),returns:J(W(G({address:Y(),balance:gw(),decimals:DC(),display:U(),name:U(),symbol:U()})))})})(Iw||={});var Lw;(function(e){e.schema=mw({method:K(`wallet_getCapabilities`),params:q(J(UC([qC([Y()]),qC([Y(),J(W(X()))])]))),returns:YC(X(),G({accessKeys:q(G({status:UC([K(`supported`),K(`unsupported`)])})),atomic:G({status:UC([K(`supported`),K(`ready`),K(`unsupported`)])}),feePayer:q(G({status:UC([K(`supported`),K(`unsupported`)])}))}))})})(Lw||={});var Rw;(function(e){e.parameters=G({address:q(Y()),chainId:q(gw()),expiry:DC(),keyType:q(xw),limits:q(J(W(G({token:Y(),limit:gw(),period:q(DC())})))),publicKey:q(X()),scopes:q(J(W(G({address:Y(),selector:q(UC([X(),U()])),recipients:q(J(W(Y())))}))))}),e.returns=G({keyAuthorization:Sw,rootAddress:Y()}),e.schema=mw({method:K(`wallet_authorizeAccessKey`),params:J(qC([e.parameters])),returns:e.returns})})(Rw||={});var zw;(function(e){e.parameters=G({address:q(Y()),expiry:DC(),keyType:q(xw),limits:J(W(G({token:Y(),limit:gw(),period:q(DC())}))),publicKey:q(X()),scopes:q(J(W(G({address:Y(),selector:q(UC([X(),U()])),recipients:q(J(W(Y())))}))))})})(zw||={});var Bw;(function(e){e.schema=mw({method:K(`wallet_revokeAccessKey`),params:J(qC([G({address:Y(),accessKeyAddress:Y()})])),returns:void 0})})(Bw||={});var Vw;(function(e){e.authorizeAccessKey=q(Rw.parameters),e.capabilities={request:q(UC([G({digest:q(X()),authorizeAccessKey:e.authorizeAccessKey,method:K(`register`),name:q(U()),userId:q(U())}),G({digest:q(X()),credentialId:q(U()),authorizeAccessKey:e.authorizeAccessKey,method:q(K(`login`)),selectAccount:q(kC())})])),result:G({email:q(rw(U())),keyAuthorization:q(Sw),signature:q(X()),username:q(rw(U()))})},e.schema=mw({method:K(`wallet_connect`),params:q(J(qC([G({capabilities:e.capabilities.request,chainId:q(_w()),version:q(U())})]))),returns:G({accounts:J(W(G({address:Y(),capabilities:e.capabilities.result})))})})})(Vw||={});var Hw;(function(e){let t=q(zw.parameters);e.parameters=G({capabilities:q(UC([G({digest:q(X()),authorizeAccessKey:t,method:K(`register`),name:q(U()),userId:q(U())}),G({digest:q(X()),credentialId:q(U()),authorizeAccessKey:t,method:q(K(`login`)),selectAccount:q(kC())})])),chainId:q(_w()),version:q(U())})})(Hw||={});var Uw;(function(e){e.schema=mw({method:K(`wallet_disconnect`),params:void 0,returns:void 0})})(Uw||={});var Ww;(function(e){e.schema=mw({method:K(`wallet_getCallsStatus`),params:q(J(qC([U()]))),returns:G({atomic:kC(),chainId:_w(),id:U(),receipts:q(W(yw)),status:DC(),version:U()})})})(Ww||={});var Gw;(function(e){e.parameters=G({feePayer:q(UC([kC(),U()])),to:q(Y()),token:q(Y()),value:q(U())}),e.schema=mw({method:K(`wallet_send`),params:q(J(qC([e.parameters]))),returns:G({receipt:yw})})})(Gw||={});var Kw;(function(e){e.schema=mw({method:K(`wallet_switchEthereumChain`),params:J(qC([G({chainId:_w()})])),returns:void 0})})(Kw||={});var qw;(function(e){e.schema=mw({method:K(`wallet_deposit`),params:J(qC([G({address:q(Y()),chainId:q(_w()),displayName:q(U()),token:q(Y()),value:q(U())})])),returns:zC()})})(qw||={}),zw.parameters,Hw.parameters;let Jw=hw([Tw.schema,Ew.schema,kw.schema,Dw.schema,Ow.schema,jw.schema,Aw.schema,Mw.schema,Nw.schema,Rw.schema,Vw.schema,qw.schema,Uw.schema,Iw.schema,Ww.schema,Lw.schema,Bw.schema,Gw.schema,Fw.schema,Kw.schema]),Yw=Cu();function Xw(e){return e.params?G({method:e.method,params:e.params}):G({method:e.method})}let Zw=GC(`method`,Jw.map(Xw));function Qw(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}var $w=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},eT=class extends $w{name=`InvalidChallengeError`;title=`Invalid Challenge`;status=402;type=`https://paymentauth.org/problems/invalid-challenge`;constructor(e={}){let{id:t,reason:n}=e,r=t?` \"${t}\"`:``,i=n?`: ${n}`:``;super(`Challenge${r} is invalid${i}.`)}},tT=class extends $w{name=`PaymentExpiredError`;title=`Payment Expired`;type=`https://paymentauth.org/problems/payment-expired`;constructor(e={}){let{expires:t}=e;super(t?`Payment expired at ${t}.`:`Payment has expired.`)}};function nT(e,t){if(!e)throw new eT({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new eT({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new tT({expires:e})}function rT(e){let t=Uc(e);return JSON.parse(t)}function iT(e){return Vc(Ir(e),{pad:!1,url:!0})}function aT(){return U().check(xC(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function oT(){return U().check(xC(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function sT(){return U().check(xC(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function cT(){return U().check(xC(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let lT=G({description:q(U()),digest:q(U().check(xC(/^sha-256=/,`Invalid digest format`))),expires:q(oT()),id:U(),intent:U(),method:U(),meta:q(YC(U(),U())),opaque:q(U()),realm:U(),request:YC(U(),LC())});function uT(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=e.opaque??(i===void 0?void 0:iT(i)),f=l?CT({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return lT.parse({id:f,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i!==void 0&&{meta:i},...d!==void 0&&{opaque:d}})}function dT(e,t){let n=fT(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=pT(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return uT({...a,request:rT(r),...i&&{opaque:i}},t)}function fT(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!gT(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function pT(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=mT(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function mT(e,t){if(e[t]===`\"`)return hT(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function hT(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function gT(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function _T(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return dT(n,t)}function vT(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return _T(e.headers,t)}function yT(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return bT(e.headers,t)}function bT(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return xT(n,t)}function xT(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return dT(e.slice(r,a).replace(/,\\s*$/,``),t)})}function ST(e){return[e.realm,e.method,e.intent,iT(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?iT(e.meta):``)].join(`|`)}function CT(e,t){let n=ST(e);return zc(Li(hi(t.secretKey),hi(n),{as:`Bytes`}),{url:!0,pad:!1})}function wT(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=AT(n)}return t}function TT(e,t){let n=wT(e),r=IT(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[AT(e)]??1,index:t}));return{definition:r,entries:i,header:DT(i),keys:n}}function ET(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>PT(e,t))}function DT(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${BT(n)}`}).join(`, `)}function OT(e,t){return e.map((e,n)=>{let r=jT(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function kT(e,t,n){let r=new Map;for(let e of t){let t=AT(e);r.has(t)||r.set(t,e)}let i=OT(e.filter(e=>r.has(AT(e))),n)[0];if(i)return{challenge:i,method:r.get(AT(i))}}function AT(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function jT(e,t){let n;for(let r of t){if(!MT(e,r))continue;let t={...r,specificity:NT(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function MT(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function NT(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function PT(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);VT(r,`method`),VT(i,`intent`);let a=1;for(let t of FT(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=RT(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function FT(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function IT(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>AT(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=LT(t,`payment preference \"${e}\"`)}return a}function LT(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return zT(e,t)}function RT(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return zT(Number(e),t)}function zT(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function BT(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function VT(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let HT=Symbol.for(`mppx.fetch.wrapper`),UT;function WT(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??TT(i),s=XT(r),c=async(e,t)=>{let r=YT(e,t?.headers),c=r.has(`Accept-Payment`),l=$T(r,o),u=JT(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=yT(d),g=kT(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g;_.expires&&nT(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>QT(_,v,e??f)}):void 0)??await QT(_,v,f);return ZT(y),s(u.input,{...m,headers:qT(u.headers,y)})};return c[HT]=s,c}function GT(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);UT||=globalThis.fetch,globalThis.fetch=WT({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(nE()?`same-origin`:`always`),fetch:globalThis.fetch})}function KT(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function qT(e,t){let n=KT(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function JT(e,t,n,r,i,a){let o=!!r&&!i&&eE(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function YT(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function XT(e){let t=e;for(;t[HT];)t=t[HT];return t}function ZT(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function QT(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function $T(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:ET(n),header:n}}catch{return t}}function eE(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=rE(e);return t===`same-origin`?nE()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>tE(n,e))}function tE(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function nE(){return globalThis.location!==void 0}function rE(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,nE()?globalThis.location.href:void 0)}var iE=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},aE=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function oE(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new iE;try{let e=Uc(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=sE(r);return{challenge:lT.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:rT(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new aE}}function sE(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!cE(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:iT(e)}}function cE(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function lE(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:iT(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:iT(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${Vc(JSON.stringify(o),{pad:!1,url:!0})}`}function uE(e){return e}function dE(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}rt(),A(),Br();let fE=`0x01`,pE=`0x02`,mE=`0x03`,hE=`0x04`,gE=`0x7777777777777777777777777777777777777777777777777777777777777777`;function _E(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:_E({...e,signature:t.inner}):na(vE(e))}function vE(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return gl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return vE({payload:t,signature:n.inner})}}function yE(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?k(e,0,-Jr(gE)):e;if(Jr(t)===65){let e=pc(t);return dc(e),{signature:e,type:`secp256k1`}}let n=k(t,0,1),r=k(t,1),i=Jr(r);if(n===fE){if(i!==129)throw new DE({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:Xr(k(r,64,96)),y:Xr(k(r,96,128))},prehash:Qr(k(r,128,129))!==0,signature:{r:Xr(k(r,0,32)),s:Xr(k(r,32,64))},type:`p256`}}if(n===pE){if(i<128)throw new DE({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=k(r,0,e),a,o;for(let t=37;t<e;t++){let e=$r(k(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=k(n,0,t),o=e;break}catch{}}if(!a||!o)throw new DE({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:Xr(k(r,e+64,e+96)),y:Xr(k(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:Xr(k(r,e,e+32)),s:Xr(k(r,e+32,e+64))},type:`webAuthn`}}if(n===mE||n===hE)return{userAddress:k(r,0,20),inner:yE(k(r,20)),type:`keychain`,version:n===hE?`v2`:`v1`};throw new DE({reason:`Unknown signature type identifier: ${n}. Expected ${fE} (P256), ${pE} (WebAuthn), ${mE} (Keychain V1), or ${hE} (Keychain V2)`,serialized:t})}function bE(e,t){if(typeof e==`string`)return yE(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=SE(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:na(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:na(gl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function xE(e){if(e.type===`secp256k1`)return{signature:_c(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Jr(t),r,i;for(let e=37;e<n;e++){let n=$r(k(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=k(t,0,e),i=n;break}catch{}}if(!r||!i)throw new DE({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:xE(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new EE({envelope:e})}function SE(e){if(typeof e!=`object`||!e)throw new EE({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new EE({envelope:e})}function CE(e,t={}){let n=SE(e);if(n===`secp256k1`)return E(yc(e.signature),t.magic?gE:`0x`);if(n===`p256`){let n=e;return E(fE,O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),O(+!!n.prehash,{size:1}),t.magic?gE:`0x`)}if(n===`webAuthn`){let n=e;return E(pE,E(n.metadata.authenticatorData,Wr(n.metadata.clientDataJSON)),O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),t.magic?gE:`0x`)}if(n===`keychain`){let n=e;return E(n.version===`v1`?mE:hE,n.userAddress,CE(n.inner),t.magic?gE:`0x`)}throw new EE({envelope:e})}function wE(e){let t=SE(e);if(t===`secp256k1`)return{...bc(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=E(t.metadata.authenticatorData,Wr(t.metadata.clientDataJSON));return{pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:wE(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new EE({envelope:e})}function TE(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return na(t.publicKey)})();if(!r)return!1;let i=bE(e);if(i.type===`secp256k1`)return r?vl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return ra(na(i.publicKey),r)?Bl({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return ra(na(i.publicKey),r)?Hu({challenge:Hr(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new OE(`Unable to verify signature envelope of type \"${i.type}\".`)}var EE=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Rr(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},DE=class extends T{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},OE=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};rt(),A();function kE(e){return e.startsWith(`tempo`)?AE(e).address:e}function AE(e){if(!e.startsWith(`tempox`))throw new jE({address:e});let t=e.slice(6);return Vr(t,{strict:!0}),{address:ea(t)}}var jE=class extends T{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};A();function ME(e,t={}){if(typeof e.chainId==`string`)return NE(e);let n={...e,address:kE(e.address)};return t.signature?{...n,signature:t.signature}:n}function NE(e){let{address:t,chainId:n,nonce:r}=e,i=xE(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function PE(e){return e.map(e=>NE(e))}function FE(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=yE(i)),ME(a)}function IE(e){let t=[];for(let n of e)t.push(FE(n));return t}function LE(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:O(n),nonce:O(r),signature:wE(i)}}function RE(e){return e.map(e=>LE(e))}function zE(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?CE(e.signature):void 0;return[n?O(n):`0x`,t,r?O(r):`0x`,...i?[i]:[]]}function BE(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(zE(n));return t}A();function VE(e,t={}){if(`keyId`in e)return HE(e);let n=e,r={...n,address:kE(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:kE(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:kE(e.address),selector:$E(e.selector),...e.recipients?{recipients:e.recipients.map(e=>kE(e))}:{}}))}:{}};return t.signature?{...r,signature:bE(t.signature)}:r}function HE(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=xE(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:QE(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:Xr(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&ZE(e.period)>0?{period:ZE(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function UE(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:ZE(o)||void 0,type:l,chainId:r===`0x`?0n:Xr(r),...o===void 0?{}:{expiry:ZE(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:XE(n),...r===void 0?{}:{period:ZE(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=yE(n)),VE(u)}function WE(e){return GE(e)}function GE(e){let[t]=qE(e);return Ii(mo(t))}function KE(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:$E(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:O(r),expiry:typeof i==`number`?O(i):null,keyId:kE(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:O(t),...n?{period:YE(n)}:{}})),signature:wE(s),...c?{allowedCalls:c}:{}}}function qE(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?CE(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,JE(e.limit)];return e.period&&e.period>0&&t.push(YE(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([$E(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[JE(n),s,t,i!=null&&i!==0||c||l?YE(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function JE(e){return e===0n?`0x`:O(e)}function YE(e){return e===0?`0x`:O(e)}function XE(e){return e===`0x`?0n:BigInt(e)}function ZE(e){return e===`0x`?0:Qr(e)}function QE(e){return typeof e==`string`?e:Array.isArray(e)?D(new Uint8Array(e)):e}function $E(e){if(e)return e.startsWith(`0x`)?e:fa(e)}A();let eD=`0x20c0`;function tD(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):nD(e)}function nD(e){let t=kE(e);if(!t.toLowerCase().startsWith(eD))throw Error(`invalid tip20 address.`);return Xr(k(t,6))}function Z(e){if(typeof e==`string`){let t=kE(e);return $i(t),t}return E(eD,O(e,{size:18}))}A();let rD={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function iD(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ii(Wr(rD[e]??e))}let aD={...Wc,tempo:`0x76`},oD={...Gc,\"0x76\":`tempo`};function sD(e,t={}){if(!e)return null;let n=Kc(e);return n.type=oD[e.type],e.aaAuthorizationList&&(n.authorizationList=PE(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=xE(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=HE(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=_c(e.feePayerSignature),n.feePayerSignature.v=Cc(n.feePayerSignature.yParity)),n}A();function cD(e){let t=wu({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=RE(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?kE(e.to):e.to,value:e.value?O(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?kE(e.to):void 0,value:e.value?O(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=Z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=KE(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=O(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=O(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return qr(6);if(typeof e.nonceKey==`bigint`)return O(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=aD.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}rt(),A();let lD=`tempo`;function uD(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new _D;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new vD({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&$i(e.to,{strict:!1});if(n<=0)throw new ku({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Ou({feeCap:r});if(i&&r&&i>r)throw new ju({maxFeePerGas:r,maxPriorityFeePerGas:i})}function dD(e){let t=so(k(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new Au({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:lD});let y={chainId:Number(n),type:lD};ei(a)&&a!==`0x`&&(y.gas=BigInt(a)),ei(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),ei(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),ei(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),ei(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),ei(u)&&u!==`0x`&&(y.validBefore=Number(u)),ei(d)&&d!==`0x`&&(y.validAfter=Number(d)),ei(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=io(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=IE(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||ia(p)?(y.feePayerSignature=null,ia(p)&&(y.from=p)):y.feePayerSignature=vc(p)),_&&(y.keyAuthorization=UE(_));let b=v?yE(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=_E({payload:mD(fD(y)),signature:b,root:!0})}catch{}return uD(y),y}function fD(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?dD(e):e;return i.from&&=kE(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:kE(e.to)}:{}})),uD(i),{...i,...r?{signature:bE(r)}:{},...n?{feePayerSignature:hc(n)}:{},type:`tempo`}}function pD(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;uD(e);let h=ao(n),g=t.signature||e.signature,_=BE(r),v=i.map(e=>[e.to?kE(e.to):`0x`,e.value?O(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=bE(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return na(t.publicKey);if(t.type===`secp256k1`)return hl({payload:mD(fD(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?xc(n):`0x`})(),x=[O(a),f?O(f):`0x`,d?O(d):`0x`,s?O(s):`0x`,v,h,u?O(u):`0x`,l?O(l):`0x`,typeof p==`number`?O(p):`0x`,typeof m==`number`?O(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?Z(o):`0x`,b,_,...c?[qE(c)]:[],...g?[CE(bE(g))]:[]];return E(t.format===`feePayer`?`0x78`:`0x76`,mo(x))}function mD(e,t={}){let n=hD(e,{presign:!0});return t.from?Ii(E(`0x04`,n,kE(t.from))):n}function hD(e,t={}){return Ii(pD({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function gD(e,t){let n=kE(t.sender);return Ii(pD({...e,signature:void 0},{sender:n,format:`feePayer`}))}var _D=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},vD=class extends T{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};A();function yD(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:iv(e)}function bD(e){try{return yD(e)===`tempo`}catch{return!1}}function xD(e){let t=k(e,0,1);return t===`0x76`||t===`0x78`?CD(e):rx(e)}async function SD(e,t){if(!bD(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return lb(e,{r:O(n,{size:32}),s:O(r,{size:32}),yParity:i})}return lb(e,t)}if(yD(e)===`tempo`)return wD(e,t);throw Error(`Unsupported transaction type`)}function CD(e){let{feePayerSignature:t,nonce:n,...r}=dD(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:O(t.r,{size:32}),s:O(t.s,{size:32}),yParity:t.yParity}}}async function wD(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return bE({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=fD(c,{signature:n}),r=gD(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return hl({payload:mD(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return pD(t,{feePayerSignature:hc(await e.feePayer.sign({hash:r}))})}return i===!0?n?pD(c,{format:`feePayer`,sender:e.from,signature:n}):pD(c,{feePayerSignature:null}):pD({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}A(),zm(),S_();function TD(e){if(!bD(e))return I_(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=sD(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:O(t.r,{size:32}),s:O(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:aD[i.type],type:i.type}}function ED(e){return Gy(e)}function DD(e,t){let n=e,r=n.account?Rm(n.account):void 0;if(!bD(n))return v_(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=cD({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?Rm(n.feePayer):n.feePayer}:{}}}let OD=new Map;async function kD(e){OD.set(e,(OD.get(e)??0)+1),await Promise.resolve();let t=(OD.get(e)??0)>1;return queueMicrotask(()=>{let t=OD.get(e)??0;t<=1?OD.delete(e):OD.set(e,t-1)}),t}O_(),S_();let AD={blockTime:1e3,extendSchema:Cb(),formatters:{transaction:L_({exclude:[`aaAuthorizationList`],format:TD}),transactionReceipt:Ky({format:ED}),transactionRequest:x_({format:DD})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await kD(e):!1})()?(n.nonceKey=D_,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>SD(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=yE(i);if(a.type!==`keychain`){let i=await nb(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return TE(a,{address:n,payload:r})}}return await M(e,xx,`verifyHash`)({...t,chain:null})}},jD=Sb({...AD,id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),MD=Sb({...AD,id:31318,name:`Tempo Devnet`,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.devnet.tempo.xyz`}},nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.devnet.tempoxyz.dev`],webSocket:[`wss://rpc.devnet.tempoxyz.dev`]}}}),ND=Sb({...AD,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),PD=Sb({...AD,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),Q=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],FD=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]}],ID=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];A(),zm(),Ip();function LD(e){let{access:t}=e;return t?GD(e):WD(e)}function RD(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Rl({privateKey:e});return LD({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Bu({...t,challenge:n,rpId:r,origin:i});return CE({metadata:a,signature:zl({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function zD(e,t={}){let{access:n,internal_version:r}=t,i=Rl({privateKey:e});return LD({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return CE({signature:zl({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function BD(e,t={}){let{access:n,internal_version:r}=t;return LD({access:n,internal_version:r,keyType:`secp256k1`,publicKey:ml({privateKey:e}),async sign(t){let{hash:n}=t;return yc(_l({payload:n,privateKey:e}))}})}function VD(e,t={}){let{id:n}=e,r=Wi(e.publicKey);return LD({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Vu({...t,challenge:e,credentialId:n});return CE({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function HD(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return LD({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return CE({signature:await Wu({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function UD(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??na(e.publicKey),o=Ki(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Fp(E(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?CE(bE({userAddress:n,inner:bE(o),type:`keychain`,version:i})):t===`secp256k1`?o:E(o,gE)}return{address:ea(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=bE(await s({hash:Yg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:O(a,{size:32}),s:O(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Fb(t)})},async signTransaction(e,t){let{serializer:n=SD}=t??{};return await n(e,bE(await s({hash:Fp(await n(e))})))},async signTypedData(e){return await s({hash:Ub(e)})},publicKey:o,source:r,type:`local`}}function WD(e){let t=UD(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return VE({address:o,chainId:r,expiry:i,limits:a,signature:bE(await t.sign({hash:WE({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function GD(e){let{access:t}=e,{address:n}=Rm(t);return{...UD({...e,parentAddress:n}),accessKeyAddress:na(e.publicKey),source:`accessKey`}}let KD=`0xdec0000000000000000000000000000000000000`;function $(e){return{...e,data:Um(e),to:e.address}}A(),zm();async function qD(e,t){return qD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return $({address:KD,abi:FD,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(qD||={});async function JD(e,t){return JD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:KD,abi:FD,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(JD||={});async function YD(e,t){return YD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:KD,abi:FD,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(YD||={});async function XD(e,t){return XD.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return $({address:KD,abi:FD,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(XD||={});async function ZD(e,t){let{account:n=e.account,token:r,...i}=t,a=n?Rm(n).address:void 0;if(!a)throw Error(`account is required.`);return Oy(e,{...i,...ZD.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:KD,abi:FD,args:[t,n],functionName:`balanceOf`})}e.call=t})(ZD||={});async function QD(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Oy(e,{...a,...QD.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(QD||={});async function $D(e,t){let{orderId:n,...r}=t;return Oy(e,{...r,...$D.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return $({address:KD,abi:FD,args:[t],functionName:`getOrder`})}e.call=t})($D||={});async function eO(e,t){let{base:n,quote:r,...i}=t;return Oy(e,{...i,...eO.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return $({address:KD,abi:FD,args:[sO(t,n)],functionName:`books`})}e.call=t})(eO||={});async function tO(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Oy(e,{...a,...tO.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(tO||={});async function nO(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Oy(e,{...a,...nO.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return $({address:KD,abi:FD,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(nO||={});async function rO(e,t){return rO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return $({address:KD,abi:FD,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=yv({abi:FD,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(rO||={});async function iO(e,t){return iO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return $({address:KD,abi:FD,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=yv({abi:FD,logs:e,eventName:`OrderPlaced`,strict:!0}).find(e=>e.args.isFlipOrder);if(!t)throw Error(\"`OrderPlaced` event (flip order) not found.\");return t}e.extractEvent=r})(iO||={});async function aO(e,t){return aO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return $({address:KD,abi:FD,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(aO||={});async function oO(e,t){return oO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return $({address:KD,abi:FD,functionName:`withdraw`,args:[t,n]})}e.call=n})(oO||={});function sO(e,t){return Ii(E(e,t))}A(),zm(),Wm();async function cO(e,t){let{token:n,...r}=t;return cO.inner(Vy,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(cO||={});async function lO(e,t){return lO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(lO||={});async function uO(e,t){return uO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Gr(n,32)]}:{functionName:`burn`,args:[t]};return $({address:Z(r),abi:Q,...i})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(uO||={});async function dO(e,t){return dO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return $({address:Z(t),abi:Q,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(dO||={});async function fO(e,t){return fO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?Rm(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=qr(32)}=e;return $({address:`0x20fc000000000000000000000000000000000000`,abi:ID,args:[t,n,r,Z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=yv({abi:ID,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(fO||={});async function pO(e,t){let{account:n=e.account}=t,r=n?Rm(n).address:void 0;if(!r)throw Error(`account is required.`);return Oy(e,{...t,...pO.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`allowance`,args:[t,n]})}e.call=t})(pO||={});async function mO(e,t){let{account:n=e.account,...r}=t,i=n?Rm(n).address:void 0;if(!i)throw Error(`account is required.`);return Oy(e,{...r,...mO.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`balanceOf`,args:[t]})}e.call=t})(mO||={});async function hO(e,t){let{token:n,...r}=t,i=Z(n),a=Q;return tD(n)===nD(`0x20c0000000000000000000000000000000000000`)?hx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):hx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function gO(e,t){return Oy(e,{...t,...gO.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`getRoleAdmin`,args:[iD(t)]})}e.call=t})(gO||={});async function _O(e,t){let{account:n=e.account}=t,r=n?Rm(n).address:void 0;if(!r)throw Error(`account is required.`);return Oy(e,{...t,..._O.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`hasRole`,args:[t,iD(n)]})}e.call=t})(_O||={});async function vO(e,t){return vO.inner(By,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Um(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=iD(r);return $({address:Z(t),abi:Q,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(vO||={});async function yO(e,t){return yO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Gr(r,32)]}:{functionName:`mint`,args:[t,n]};return $({address:Z(i),abi:Q,...a})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(yO||={});async function bO(e,t){return bO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(bO||={});async function xO(e,t){return xO.inner(By,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Um(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=iD(n);return $({address:Z(t),abi:Q,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(xO||={});async function SO(e,t){return SO.inner(By,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Um(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=iD(r);return $({address:Z(t),abi:Q,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=yv({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(SO||={});async function CO(e,t){return CO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return $({address:Z(t),abi:Q,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(CO||={});async function wO(e,t){return wO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=iD(n),a=iD(r);return $({address:Z(t),abi:Q,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(wO||={});async function TO(e,t){return TO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Gr(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Gr(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return $({address:Z(i),abi:Q,...o})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(TO||={});async function EO(e,t){return EO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(EO||={});async function DO(e,t){return DO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return $({address:Z(t),abi:Q,functionName:`setNextQuoteToken`,args:[Z(n)]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(DO||={});async function OO(e,t){return OO.inner(Vy,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=yv({abi:Q,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(OO||={});function kO(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return kx({key:kO.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(xD(o).feePayerSignature===null){if(r===`sign-and-broadcast`)return a.request({method:e,params:t},n);{let t=await a.request({method:`eth_signRawTransaction`,params:[o]},n);return i.request({method:e,params:[t]},n)}}}return await i.request({method:e,params:t},n)},type:kO.type})}}function AO(e={}){let{account:t}=e;return(e,{account:n}={})=>{let r=n??t;if(!r){if(!e.account)throw Error(\"No `account` provided. Pass `account` to parameters or context.\");return e.account}return Rm(r)}}function jO(e){let{chain:t,feePayerUrl:n,getClient:r,rpcUrl:i}=e;return r?!t?.serializers&&!n?r:async e=>{let i=await r(e);if(n&&i.transport.key!==`feePayer`){let e=i.transport.url;if(e){let t=tb({chain:i.chain,transport:kO(Mx(e),Mx(n))});Object.assign(i,{transport:t.transport,request:t.request})}}return!t?.serializers||i.chain?.serializers?.transaction?i:Object.assign({},i,{chain:{...t,...i.chain,formatters:i.chain?.formatters??t.formatters,prepareTransactionRequest:i.chain?.prepareTransactionRequest??t.prepareTransactionRequest,serializers:i.chain?.serializers?.transaction?i.chain.serializers:t.serializers}})}:({chainId:e})=>{if(!i)throw Error(\"No `rpcUrl` provided.\");let r=e||Number(Object.keys(i)[0]),a=i[r];if(!a)throw Error(`No \\`rpcUrl\\` configured for \\`chainId\\` (${r}).`);let o=n?kO(Mx(a),Mx(n)):Mx(a);return tb({chain:{...t,id:r},transport:o})}}let MO=k(Ii(hi(`mpp`),{as:`Hex`}),0,4);function NO(e){return Zr(k(Ii(hi(e),{as:`Hex`}),0,10))}function PO(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(Zr(MO),0),i[4]=1,i.set(NO(t),5),n&&i.set(NO(n),15),i.set(FO(r),25),D(i)}function FO(e){return Zr(k(Ii(hi(e),{as:`Hex`}),0,7))}function IO(e,t){return e.toLowerCase()===t.toLowerCase()}let LO={mainnet:4217,testnet:42431},RO={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};LO.mainnet,RO.usdc,LO.testnet,RO.pathUsd;let zO={[LO.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[LO.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},BO={[LO.mainnet]:`https://rpc.tempo.xyz`,[LO.testnet]:`https://rpc.moderato.tempo.xyz`},VO=[RO.pathUsd,RO.usdc];async function HO(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!IO(e,i)),c=await Promise.allSettled([Oy(e,mO.call({account:n,token:i})),...s.map(t=>Oy(e,mO.call({account:n,token:t})))]),l=c[0];if(!(l.status===`fulfilled`&&l.value>=r)){for(let t=0;t<s.length;t++){let n=c[t+1];if(n.status!==`fulfilled`)continue;let a=n.value;if(a<=0n)continue;let l=s[t];try{let t=await QD(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[cO.call({token:l,spender:KD,amount:e}),qD.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new WO({currency:i})}}function UO(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>IO(e,t)))]:t,slippage:e.slippage??1}:!1}var WO=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function GO(e){let t=BigInt(e.amount),n=e.methodDetails?.splits??[],r=n.reduce((e,t)=>e+BigInt(t.amount),0n);if(r>=t)throw Error(`Invalid charge request: split total must be less than total amount.`);let i=t-r;if(i<=0n)throw Error(`Invalid charge request: primary transfer amount must be positive.`);return[{amount:i.toString(),memo:e.methodDetails?.memo,recipient:e.recipient},...n.map(e=>({amount:e.amount,memo:e.memo,recipient:e.recipient}))]}let KO={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function qO(e){return{name:`MPP`,version:`2`,chainId:e}}function JO(e,t){return{challengeId:e,realm:t}}function YO(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let XO=[`push`,`pull`],ZO=G({amount:aT(),memo:q(sT()),recipient:aw(U(),ew(e=>e))}),QO=uE({name:`tempo`,intent:`charge`,schema:{credential:{payload:GC(`type`,[G({hash:sT(),type:K(`hash`)}),G({signature:cT(),type:K(`transaction`)}),G({signature:cT(),type:K(`proof`)})])},request:aw(G({amount:aT(),chainId:q(DC()),currency:U(),decimals:DC(),description:q(U()),externalId:q(U()),feePayer:q(aw(UC([kC(),fw()]),ew(e=>typeof e==`object`?!0:e))),memo:q(sT()),recipient:q(U()),splits:q(W(ZO).check(bC(1),yC(10))),supportedModes:q(W(ZC(XO)).check(bC(1)))}).check(pw(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=mx(e,t),i=n.reduce((e,n)=>e+mx(n.amount,t),0n);return n.every(e=>mx(e.amount,t)>0n)&&i<r},`Invalid splits`)),ew(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:mx(e,n).toString(),...t!==void 0||r!==void 0||i!==void 0||a!==void 0||o!==void 0?{methodDetails:{...t!==void 0&&{chainId:t},...r!==void 0&&{feePayer:r},...i!==void 0&&{memo:i},...a!==void 0&&{splits:a.map(e=>({...e,amount:mx(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),$O=uE({name:`tempo`,intent:`session`,schema:{credential:{payload:GC(`action`,[G({action:K(`open`),authorizedSigner:q(U()),channelId:sT(),cumulativeAmount:aT(),signature:cT(),transaction:cT(),type:K(`transaction`)}),G({action:K(`topUp`),additionalDeposit:aT(),channelId:sT(),transaction:cT(),type:K(`transaction`)}),G({action:K(`voucher`),channelId:sT(),cumulativeAmount:aT(),signature:cT()}),G({action:K(`close`),channelId:sT(),cumulativeAmount:aT(),signature:cT()})])},request:aw(G({amount:aT(),chainId:q(DC()),channelId:q(sT()),currency:U(),decimals:DC(),escrowContract:q(U()),feePayer:q(aw(UC([kC(),fw()]),ew(e=>typeof e==`object`?!0:e))),minVoucherDelta:q(aT()),recipient:q(U()),suggestedDeposit:q(aT()),unitType:U()}).check(pw(({amount:e,decimals:t})=>mx(e,t)>0n,`Session amount must be greater than 0`)),ew(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:mx(e,r).toString(),...s?{suggestedDeposit:mx(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:mx(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function ek(e={}){let{clientId:t}=e,n=jO({chain:jD,getClient:e.getClient,rpcUrl:BO}),r=AO({account:e.account});return dE(QO,{context:G({account:q(fw()),autoSwap:q(fw()),mode:q(ZC(XO))}),async createCredential({challenge:i,context:a}){let o=i.request.methodDetails?.chainId,s=await n({chainId:o}),c=r(s,a),{request:l}=i,{amount:u,methodDetails:d}=l;if(BigInt(u)===0n)return lE({challenge:i,payload:{signature:await Ox(s,{account:c,domain:qO(o),types:KO,primaryType:`Proof`,message:JO(i.id,i.realm)}),type:`proof`},source:YO({address:c.address,chainId:o})});let f=l.currency;if(e.expectedRecipients){let t=new Set(e.expectedRecipients.map(e=>e.toLowerCase())),n=d?.splits;if(n){for(let e of n)if(!t.has(e.recipient.toLowerCase()))throw Error(`Unexpected split recipient: ${e.recipient}`)}}let p=d?.supportedModes??[`pull`,`push`],m=(()=>{let t=a?.mode??e.mode;if(t){if(!p.includes(t))throw Error(`Challenge does not support ${t} mode.`);return t}let n=c.type===`json-rpc`?`push`:`pull`;return p.includes(n)?n:p[0]})(),h=d?.memo?d.memo:PO({challengeId:i.id,clientId:t,serverId:i.realm}),g=GO({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>TO.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=UO(a?.autoSwap??e.autoSwap,VO),v=[...(_?await HO(s,{account:c.address,amountOut:BigInt(u),tokenOut:f,tokenIn:_.tokenIn,slippage:_.slippage}):void 0)??[],...g],y=(()=>{let e=Math.floor(Date.now()/1e3)+25;if(!i.expires)return e;let t=Math.floor(new Date(i.expires).getTime()/1e3);return Math.min(e,t)})();if(m===`push`){let{receipts:e}=await Ex(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return lE({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await dv(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,lE({challenge:i,payload:{signature:await Dx(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function tk(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let nk={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function rk(e,t,n,r,i,a){let o=await Ox(e,{account:t,domain:tk(r,i),types:nk,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=bE(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return yc(e.inner.signature)}catch{}return o}function ik(e){return Ii(qa(Ya([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let ak=[{type:`function`,name:`CLOSE_GRACE_PERIOD`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`VOUCHER_TYPEHASH`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`channels`,inputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`close`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`computeChannelId`,inputs:[{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`domainSeparator`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`eip712Domain`,inputs:[],outputs:[{name:`fields`,type:`bytes1`,internalType:`bytes1`},{name:`name`,type:`string`,internalType:`string`},{name:`version`,type:`string`,internalType:`string`},{name:`chainId`,type:`uint256`,internalType:`uint256`},{name:`verifyingContract`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`extensions`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`view`},{type:`function`,name:`getChannel`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`tuple`,internalType:`struct TempoStreamChannel.Channel`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getChannelsBatch`,inputs:[{name:`channelIds`,type:`bytes32[]`,internalType:`bytes32[]`}],outputs:[{name:`channelStates`,type:`tuple[]`,internalType:`struct TempoStreamChannel.Channel[]`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getVoucherDigest`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`open`,inputs:[{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`requestClose`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settle`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`topUp`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`additionalDeposit`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ChannelClosed`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`settledToPayee`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`refundedToPayer`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`ChannelExpired`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`ChannelOpened`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`token`,type:`address`,indexed:!1,internalType:`address`},{name:`authorizedSigner`,type:`address`,indexed:!1,internalType:`address`},{name:`salt`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`deposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`CloseRequestCancelled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`CloseRequested`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`closeGraceEnd`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`cumulativeAmount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`deltaPaid`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newSettled`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TopUp`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`additionalDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`error`,name:`AmountExceedsDeposit`,inputs:[]},{type:`error`,name:`AmountNotIncreasing`,inputs:[]},{type:`error`,name:`ChannelAlreadyExists`,inputs:[]},{type:`error`,name:`ChannelFinalized`,inputs:[]},{type:`error`,name:`ChannelNotFound`,inputs:[]},{type:`error`,name:`CloseNotReady`,inputs:[]},{type:`error`,name:`DepositOverflow`,inputs:[]},{type:`error`,name:`InvalidPayee`,inputs:[]},{type:`error`,name:`InvalidSignature`,inputs:[]},{type:`error`,name:`NotPayee`,inputs:[]},{type:`error`,name:`NotPayer`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]}];async function ok(e,t,n){return Oy(e,{address:t,abi:ak,functionName:`getChannel`,args:[n]})}Pm({abi:ak,name:`open`}),Pm({abi:ak,name:`topUp`});function sk(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??zO[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function ck(e,t,n,r){return lE({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function lk(e,t,n,r,i,a,o){let s=await rk(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function uk(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=qr(32),f=ik({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Um({abi:Q,functionName:`approve`,args:[r,o]}),m=Um({abi:ak,functionName:`open`,args:[i,a,o,d,u]}),h=await dv(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await Dx(e,h),_=await rk(e,t,{channelId:f,cumulativeAmount:s},r,c,n.authorizedSigner);return{entry:{channelId:f,salt:d,cumulativeAmount:s,escrowContract:r,chainId:c,opened:!0},payload:{action:`open`,type:`transaction`,channelId:f,transaction:g,authorizedSigner:u,cumulativeAmount:s.toString(),signature:_}}}async function dk(e,t,n,r){try{let i=await ok(e,t,n);if(i.deposit>0n&&!i.finalized)return{channelId:n,salt:`0x`,cumulativeAmount:i.settled,escrowContract:t,chainId:r,opened:!0}}catch{}}let fk=G({account:q(fw()),action:q(ZC([`open`,`topUp`,`voucher`,`close`])),channelId:q(U()),cumulativeAmount:q(aT()),cumulativeAmountRaw:q(U()),transaction:q(U()),authorizedSigner:q(U()),additionalDeposit:q(aT()),additionalDepositRaw:q(U()),depositRaw:q(U())});function pk(e={}){let{decimals:t=6}=e,n=jO({chain:jD,getClient:e.getClient,rpcUrl:BO}),r=AO({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:mx(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return sk(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return mx(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),w=u(v,y,_),te=s.get(w);if(!te){let e=p?.channelId??m?.channelId;if(e){let n=await dk(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?mx(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(w,n),c.set(n.channelId,w),o.set(n.channelId,_),te=n,l(te)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(te?.opened)te.cumulativeAmount+=b,ne=await lk(g,f,te.channelId,te.cumulativeAmount,_,h,C),l(te);else{let e=await uk(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(w,e.entry),c.set(e.entry.channelId,w),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return ck(r,ne,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?mx(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?mx(a.additionalDeposit,t):void 0,x=d(e,u,v);o.set(v,x);let S;switch(p){case`open`:{if(!h)throw Error(`transaction required for open action`);if(y===void 0)throw Error(`cumulativeAmount required for open action`);let e=await rk(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`open`,type:`transaction`,channelId:v,transaction:h,authorizedSigner:_??r.address,cumulativeAmount:y.toString(),signature:e};break}case`topUp`:if(!h)throw Error(`transaction required for topUp action`);if(b===void 0)throw Error(`additionalDeposit required for topUp action`);S={action:`topUp`,type:`transaction`,channelId:v,transaction:h,additionalDeposit:b.toString()};break;case`voucher`:{if(y===void 0)throw Error(`cumulativeAmount required for voucher action`);S=await lk(f,r,v,y,x,u,_);let e=c.get(v);if(e){let t=s.get(e);t&&(t.cumulativeAmount=t.cumulativeAmount>y?t.cumulativeAmount:y,l(t))}break}case`close`:{if(y===void 0)throw Error(`cumulativeAmount required for close action`);let e=await rk(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`close`,channelId:v,cumulativeAmount:y.toString(),signature:e};let t=c.get(v);if(t){let e=s.get(t);e&&(e.opened=!1,e.cumulativeAmount=e.cumulativeAmount>y?e.cumulativeAmount:y,l(e))}break}}return ck(e,S,u,r)}return dE($O,{context:fk,async createCredential({challenge:t,context:i}){let o=r(await n({chainId:t.request.methodDetails?.chainId??0}),i);if(!i?.action&&(e.deposit!==void 0||a!==void 0))return f(t,o,i);if(i?.action)return p(t,o,i);throw Error(\"No `action` in context and no `deposit` or `maxDeposit` configured. Either provide context with action/channelId/cumulativeAmount, or configure `deposit`/`maxDeposit` for auto-management.\")}})}function mk(e){let t=Uc(e);return JSON.parse(t)}function hk(e){let t=`message`,n=[];for(let r of e.split(`\n`))r.startsWith(`event: `)?t=r.slice(7).trim():r.startsWith(`data: `)?n.push(r.slice(6)):r===`data:`&&n.push(``);if(n.length===0)return null;let r=n.join(`\n`);switch(t){case`message`:return{type:`message`,data:r};case`payment-need-voucher`:return{type:`payment-need-voucher`,data:JSON.parse(r)};case`payment-receipt`:return{type:`payment-receipt`,data:JSON.parse(r)};default:return{type:`message`,data:r}}}function gk(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function _k(){return JSON.stringify({mpp:`payment-close-request`})}function vk(e){try{let t=JSON.parse(e);return t.mpp===`authorization`&&typeof t.authorization==`string`?{mpp:`authorization`,authorization:t.authorization}:t.mpp===`message`&&typeof t.data==`string`?{mpp:`message`,data:t.data}:t.mpp===`payment-close-request`?{mpp:`payment-close-request`}:t.mpp===`payment-close-ready`&&yk(t.data)?{mpp:`payment-close-ready`,data:t.data}:t.mpp===`payment-error`&&typeof t.status==`number`&&typeof t.message==`string`?{mpp:`payment-error`,status:t.status,message:t.message}:t.mpp===`payment-need-voucher`&&bk(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&yk(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function yk(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function bk(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let xk={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function Sk(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:mx(e.maxDeposit,e.decimals??6),i=null,a=null,o=null,s=0n,c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=0n,g=0n,_=pk({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=WT({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);re(t),re(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function C(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function w(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function ne(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function re(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ie(e){let t=e.headers.get(`Payment-Receipt`),n=t?mk(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ae(e,t){return o=e,ie(await v(e,t))}function oe(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=xk.CLOSED,r=null}if(e===`open`&&(i=xk.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available — call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ae,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ae(e,{...s,headers:{...KT(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=hk(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);re(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let ne=yT(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!ne)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=ne;let ie=await _.createCredential({challenge:ne,context:{}});d=null,c=ne,h=0n,g=BigInt(ne.request.amount);let ae=oE(ie);l=ae.payload.channelId;let se=new n(v,f);u=se;let ce=oe(se),le=e=>{w(Error(e)),te(Error(e)),(se.readyState===xk.CONNECTING||se.readyState===xk.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===ne.id&&e.channelId===l,de=new Promise((e,t)=>{let n=()=>{se.removeEventListener(`error`,r),ce.emit(`open`,{type:`open`}),e()},r=()=>{se.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};se.addEventListener(`open`,n,{once:!0}),se.addEventListener(`error`,r,{once:!0})});return se.addEventListener(`close`,e=>{u===se&&(u=null),c===ne&&(c=null),l===ae.payload.channelId&&(l=null),p=null,w(Error(`WebSocket closed before the payment flow completed.`)),te(Error(`WebSocket closed before the payment flow completed.`)),ce.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),se.addEventListener(`error`,()=>{ce.emit(`error`,{type:`error`})}),se.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=vk(t);if(!n){ce.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,ce.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!ue(n.data)){le(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){le(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),C(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:w(Error(n.message)),te(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){le(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){le(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ne,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(gk(r));break}case`payment-receipt`:if(!ue(n.data)){le(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){le(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{w(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(gk(ie)),await x(),ce.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===xk.OPEN){let t=d??await(async()=>(u.send(_k()),S()))(),r=BigInt(t.spent);if(r>(i.cumulativeAmount>s?i.cumulativeAmount:s))throw Error(`close-ready spent exceeds local voucher state`);let a=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:r.toString()}}),o=r.toString();p=o;try{let t=x(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(gk(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(ne(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return re(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?mk(m):void 0}}}function Ck(e={}){return[ek(e),pk(e)]}(function(e){e.charge=ek,e.session=Sk})(Ck||={});function wk(e){return e}function Tk(){return wk({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return yT(e)},getChallenge(e){return vT(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function Ek(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=Tk()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=TT(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=WT(l);return n&&GT(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=kT(r,o,Dk(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a;c.expires&&nT(c.expires,c.id);let u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function Dk(e,t){return t?typeof t==`string`?ET(t):t:e}function Ok(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress,{accessKeys:i}=n.getState();return i.find(e=>e.address?.toLowerCase()===r.toLowerCase())?.keyAuthorization}async function kk(e={}){let{account:t}=e,n=await Uu();return{accessKey:HD(n,t?{access:t}:void 0),keyPair:n}}function Ak(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.filter(e=>e.address?.toLowerCase()!==r?.toLowerCase())}))}function jk(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.map(e=>e.address.toLowerCase()===r.toLowerCase()?{...e,keyAuthorization:void 0}:e)}))}function Mk(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o={address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,scopes:n.scopes},s=i?{...o,privateKey:i}:r?{...o,keyPair:r}:{...o};a.setState(e=>({accessKeys:[s,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function Nk(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new au({message:`Account \"${n}\" not found.`}):new su({message:`No active account.`});if(t){let t=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(t){if(t.expiry&&t.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(e=>e!==t)});else if(Ik(t,e))return Pk(t)}}return Fk(l,{signable:r})}function Pk(e){if(`keyPair`in e&&e.keyPair)return HD(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return BD(e.privateKey,{access:e.access});case`p256`:return zD(e.privateKey,{access:e.access})}throw new au({message:`External access key cannot be hydrated for signing.`})}function Fk(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new au({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return BD(e.privateKey);case`p256`:return zD(e.privateKey);case`webCrypto`:return HD(e.keyPair);case`webAuthn`:return VD(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return RD(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new au({message:`Unknown key type.`})}}function Ik(e,t){return!t.calls||!e.scopes?!0:t.calls.every(t=>{if(!t.to)return!1;let n=t.to.toLowerCase(),r=t.data?.slice(0,10).toLowerCase();return e.scopes.some(e=>e.address.toLowerCase()===n?e.selector?r===(e.selector.startsWith(`0x`)&&e.selector.length===10?e.selector:ro(e.selector)).toLowerCase():!0:!1)})}function Lk(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function Rk(e={}){let{dialog:t=x()?re():ne(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`,theme:o}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),Lk({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=xu();function c(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new iu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new iu({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let l=vu({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:Yw});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await kk();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){Mk({address:e,keyAuthorization:HE(t),keyPair:n,store:i})}async function f(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=Ok(n,{store:i});try{let e=await t(n,r??void 0);return jk(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),Ak(n,{store:i});return}}let p=t({host:n,store:i,theme:o}),m=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);p?.syncRequests(t),t.length===0&&p?.close()});return{cleanup(){m(),p?.destroy()},actions:{async createAccount(e,t){let n=await u(e.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:mS(Vw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await u(e?.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:mS(Vw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await l.request(t)},async signTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=await dv(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await l.request({...t,params:[mS(ww,e)]}):n},async signTypedData(e,t){return await l.request(t)},async sendTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await dv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await l.request({...t,params:[mS(ww,e)]}):n},async sendTransactionSync(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await dv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await l.request({...t,params:[mS(ww,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[mS(Vw.authorizeAccessKey,r?r.request:t)]});return r&&d(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await l.request(t)},async deposit(e,t){return await l.request(t)},async send(e,t){return await l.request({...t,params:[mS(Gw.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let zk=new Map;function Bk(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return Hk(r);if(r?.url)return Hk(r.url)}})(),s=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,c=e??a.getState().chainId,l=`${c}:${i?`p`:``}:${r===!1?`no-fp`:o??``}:${s}`,u=zk.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Mx(),r=i?Vk(i,t):t;u=tb({chain:e,transport:o?Uk(r,o,s):r,pollingInterval:1e3}),zk.set(l,u)}return u}function Vk(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function Hk(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function Uk(e,t,n){return r=>{let i=e(r),a=Mx(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=xD(t);if(`feePayerSignature`in n&&n.feePayerSignature===null){let n=await a.request({method:`eth_signRawTransaction`,params:[t]});return await i.request({method:e,params:[n]})}}}return await i.request({method:e,params:t})}}}}function Wk(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Wk.cache.get(n))return Wk.cache.get(n);let r=e().finally(()=>Wk.cache.delete(n));return Wk.cache.set(n,r),r}Wk.cache=new Map;function Gk(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function Kk(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=Gk(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let qk;function Jk(){return qk||=Kk(`keyval-store`,`keyval`),qk}function Yk(e,t=Jk()){return t(`readonly`,t=>Gk(t.get(e)))}function Xk(e,t,n=Jk()){return n(`readwrite`,n=>(n.put(t,e),Gk(n.transaction)))}function Zk(e,t=Jk()){return t(`readwrite`,t=>(t.delete(e),Gk(t.transaction)))}function Qk(e,t={}){let n=`${t.key??`tempo`}.`;return{getItem:t=>e.getItem(`${n}${t}`),setItem:(t,r)=>e.setItem(`${n}${t}`,r),removeItem:t=>e.removeItem(`${n}${t}`)}}function $k(e={}){let t=typeof indexedDB<`u`?Kk(`tempo`,`store`):void 0;return Qk({async getItem(e){let n=await Yk(e,t);return n===null?null:n},async setItem(e,n){await Xk(e,n,t)},async removeItem(e){await Zk(e,t)}},e)}function eA(e={}){let t=new Map;return Qk({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let tA=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)};function nA(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}let rA=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return rA(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return rA(t)(e)}}}},iA=(e,t)=>(n,r,i)=>{let a={storage:nA(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return rA(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},aA=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},oA=(e=>e?aA(e):aA);function sA(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?$k({key:`tempo`}):eA({key:`tempo`})}=e;return oA(tA(iA(()=>({accessKeys:[],accounts:[],activeAccount:0,chainId:t,requestQueue:[]}),{merge(e,t){let n=e;return{...n,...t,accounts:n.accounts?.map(e=>t.accounts.find(t=>t.address.toLowerCase()===e.address.toLowerCase())??e)??t.accounts,accessKeys:n.accessKeys??t.accessKeys,chainId:n.chainId??t.chainId}},name:`store`,partialize:e=>({accounts:n&&e.accounts.length>n?e.accounts.slice(0,n):e.accounts,activeAccount:e.activeAccount,...r?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:i,version:0})))}async function cA(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function lA(e,t){let n=fS(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new ou({message:`Unsupported method \"${t?.method}\".`}):new ru(-32602,`Invalid params: ${uA(n.error.issues)}`)}return{...t,_decoded:n.data}}function uA(e){return e.flatMap(e=>e.code===`invalid_union`&&e.errors.length>0?e.errors.flatMap(t=>t.map(t=>`${[...e.path,...t.path].join(`.`)}: ${t.code===`invalid_union`&&t.errors.length>0?uA([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let dA=new Set;function fA(e={}){let{adapter:t=Rk(),chains:n=[jD,PD,MD],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?$k():eA()}=e,s=(()=>{if(e.feePayer)return typeof e.feePayer==`string`?{precedence:`fee-payer-first`,url:e.feePayer}:{precedence:e.feePayer.precedence??`fee-payer-first`,url:e.feePayer.url}})(),c=sA({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>Nk({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return Bk(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:s?.precedence}})(),store:c})}let f=t({getAccount:l,getClient:d,storage:o,store:c}),{actions:p}=f,m=_u();c.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>m.emit(`accountsChanged`,c.getState().accounts.map(e=>e.address))),c.subscribe(e=>e.chainId,e=>m.emit(`chainChanged`,O(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:O(c.getState().chainId)}):m.emit(`disconnect`,new su)});function h(){if(c.getState().accounts.length===0)throw new su({message:`No accounts connected.`})}function g(e){if(!f.persistAccounts)return e;let t=[...e];for(let e of c.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function _(e){if(e===!1)return!1;let t=typeof e==`string`?e:s?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let v=Object.assign(vu({...m,async request({method:t,params:r}){return await cA(c),Wk(async()=>{let i;try{i=lA(Zw,{method:t,params:r})}catch(e){if(!(e instanceof ou))throw e;return await Bk(void 0,{chains:n,store:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=c.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return O(c.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await p.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return c.setState({accounts:g(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=_(t.feePayer),a=e=>{let t=d({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return l({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=Ok(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...KE(n)}});return jk(e,{store:c}),r}catch{return Ak(e,{store:c}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.signTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_sendTransactionSync`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransactionSync({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_signTypedData_v4`:{h();let[e,t]=i._decoded.params;return await p.signTypedData({address:e,data:t},i)}case`personal_sign`:{h();let[e,t]=i._decoded.params;return await p.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{h();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=_(t?.feePayer??(s?!0:void 0)),l={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=E(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[mS(ww,l)]}),Gr(O(c.getState().chainId),32),mA);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[mS(ww,l)]}),d=u.transactionHash,f=O(c.getState().chainId),m=E(d,Gr(f,32),mA);return{atomic:!0,capabilities:{sync:a},chainId:f,id:m,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=c.getState(),a=e?.account??t[r]?.address;if(!a)throw new su({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new eu({message:\"`tokens` is required.\"});let s=Bk(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([mO(s,{account:a,token:e}),hO(s,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:O(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(mA.slice(2)))throw Error(\"`id` not supported\");Vr(e);let t=k(e,0,32),r=O(Number(k(e,32,64))),a=await Bk(Number(r),{chains:n,store:c}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=c.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new au({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(O(e.id))):n,o={};for(let e of a)o[O(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??qr(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new ou({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await p.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(h(),!p.revokeAccessKey)throw new ou({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await p.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!p.deposit)throw new ou({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new ou({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new du({message:`Chain ${e} not configured.`});await p.switchChain?.({chainId:e}),c.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Rr({method:t,params:r})})}},{schema:Yw}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return Bk(t,{chains:n,feePayer:r,provider:u,store:c})},store:c});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;dA.has(e)||(dA.add(e),Qw({info:{icon:t.icon??pA,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&Ek({methods:[Ck({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let pA=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,mA=Ii(Wr(`TEMPO_5792`)),hA={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},gA={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},_A={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var vA=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let yA={accent:new vA(`accent`),background:new vA(`background`),border:new vA(`border`),foreground:new vA(`foreground`),muted:new vA(`muted`),negative:new vA(`negative`),positive:new vA(`positive`),surface:new vA(`surface`),fontFamily:new vA(`font-family`),fontSizeBase:new vA(`font-size-base`),radius:new vA(`radius`),spacingUnit:new vA(`spacing-unit`)};String.raw`<style>\n *,\n ::after,\n ::before,\n ::backdrop,\n ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n border-color: ${yA.border};\n }\n html,\n :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n vertical-align: middle;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea,\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type='button'], [type='reset'], [type='submit']),\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n }\n</style>`;async function bA(e){let t=new URL(location.href);t.searchParams.set(gA.serviceWorker,``);let n=await navigator.serviceWorker.register(t.pathname+t.search),r=await new Promise(e=>{let t=n.installing??n.waiting??n.active;if(t?.state===`activated`)return e(t);let r=t??n;r.addEventListener(`statechange`,function t(){let i=n.active;i?.state===`activated`&&(r.removeEventListener(`statechange`,t),e(i))})});await new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>t(),r.postMessage({credential:e},[n.port2])}),location.reload()}function xA(e){let t=document.getElementById(hA.data),n=Lr(t.textContent),r=t.getAttribute(_A.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(_A.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(_A.challengeId),o=a?(i.removeAttribute(_A.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(hA.error)?.remove();return}let t=document.getElementById(hA.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=hA.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:bA,vars:yA}}let SA=xA(`tempo`),CA=String.raw,wA=document.createElement(`style`);wA.textContent=CA`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${SA.vars.spacingUnit} * 8);\n }\n button {\n background: ${SA.vars.accent};\n border-radius: ${SA.vars.radius};\n color: ${SA.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${SA.vars.spacingUnit} * 4) calc(${SA.vars.spacingUnit} * 8);\n width: 100%;\n }\n button:hover:not(:disabled) {\n opacity: 0.85;\n }\n button:disabled {\n cursor: default;\n opacity: 0.5;\n }\n button svg {\n display: inline;\n fill: currentColor;\n height: 0.85em;\n transform: translateY(0.05em);\n vertical-align: baseline;\n width: auto;\n }\n`,SA.root.append(wA);let TA=fA({testnet:SA.challenge.request.methodDetails?.chainId===PD.id||SA.challenge.request.methodDetails?.chainId===ND.id}),EA=document.createElement(`button`);EA.innerHTML=`${SA.text.pay===`Pay`?`Continue with`:SA.text.pay} <svg aria-label=\"Tempo\" viewBox=\"0 0 107 25\" role=\"img\"><path d=\"M8.10464 23.7163H1.82475L7.64513 5.79356H0.201172L1.82475 0.540352H22.5637L20.9401 5.79356H13.8944L8.10464 23.7163Z\"></path><path d=\"M31.474 23.7163H16.5861L24.0607 0.540352H38.8873L37.4782 4.95923H28.8701L27.3078 9.93433H35.6402L34.231 14.2914H25.8681L24.3057 19.2974H32.8525L31.474 23.7163Z\"></path><path d=\"M38.2124 23.7163H33.2192L40.7244 0.540352H49.0567L48.781 13.0245L56.8989 0.540352H66.0277L58.5531 23.7163H52.3039L57.3584 7.86395L46.9736 23.7163H43.267L43.4201 7.80214L38.2124 23.7163Z\"></path><path d=\"M73.057 4.83563L70.6369 12.3137H71.3108C72.8425 12.3137 74.1189 11.9532 75.14 11.2322C76.1612 10.4906 76.8249 9.43991 77.1312 8.08025C77.3967 6.90601 77.2538 6.07167 76.7023 5.57725C76.1509 5.08284 75.2319 4.83563 73.9453 4.83563H73.057ZM66.9915 23.7163H60.7116L68.1862 0.540352H75.814C77.5703 0.540352 79.0816 0.828764 80.3478 1.40559C81.6344 1.96181 82.5738 2.76524 83.166 3.81588C83.7787 4.84592 83.9829 6.05107 83.7787 7.43133C83.5132 9.2442 82.8189 10.8408 81.6956 12.221C80.5724 13.6013 79.1122 14.6725 77.315 15.4347C75.5383 16.1764 73.5471 16.5472 71.3415 16.5472H69.289L66.9915 23.7163Z\"></path><path d=\"M98.747 22.233C96.664 23.4691 94.4481 24.0871 92.0996 24.0871H92.0383C89.9552 24.0871 88.1989 23.6236 86.7693 22.6965C85.3602 21.7489 84.3493 20.4717 83.7366 18.8648C83.1443 17.2579 83.0014 15.4966 83.3077 13.5807C83.6957 11.1704 84.5841 8.94549 85.9728 6.90601C87.3616 4.86653 89.0975 3.23906 91.1805 2.02361C93.2636 0.808164 95.4897 0.200439 97.8587 0.200439H97.9199C100.085 0.200439 101.872 0.663958 103.281 1.591C104.71 2.51803 105.701 3.78498 106.252 5.39185C106.824 6.97811 106.947 8.76008 106.62 10.7378C106.232 13.0657 105.343 15.2596 103.955 17.3197C102.566 19.3592 100.83 20.997 98.747 22.233ZM90.0777 18.2468C90.6292 19.2974 91.589 19.8227 92.9573 19.8227H93.0186C94.1418 19.8227 95.1833 19.4004 96.1432 18.5558C97.1235 17.6905 97.9506 16.5369 98.6245 15.0948C99.3189 13.6528 99.8294 12.0459 100.156 10.2742C100.463 8.54377 100.34 7.15322 99.7886 6.10257C99.2372 5.03133 98.2875 4.49571 96.9397 4.49571H96.8784C95.8369 4.49571 94.826 4.92833 93.8457 5.79356C92.8858 6.6588 92.0485 7.82274 91.3337 9.2854C90.6189 10.7481 90.0982 12.3343 89.7714 14.0442C89.4446 15.7747 89.5468 17.1755 90.0777 18.2468Z\"></path></svg>`,EA.onclick=async()=>{try{SA.error(),EA.disabled=!0;let e=await(async()=>{let e=await TA.request({method:`eth_accounts`});return e.length>0?e.at(0):(await TA.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await Ck({account:e,getClient:e=>{let t=e.chainId??SA.challenge.request.methodDetails?.chainId;return tb({chain:[...TA?.chains??[],PD,ND].find(e=>e.id===t),transport:Ax(TA)})}})[0].createCredential({challenge:SA.challenge,context:{}});await SA.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;SA.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{EA.disabled=!1}},SA.root.appendChild(EA)})();</script>";
3
3
  //# sourceMappingURL=html.gen.js.map