mppx 0.5.17 → 0.6.0

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 (58) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/client/Mppx.d.ts +2 -0
  3. package/dist/client/Mppx.d.ts.map +1 -1
  4. package/dist/client/Mppx.js +4 -1
  5. package/dist/client/Mppx.js.map +1 -1
  6. package/dist/client/index.d.ts +1 -0
  7. package/dist/client/index.d.ts.map +1 -1
  8. package/dist/client/index.js +1 -0
  9. package/dist/client/index.js.map +1 -1
  10. package/dist/client/internal/Fetch.d.ts +4 -0
  11. package/dist/client/internal/Fetch.d.ts.map +1 -1
  12. package/dist/client/internal/Fetch.js +43 -5
  13. package/dist/client/internal/Fetch.js.map +1 -1
  14. package/dist/server/Mppx.d.ts +38 -1
  15. package/dist/server/Mppx.d.ts.map +1 -1
  16. package/dist/server/Mppx.js +70 -1
  17. package/dist/server/Mppx.js.map +1 -1
  18. package/dist/stripe/server/Charge.d.ts.map +1 -1
  19. package/dist/stripe/server/Charge.js +8 -1
  20. package/dist/stripe/server/Charge.js.map +1 -1
  21. package/dist/tempo/server/Charge.d.ts.map +1 -1
  22. package/dist/tempo/server/Charge.js +15 -4
  23. package/dist/tempo/server/Charge.js.map +1 -1
  24. package/dist/tempo/server/Session.d.ts +39 -38
  25. package/dist/tempo/server/Session.d.ts.map +1 -1
  26. package/dist/tempo/server/Session.js +14 -24
  27. package/dist/tempo/server/Session.js.map +1 -1
  28. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  29. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  30. package/dist/tempo/server/internal/html.gen.js +1 -1
  31. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  32. package/dist/tempo/server/internal/request-body.d.ts +8 -0
  33. package/dist/tempo/server/internal/request-body.d.ts.map +1 -0
  34. package/dist/tempo/server/internal/request-body.js +27 -0
  35. package/dist/tempo/server/internal/request-body.js.map +1 -0
  36. package/dist/tempo/server/internal/transport.d.ts.map +1 -1
  37. package/dist/tempo/server/internal/transport.js +4 -14
  38. package/dist/tempo/server/internal/transport.js.map +1 -1
  39. package/package.json +1 -1
  40. package/src/cli/cli.test.ts +15 -7
  41. package/src/client/Mppx.ts +11 -2
  42. package/src/client/index.ts +1 -0
  43. package/src/client/internal/Fetch.browser.test.ts +58 -0
  44. package/src/client/internal/Fetch.test.ts +173 -0
  45. package/src/client/internal/Fetch.ts +62 -3
  46. package/src/server/Mppx.test-d.ts +36 -0
  47. package/src/server/Mppx.test.ts +926 -1
  48. package/src/server/Mppx.ts +141 -2
  49. package/src/server/Transport.test.ts +2 -1
  50. package/src/stripe/server/Charge.ts +7 -1
  51. package/src/tempo/server/Charge.ts +15 -4
  52. package/src/tempo/server/Session.test.ts +68 -0
  53. package/src/tempo/server/Session.ts +15 -35
  54. package/src/tempo/server/internal/html.gen.ts +1 -1
  55. package/src/tempo/server/internal/request-body.test.ts +142 -0
  56. package/src/tempo/server/internal/request-body.ts +37 -0
  57. package/src/tempo/server/internal/transport.test.ts +42 -2
  58. package/src/tempo/server/internal/transport.ts +4 -16
@@ -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),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 e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}let v={height:440,width:360};function y(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function b(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function x(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let S,ee,C,te=[];function w(){return typeof window>`u`?re():y({name:`iframe`},e=>{let{host:t}=e;if(S&&S.host===t){let t=ee;return ee=e.store,t&&t!==ee&&!te.includes(t)&&te.push(t),C?.destroy(),C=ne()(e),S.instance}S?.instance.destroy(),ee=e.store,C=ne()(e);let n=!1,r=ce(),i=new URL(t);i.searchParams.set(`chainId`,String(ee.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)));let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Auth`),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 Auth`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:`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=>{ae(ie(ee,te,e.id),e)}),e.waitForReady().then(e=>{c=e,e.colorScheme&&(o.style.colorScheme=e.colorScheme)}),e.on(`switch-mode`,()=>{de(),w(),n=!1,l=!0;let e=ee?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&C?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,v=()=>oe(ee),y=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});y.observe(a,{attributeOldValue:!0,attributes:!0});let b=!1,w=()=>{b&&(b=!1,a.removeEventListener(`cancel`,v),a.removeEventListener(`click`,v),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},re=()=>{b||(b=!0,a.addEventListener(`cancel`,v),a.addEventListener(`click`,v),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},le=!1,ue=()=>{le||(le=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},de=()=>{if(le){le=!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`)}},fe={close(){C.close(),n=!1,de(),w()},destroy(){S?.instance===fe&&(S=void 0),C?.close(),n=!1,w(),de(),C?.destroy(),f.destroy(),a.remove(),y.disconnect(),ee=void 0,C=void 0,te=[]},open(){n||(n=!0,ue(),re())},async syncRequests(e){if(l){C.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(x()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){C.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`)),C.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:se(ee),chainId:ee.getState().chainId,requests:e})}}};return S={host:t,instance:fe},fe})}function ne(e={}){if(typeof window>`u`)return re();let{size:t=v}=e;return y({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&oe(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`,()=>oe(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 e=ce(),a=new URL(n);a.searchParams.set(`chainId`,String(r.getState().chainId)),a.searchParams.set(`mode`,`popup`),e.icon&&(typeof e.icon==`string`?a.searchParams.set(`icon`,e.icon):(a.searchParams.set(`icon`,e.icon.light),a.searchParams.set(`iconDark`,e.icon.dark)));let c=(window.innerWidth-t.width)/2+window.screenX,l=window.screenY+100;if(i=window.open(a.toString(),`_blank`,`width=${t.width},height=${t.height},left=${c},top=${l}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:a.origin}),to:p(i,{targetOrigin:a.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>ae(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:se(r),chainId:r.getState().chainId,requests:e})}}})}function re(){return y({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){}}))}function ie(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 ae(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 oe(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 se(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ce(){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 le,ue=o((()=>{le=`1.2.3`})),de,fe=o((()=>{ue(),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@${le}`].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 pe(e,t){return e.exec(t)?.groups}var me,he,ge,_e=o((()=>{me=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,he=/^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)?$/,ge=/^\\(.+?\\).*?$/}));function ve(e){let t=e.type;if(ye.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+=ve(i),r<n-1&&(t+=`, `)}let r=pe(ye,e.type);return t+=`)${r?.array||``}`,ve({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var ye,be=o((()=>{_e(),ye=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function xe(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ve(i),r!==n-1&&(t+=`, `)}return t}var Se=o((()=>{be()}));function Ce(e){return e.type===`function`?`function ${e.name}(${xe(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${xe(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${xe(e.inputs)})`:e.type===`error`?`error ${e.name}(${xe(e.inputs)})`:e.type===`constructor`?`constructor(${xe(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var we=o((()=>{Se()}));function Te(e){return Re.test(e)}function Ee(e){return pe(Re,e)}function De(e){return ze.test(e)}function Oe(e){return pe(ze,e)}function ke(e){return Be.test(e)}function Ae(e){return pe(Be,e)}function je(e){return Ve.test(e)}function Me(e){return pe(Ve,e)}function Ne(e){return He.test(e)}function Pe(e){return pe(He,e)}function Fe(e){return Ue.test(e)}function Ie(e){return pe(Ue,e)}function Le(e){return We.test(e)}var Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je=o((()=>{_e(),Re=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,ze=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Be=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Ve=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,He=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Ue=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,We=/^receive\\(\\) external payable$/,Ge=new Set([`memory`,`indexed`,`storage`,`calldata`]),Ke=new Set([`indexed`]),qe=new Set([`calldata`,`memory`,`storage`])})),Ye,Xe,Ze=o((()=>{fe(),Ye=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`})}},Xe=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`})}}})),Qe,$e,et,tt,nt,rt,it=o((()=>{fe(),Qe=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`})}},$e=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},et=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`})}},tt=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`})}},nt=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`})}},rt=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`})}}})),at,ot,st,ct=o((()=>{fe(),at=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`})}},ot=class extends de{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},st=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`})}}})),lt,ut=o((()=>{fe(),lt=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`})}}})),dt,ft=o((()=>{fe(),dt=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 pt(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 mt,ht=o((()=>{mt=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 gt(e,t={}){if(ke(e))return _t(e,t);if(De(e))return vt(e,t);if(Te(e))return yt(e,t);if(Ne(e))return bt(e,t);if(Fe(e))return xt(e);if(Le(e))return{type:`receive`,stateMutability:`payable`};throw new ot({signature:e})}function _t(e,t={}){let n=Ae(e);if(!n)throw new at({signature:e,type:`function`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{modifiers:qe,structs:t,type:`function`}));let o=[];if(n.returns){let e=Ct(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(St(e[n],{modifiers:qe,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function vt(e,t={}){let n=Oe(e);if(!n)throw new at({signature:e,type:`event`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{modifiers:Ke,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function yt(e,t={}){let n=Ee(e);if(!n)throw new at({signature:e,type:`error`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function bt(e,t={}){let n=Pe(e);if(!n)throw new at({signature:e,type:`constructor`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function xt(e){let t=Ie(e);if(!t)throw new at({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function St(e,t){let n=pt(e,t?.type,t?.structs);if(mt.has(n))return mt.get(n);let r=ge.test(e),i=pe(r?Ot:Dt,e);if(!i)throw new $e({param:e});if(i.name&&Tt(i.name))throw new et({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=Ct(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(St(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(kt.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!wt(c))throw new Xe({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new tt({param:e,type:t?.type,modifier:i.modifier});if(qe.has(i.modifier)&&!Et(c,!!i.array))throw new nt({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return mt.set(n,u),u}function Ct(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?Ct(o,[...t,n.trim()]):Ct(o,t,`${n}${i}`,r);case`(`:return Ct(o,t,`${n}${i}`,r+1);case`)`:return Ct(o,t,`${n}${i}`,r-1);default:return Ct(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new dt({current:n,depth:r});return t.push(n.trim()),t}function wt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||me.test(e)||he.test(e)}function Tt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||me.test(e)||he.test(e)||At.test(e)}function Et(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var Dt,Ot,kt,At,jt=o((()=>{_e(),Ze(),it(),ct(),ft(),ht(),Je(),Dt=/^(?<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$_]*))?$/,Ot=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,kt=/^u?int$/,At=/^(?: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 Mt(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!je(n))continue;let i=Me(n);if(!i)throw new at({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=St(t,{type:`struct`});o.push(n)}if(!o.length)throw new st({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]=Nt(a,t)}return r}function Nt(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(ge.test(i.type))r.push(i);else{let e=pe(Pt,i.type);if(!e?.type)throw new rt({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new lt({type:o});r.push({...i,type:`tuple${a??``}`,components:Nt(t[o],t,new Set([...n,o]))})}else if(wt(o))r.push(i);else throw new Ye({type:o})}}return r}var Pt,Ft=o((()=>{_e(),Ze(),it(),ct(),ut(),Je(),jt(),Pt=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function It(e){let t=Mt(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];je(r)||n.push(gt(r,t))}return n}var Lt=o((()=>{Je(),Ft(),jt()}));function Rt(e){let t=[];if(typeof e==`string`){let n=Ct(e),r=n.length;for(let e=0;e<r;e++)t.push(St(n[e],{modifiers:Ge}))}else{let n=Mt(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(je(r))continue;let a=Ct(r),o=a.length;for(let e=0;e<o;e++)t.push(St(a[e],{modifiers:Ge,structs:n}))}}if(t.length===0)throw new Qe({params:e});return t}var zt=o((()=>{it(),Je(),Ft(),jt()})),Bt=o((()=>{fe(),we(),be(),Se(),Lt(),Ze(),Je(),Ft(),jt(),it(),zt(),ct(),ft(),ut()})),Vt,Ht=o((()=>{Vt=`0.1.1`}));function Ut(){return Vt}var Wt=o((()=>{Ht()}));function Gt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?Gt(e.cause,t):t?null:e}var T,Kt=o((()=>{Wt(),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 Gt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${Ut()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),qt,Jt=o((()=>{qt=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function Yt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Xt(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Zt(e,...t){if(!Yt(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 Qt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);Xt(e.outputLen),Xt(e.blockLen)}function $t(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 en(e,t){Zt(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function tn(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function nn(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function rn(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function an(e,t){return e<<32-t|e>>>t}function on(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function sn(e){for(let t=0;t<e.length;t++)e[t]=on(e[t]);return e}function cn(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ln(e){return typeof e==`string`&&(e=cn(e)),Zt(e),e}function un(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Zt(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 dn(e){let t=t=>e().update(ln(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function fn(e){let t=(t,n)=>e(n).update(ln(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function pn(e=32){if(qt&&typeof qt.getRandomValues==`function`)return qt.getRandomValues(new Uint8Array(e));if(qt&&typeof qt.randomBytes==`function`)return Uint8Array.from(qt.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var mn,hn,gn,_n=o((()=>{Jt(),mn=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,hn=mn?e=>e:sn,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,gn=class{}})),vn,yn,bn=o((()=>{_n(),vn=class extends gn{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Qt(e);let n=ln(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),nn(i)}update(e){return $t(this),this.iHash.update(e),this}digestInto(e){$t(this),Zt(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()}},yn=(e,t,n)=>new vn(e,t).update(n).digest(),yn.create=(e,t)=>new vn(e,t)}));function xn(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 Sn(e,t,n){return e&t^~e&n}function Cn(e,t,n){return e&t^e&n^t&n}var wn,Tn,En,Dn,On=o((()=>{_n(),wn=class extends gn{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=rn(this.buffer)}update(e){$t(this),e=ln(e),Zt(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=rn(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){$t(this),en(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,nn(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;xn(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=rn(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()}},Tn=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),En=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Dn=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function kn(e,t=!1){return t?{h:Number(e&Mn),l:Number(e>>Nn&Mn)}:{h:Number(e>>Nn&Mn)|0,l:Number(e&Mn)|0}}function An(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}=kn(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function jn(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn,Yn,Xn=o((()=>{Mn=BigInt(2**32-1),Nn=BigInt(32),Pn=(e,t,n)=>e>>>n,Fn=(e,t,n)=>e<<32-n|t>>>n,In=(e,t,n)=>e>>>n|t<<32-n,Ln=(e,t,n)=>e<<32-n|t>>>n,Rn=(e,t,n)=>e<<64-n|t>>>n-32,zn=(e,t,n)=>e>>>n-32|t<<64-n,Bn=(e,t,n)=>e<<n|t>>>32-n,Vn=(e,t,n)=>t<<n|e>>>32-n,Hn=(e,t,n)=>t<<n-32|e>>>64-n,Un=(e,t,n)=>e<<n-32|t>>>64-n,Wn=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),Gn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,Kn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),qn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Jn=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Yn=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function Zn(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=ur(a,o,1)^n[r],c=dr(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=ar[n],a=ur(t,i,r),o=dr(t,i,r),s=ir[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]^=cr[r],e[1]^=lr[r]}nn(n)}var Qn,$n,er,tr,nr,rr,ir,ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr=o((()=>{Xn(),_n(),Qn=BigInt(0),$n=BigInt(1),er=BigInt(2),tr=BigInt(7),nr=BigInt(256),rr=BigInt(113),ir=[],ar=[],or=[];for(let e=0,t=$n,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ir.push(2*(5*r+n)),ar.push((e+1)*(e+2)/2%64);let i=Qn;for(let e=0;e<7;e++)t=(t<<$n^(t>>tr)*rr)%nr,t&er&&(i^=$n<<($n<<BigInt(e))-$n);or.push(i)}sr=An(or,!0),cr=sr[0],lr=sr[1],ur=(e,t,n)=>n>32?Hn(e,t,n):Bn(e,t,n),dr=(e,t,n)=>n>32?Un(e,t,n):Vn(e,t,n),fr=class e extends gn{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,Xt(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=tn(this.state)}clone(){return this._cloneInto()}keccak(){hn(this.state32),Zn(this.state32,this.rounds),hn(this.state32),this.posOut=0,this.pos=0}update(e){$t(this),e=ln(e),Zt(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){$t(this,!1),Zt(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 Xt(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(en(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,nn(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}},pr=(e,t,n)=>dn(()=>new fr(t,e,n)),pr(6,144,224/8),pr(6,136,256/8),pr(6,104,384/8),pr(6,72,512/8),pr(1,144,224/8),mr=pr(1,136,256/8),pr(1,104,384/8),pr(1,72,512/8),hr=(e,t,n)=>fn((r={})=>new fr(t,e,r.dkLen===void 0?n:r.dkLen,!0)),hr(31,168,128/8),hr(31,136,256/8)})),_r,vr,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar=o((()=>{On(),Xn(),_n(),_r=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]),vr=new Uint32Array(64),yr=class extends wn{constructor(e=32){super(64,e,8,!1),this.A=Tn[0]|0,this.B=Tn[1]|0,this.C=Tn[2]|0,this.D=Tn[3]|0,this.E=Tn[4]|0,this.F=Tn[5]|0,this.G=Tn[6]|0,this.H=Tn[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)vr[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=vr[e-15],n=vr[e-2],r=an(t,7)^an(t,18)^t>>>3;vr[e]=(an(n,17)^an(n,19)^n>>>10)+vr[e-7]+r+vr[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=an(o,6)^an(o,11)^an(o,25),u=l+t+Sn(o,s,c)+_r[e]+vr[e]|0,d=(an(n,2)^an(n,13)^an(n,22))+Cn(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(){nn(vr)}destroy(){this.set(0,0,0,0,0,0,0,0),nn(this.buffer)}},br=An(`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))),xr=br[0],Sr=br[1],Cr=new Uint32Array(80),wr=new Uint32Array(80),Tr=class extends wn{constructor(e=64){super(128,e,16,!1),this.Ah=Dn[0]|0,this.Al=Dn[1]|0,this.Bh=Dn[2]|0,this.Bl=Dn[3]|0,this.Ch=Dn[4]|0,this.Cl=Dn[5]|0,this.Dh=Dn[6]|0,this.Dl=Dn[7]|0,this.Eh=Dn[8]|0,this.El=Dn[9]|0,this.Fh=Dn[10]|0,this.Fl=Dn[11]|0,this.Gh=Dn[12]|0,this.Gl=Dn[13]|0,this.Hh=Dn[14]|0,this.Hl=Dn[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)Cr[n]=e.getUint32(t),wr[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Cr[e-15]|0,n=wr[e-15]|0,r=In(t,n,1)^In(t,n,8)^Pn(t,n,7),i=Ln(t,n,1)^Ln(t,n,8)^Fn(t,n,7),a=Cr[e-2]|0,o=wr[e-2]|0,s=In(a,o,19)^Rn(a,o,61)^Pn(a,o,6),c=Ln(a,o,19)^zn(a,o,61)^Fn(a,o,6),l=Kn(i,c,wr[e-7],wr[e-16]);Cr[e]=qn(l,r,s,Cr[e-7],Cr[e-16])|0,wr[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=In(u,d,14)^In(u,d,18)^Rn(u,d,41),v=Ln(u,d,14)^Ln(u,d,18)^zn(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Jn(_,v,b,Sr[e],wr[e]),S=Yn(x,g,t,y,xr[e],Cr[e]),ee=x|0,C=In(n,r,28)^Rn(n,r,34)^Rn(n,r,39),te=Ln(n,r,28)^zn(n,r,34)^zn(n,r,39),w=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=jn(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=Wn(ee,te,ne);n=Gn(re,S,C,w),r=re|0}({h:n,l:r}=jn(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=jn(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=jn(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=jn(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=jn(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=jn(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=jn(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=jn(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(){nn(Cr,wr)}destroy(){nn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Er=class extends Tr{constructor(){super(48),this.Ah=En[0]|0,this.Al=En[1]|0,this.Bh=En[2]|0,this.Bl=En[3]|0,this.Ch=En[4]|0,this.Cl=En[5]|0,this.Dh=En[6]|0,this.Dl=En[7]|0,this.Eh=En[8]|0,this.El=En[9]|0,this.Fh=En[10]|0,this.Fl=En[11]|0,this.Gh=En[12]|0,this.Gl=En[13]|0,this.Hh=En[14]|0,this.Hl=En[15]|0}},Dr=dn(()=>new yr),Or=dn(()=>new Tr),kr=dn(()=>new Er)}));Ar();let jr=Dr;function Mr(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Nr(e){if(!Mr(e))throw Error(`Uint8Array expected`)}function Pr(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Fr(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Ir(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?ei:BigInt(`0x`+e)}function Lr(e){if(Nr(e),ni)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=ri[e[n]];return t}function Rr(e){if(e>=ii._0&&e<=ii._9)return e-ii._0;if(e>=ii.A&&e<=ii.F)return e-(ii.A-10);if(e>=ii.a&&e<=ii.f)return e-(ii.a-10)}function zr(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(ni)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=Rr(e.charCodeAt(i)),a=Rr(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 Br(e){return Ir(Lr(e))}function Vr(e){return Nr(e),Ir(Lr(Uint8Array.from(e).reverse()))}function Hr(e,t){return zr(e.toString(16).padStart(t*2,`0`))}function Ur(e,t){return Hr(e,t).reverse()}function Wr(e,t,n){let r;if(typeof t==`string`)try{r=zr(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Mr(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 Gr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Nr(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 Kr(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 qr(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function Jr(e,t,n){return ai(e)&&ai(t)&&ai(n)&&t<=e&&e<n}function Yr(e,t,n,r){if(!Jr(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function Xr(e){let t;for(t=0;e>ei;e>>=ti,t+=1);return t}function Zr(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=si(e),i=si(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=si(0))=>{i=s(ci([0]),e),r=s(),e.length!==0&&(i=s(ci([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 Gr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function Qr(e,t,n={}){let r=(t,n,r)=>{let i=li[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 $r(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 ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui=o((()=>{ei=BigInt(0),ti=BigInt(1),ni=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,ri=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ii={_0:48,_9:57,A:65,F:70,a:97,f:102},ai=e=>typeof e==`bigint`&&ei<=e,oi=e=>(ti<<BigInt(e))-ti,si=e=>new Uint8Array(e),ci=e=>Uint8Array.from(e),li={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`||Mr(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 di(e,t){if(ca(e)>t)throw new xa({givenSize:ca(e),maxSize:t})}function fi(e,t){if(typeof t==`number`&&t>0&&t>ca(e)-1)throw new Sa({offset:t,position:`start`,size:ca(e)})}function pi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&ca(e)!==n-t)throw new Sa({offset:n,position:`end`,size:ca(e)})}function mi(e){if(e>=_i.zero&&e<=_i.nine)return e-_i.zero;if(e>=_i.A&&e<=_i.F)return e-(_i.A-10);if(e>=_i.a&&e<=_i.f)return e-(_i.a-10)}function hi(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Ca({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 gi(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 _i,vi=o((()=>{wa(),_i={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function yi(e,t){if(Li(e)>t)throw new Xi({givenSize:Li(e),maxSize:t})}function bi(e,t){if(typeof t==`number`&&t>0&&t>Li(e)-1)throw new Zi({offset:t,position:`start`,size:Li(e)})}function xi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Li(e)!==n-t)throw new Zi({offset:n,position:`end`,size:Li(e)})}function Si(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 Qi({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Ci(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 wi=o((()=>{A()}));function Ti(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=>Ti(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)}:${Ti(r)}`),t},[]).join(`,`)}}`}function Ei(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Oi)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Di(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Oi:n,n)}var Oi,ki=o((()=>{Oi=`#__bigint`}));function Ai(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new qi(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new Ji(e)}function E(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function ji(e){return e instanceof Uint8Array?D(e):Array.isArray(e)?D(new Uint8Array(e)):e}function Mi(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(yi(n,t.size),Pi(n,t.size)):n}function D(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Gi[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(yi(r,t.size),Fi(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 Ki({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?Pi(s,r):s}function Ni(e,t={}){return D(Wi.encode(e),t)}function Pi(e,t){return Si(e,{dir:`left`,size:t})}function Fi(e,t){return Si(e,{dir:`right`,size:t})}function Ii(e){return D(sa(e))}function k(e,t,n,r={}){let{strict:i}=r;bi(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&xi(a,t,n),a}function Li(e){return Math.ceil((e.length-2)/2)}function Ri(e){return Ci(e,{dir:`left`})}function zi(e,t={}){let{signed:n}=t;t.size&&yi(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 Bi(e,t={}){return ra(e,t)}function Vi(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:zi(e,t))}function Hi(e,t={}){let{size:n}=t,r=ra(e);return n&&(di(r,n),r=ha(r)),new TextDecoder().decode(r)}function Ui(e,t={}){let{strict:n=!1}=t;try{return Ai(e,{strict:n}),!0}catch{return!1}}var Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,A=o((()=>{wa(),Kt(),vi(),wi(),ki(),Wi=new TextEncoder,Gi=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Ki=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`})}},qi=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Di(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`})}},Ji=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`})}},Yi=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`})}},Xi=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`})}},Zi=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`})}},Qi=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 $i(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 ba(e)}function ea(...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 ta(e){return e instanceof Uint8Array?e:typeof e==`string`?ra(e):na(e)}function na(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function ra(e,t={}){let{size:n}=t,r=e;n&&(yi(e,n),r=Fi(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=mi(i.charCodeAt(t++)),r=mi(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 ia(e,t={}){let{size:n}=t,r=va.encode(e);return typeof n==`number`?(di(r,n),oa(r,n)):r}function aa(e,t){return Kr(e,t)}function oa(e,t){return hi(e,{dir:`right`,size:t})}function sa(e){return crypto.getRandomValues(new Uint8Array(e))}function ca(e){return e.length}function la(e,t,n,r={}){let{strict:i}=r;fi(e,t);let a=e.slice(t,n);return i&&pi(a,t,n),a}function ua(e,t={}){let{size:n}=t;return n!==void 0&&di(e,n),zi(D(e,t),t)}function da(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(di(r,n),r=ma(r)),r.length>1||r[0]>1)throw new ya(r);return!!r[0]}function fa(e,t={}){let{size:n}=t;return n!==void 0&&di(e,n),Vi(D(e,t),t)}function pa(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(di(r,n),r=ha(r)),_a.decode(r)}function ma(e){return gi(e,{dir:`left`})}function ha(e){return gi(e,{dir:`right`})}function ga(e){try{return $i(e),!0}catch{return!1}}var _a,va,ya,ba,xa,Sa,Ca,wa=o((()=>{ui(),Kt(),A(),vi(),wi(),ki(),_a=new TextDecoder,va=new TextEncoder,ya=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`})}},ba=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Di(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`})}},xa=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`})}},Sa=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`})}},Ca=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`})}}}));bn(),gr(),wa(),A();function Ta(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=mr(ta(e));return n===`Bytes`?r:D(r)}function Ea(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=yn(jr,ta(e),ta(t));return r===`Bytes`?i:D(i)}function Da(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=jr(ta(e));return n===`Bytes`?r:D(r)}function Oa(e){return Ui(e)&&Li(e)===32}let ka={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;wa(),Kt(),A(),ki();function Aa(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 La({prefix:r,cause:new za});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new La({prefix:r,cause:new Ra});return}throw new Ia({publicKey:e})}function ja(e){let t=(()=>{if(Ui(e))return Na(e);if(ga(e))return Ma(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 Aa(t),t}function Ma(e){return Na(D(e))}function Na(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Ba({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 Pa(e,t={}){return ra(Fa(e,t))}function Fa(e,t={}){Aa(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 Ia=class extends T{constructor({publicKey:e}){super(`Value \\`${Di(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`})}},La=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`})}},Ra=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`})}},za=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`})}},Ba=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 ${Li(ji(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};wa(),Kt();let Va=/^0x[a-fA-F0-9]{40}$/;function Ha(e,t={}){let{strict:n=!0}=t;if(!Va.test(e))throw new Ja({address:e,cause:new Ya});if(n){if(e.toLowerCase()===e)return;if(Ua(e)!==e)throw new Ja({address:e,cause:new Xa})}}function Ua(e){if(ka.has(e))return ka.get(e);Ha(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ta(ia(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 ka.set(e,i),i}function Wa(e,t={}){let{checksum:n=!1}=t;return Ha(e),n?Ua(e):e}function Ga(e,t={}){return Wa(`0x${Ta(`0x${Fa(e).slice(4)}`).substring(26)}`,t)}function Ka(e,t){return Ha(e,{strict:!1}),Ha(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function qa(e,t={}){let{strict:n=!0}=t??{};try{return Ha(e,{strict:n}),!0}catch{return!1}}var Ja=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`})}},Ya=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`})}},Xa=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`})}};let Za=/^(.*)\\[([0-9]*)\\]$/,Qa=/^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 eo=2n**256n-1n;wa(),Kt(),A();function to(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=bo(t.type);if(a){let[n,o]=a;return ro(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return so(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return no(e,{checksum:r});if(t.type===`bool`)return io(e);if(t.type.startsWith(`bytes`))return ao(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return oo(e,t);if(t.type===`string`)return co(e,{staticPosition:i});throw new Lo(t.type)}function no(e,t={}){let{checksum:n=!1}=t;return[(e=>n?Ua(e):e)(D(la(e.readBytes(32),-20))),32]}function ro(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+fa(e.readBytes(32)),i=n+32;e.setPosition(n);let o=fa(e.readBytes(32)),s=xo(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=to(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(xo(t)){let n=a+fa(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=to(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]=to(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function io(e){return[da(e.readBytes(32),{size:32}),32]}function ao(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=fa(e.readBytes(32));e.setPosition(n+t);let r=fa(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 oo(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?ua(i,{signed:n}):fa(i,{signed:n}),32]}function so(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(xo(t)){let n=i+fa(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=to(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]=to(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function co(e,{staticPosition:t}){let n=t+fa(e.readBytes(32));e.setPosition(n);let r=fa(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=pa(ma(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function lo({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(uo({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function uo({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=bo(r.type);if(i){let[t,a]=i;return mo(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return yo(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return po(n,{checksum:e});if(r.type===`bool`)return go(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=$a.exec(r.type)??[];return _o(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return ho(n,{type:r.type});if(r.type===`string`)return vo(n);throw new Lo(r.type)}function fo(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Li(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+=Li(s)):n.push(s)}return E(...n,...r)}function po(e,t){let{checksum:n=!1}=t;return Ha(e,{strict:n}),{dynamic:!1,encoded:Pi(e.toLowerCase())}}function mo(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new Io(e);if(!a&&e.length!==r)throw new No({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=uo({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=fo(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 ho(e,{type:t}){let[,n]=t.split(`bytes`),r=Li(e);if(!n){let t=e;return r%32!=0&&(t=Fi(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:E(Pi(O(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Po({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Fi(e)}}function go(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Pi(Mi(e))}}function _o(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 Ki({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 vo(e){let t=Ni(e),n=Math.ceil(Li(t)/32),r=[];for(let e=0;e<n;e++)r.push(Fi(k(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:E(Fi(O(Li(t),{size:32})),...r)}}function yo(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=uo({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?fo(a):E(...a.map(({encoded:e})=>e))}}function bo(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function xo(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(xo);let n=bo(e.type);return!!(n&&xo({...e,type:n[1]}))}Kt();let So={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 Eo({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new To({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new wo({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 wo({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 Co(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(So);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var wo=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`})}},To=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`})}},Eo=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`})}};Bt(),wa(),Kt(),A();function Do(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?ra(t):t,o=Co(a);if(ca(a)===0&&e.length>0)throw new Mo;if(ca(a)&&ca(a)<32)throw new jo({data:typeof t==`string`?t:D(t),parameters:e,size:ca(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]=to(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Oo(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Fo({expectedLength:e.length,givenLength:t.length});let i=fo(lo({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function ko(e,t){if(e.length!==t.length)throw new Fo({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(ko.encode(i,a))}return E(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return Ha(e),Pi(e.toLowerCase(),r?32:0)}if(e===`string`)return Ni(n);if(e===`bytes`)return n;if(e===`bool`)return Pi(Mi(n),r?32:1);let i=e.match($a);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(Qa);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Po({expectedSize:Number.parseInt(t,10),value:n});return Fi(n,r?32:0)}let o=e.match(Za);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 Lo(e)}e.encode=t})(ko||={});function Ao(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Rt(e):e}var jo=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${xe(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Mo=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`})}},No=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`})}},Po=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Li(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Fo=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`})}},Io=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`})}},Lo=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`})}};Kt(),A();function Ro(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&Ha(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Oa(e)?e:Ri(e))})}return t}function zo(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(Li(r[e])!==32)throw new Bo({storageKey:r[e]});n&&Ha(n,{strict:!1}),t.push([n,r])}return t}var Bo=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Li(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};wa(),Kt(),A();function Vo(e){return Ho(e,`Hex`)}function Ho(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return Uo(Co((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Yi(e);return ra(e)}return e})(),{recursiveReadLimit:1/0}),n)}function Uo(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=Wo(e,n,128),i=e.readBytes(r);return t===`Hex`?D(i):i}return Go(e,Wo(e,n,192),t)}function Wo(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 Go(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Uo(e,n));return i}function Ko(e,t){let{as:n}=t,r=Jo(e),i=Co(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}function qo(e,t={}){let{as:n=`Hex`}=t;return Ko(e,{as:n})}function Jo(e){return Array.isArray(e)?Yo(e.map(e=>Jo(e))):Xo(e)}function Yo(e){let t=e.reduce((e,t)=>e+t.length,0),n=Zo(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 Xo(e){let t=typeof e==`string`?ra(e):e,n=Zo(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 Zo(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 Qo(e,t){let n=e%t;return n>=ms?n:t+n}function $o(e,t,n){let r=e;for(;t-- >ms;)r*=r,r%=n;return r}function es(e,t){if(e===ms)throw Error(`invert: expected non-zero number`);if(t<=ms)throw Error(`invert: expected positive modulus, got `+t);let n=Qo(e,t),r=t,i=ms,a=hs,o=hs,s=ms;for(;n!==ms;){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!==hs)throw Error(`invert: does not exist`);return Qo(i,t)}function ts(e,t){let n=(e.ORDER+hs)/vs,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function ns(e,t){let n=(e.ORDER-ys)/bs,r=e.mul(t,gs),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,gs),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 rs(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-hs,n=0;for(;t%gs===ms;)t/=gs,n++;let r=gs,i=us(e);for(;cs(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return ts;let a=i.pow(r,t),o=(t+hs)/gs;return function(e,r){if(e.is0(r))return r;if(cs(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=hs<<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 is(e){return e%vs===_s?ts:e%bs===ys?ns:rs(e)}function as(e){return Qr(e,xs.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function os(e,t,n){if(n<ms)throw Error(`invalid exponent, negatives unsupported`);if(n===ms)return e.ONE;if(n===hs)return t;let r=e.ONE,i=t;for(;n>ms;)n&hs&&(r=e.mul(r,i)),i=e.sqr(i),n>>=hs;return r}function ss(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 cs(e,t){let n=(e.ORDER-hs)/gs,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 ls(e,t){t!==void 0&&Xt(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function us(e,t,n=!1,r={}){if(e<=ms)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=ls(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:oi(i),ZERO:ms,ONE:hs,create:t=>Qo(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return ms<=t&&t<e},is0:e=>e===ms,isOdd:e=>(e&hs)===hs,neg:t=>Qo(-t,e),eql:(e,t)=>e===t,sqr:t=>Qo(t*t,e),add:(t,n)=>Qo(t+n,e),sub:(t,n)=>Qo(t-n,e),mul:(t,n)=>Qo(t*n,e),pow:(e,t)=>os(s,e,t),div:(t,n)=>Qo(t*es(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>es(t,e),sqrt:r.sqrt||(t=>(o||=is(e),o(s,t))),toBytes:e=>n?Ur(e,a):Hr(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Vr(e):Br(e)},invertBatch:e=>ss(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function ds(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function fs(e){let t=ds(e);return t+Math.ceil(t/2)}function ps(e,t,n=!1){let r=e.length,i=ds(t),a=fs(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Qo(n?Vr(e):Br(e),t-hs)+hs;return n?Ur(o,i):Hr(o,i)}var ms,hs,gs,_s,vs,ys,bs,xs,Ss=o((()=>{_n(),ui(),ms=BigInt(0),hs=BigInt(1),gs=BigInt(2),_s=BigInt(3),vs=BigInt(4),ys=BigInt(5),bs=BigInt(8),xs=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Cs(e,t){let n=t.negate();return e?n:t}function ws(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Ts(e,t){ws(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:oi(e),maxNumber:i,shiftBy:BigInt(e)}}function Es(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+=Ps);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 Ds(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 Os(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 ks(e){return Is.get(e)||1}function As(e,t){return{constTimeNegate:Cs,hasPrecomputes(e){return ks(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>Ns;)n&Ps&&(r=r.add(i)),i=i.double(),n>>=Ps;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Ts(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=Ts(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Es(i,e,s);i=t,c?o=o.add(Cs(u,r[d])):a=a.add(Cs(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Ts(n,t);for(let e=0;e<o.windows&&i!==Ns;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=Es(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=Fs.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&Fs.set(t,n(r))),r},wNAFCached(e,t,n){let r=ks(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=ks(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){ws(n,t),Is.set(e,n),Fs.delete(e)}}}function js(e,t,n,r){Ds(n,e),Os(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=Xr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=oi(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 Ms(e){return as(e.Fp),Qr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...ls(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Ns,Ps,Fs,Is,Ls=o((()=>{Ss(),ui(),Ns=BigInt(0),Ps=BigInt(1),Fs=new WeakMap,Is=new WeakMap}));function Rs(e){e.lowS!==void 0&&Pr(`lowS`,e.lowS),e.prehash!==void 0&&Pr(`prehash`,e.prehash)}function zs(e){let t=Ms(e);Qr(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 Bs(e,t){return Lr(Hr(e,t))}function Vs(e){let t=zs(e),{Fp:n}=t,r=us(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return Gr(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,Xs),Zs),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 Jr(e,j,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Mr(e)&&(e=Lr(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:Br(Wr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Qo(o,a)),Yr(`private key`,o,j,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=$r((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=$r(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=ss(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(Wr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return js(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,Xs),{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,Xs),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;Yr(`scalar`,e,Js,i);let a=h.ZERO;if(e===Js)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>Js||l>Js;)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;Yr(`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===Js||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 Pr(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Pr(`isCompressed`,e),Lr(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=As(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function Hs(e){let t=Ms(e);return Qr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function Us(e){let t=Hs(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Qo(e,r)}function l(e){return es(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=Vs({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=Gr;return Pr(`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=Br(i);if(!Jr(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)=>Br(e.slice(t,n));class _{constructor(e,t,n){Yr(`r`,e,j,r),Yr(`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=Wr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=qs.toSig(Wr(`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(Wr(`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+Bs(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 zr(this.toDERHex())}toDERHex(){return qs.hexFromSig(this)}toCompactRawBytes(){return zr(this.toCompactHex())}toCompactHex(){let e=i;return Bs(this.r,e)+Bs(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=fs(t.n);return ps(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=Wr(`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=Br(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=oi(a);function te(e){return Yr(`num < 2^`+a,e,Js,C),Hr(e,i)}function w(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=Wr(`msgHash`,e),Rs(i),f&&(e=Wr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[te(y),te(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(Wr(`extraEntropy`,e))}let x=Gr(...b),C=v;function w(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===Js)return;let a=c(n*c(C+i*y));if(a===Js)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:w}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=w(e,n,r),o=t;return Zr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=Wr(`msgHash`,n),r=Wr(`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`||Mr(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 qs.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 Ws(e,t){let n=e.ORDER,r=Js;for(let e=n-j;e%Ys===Js;e/=Ys)r+=j;let i=r,a=Ys<<i-j-j,o=a*Ys,s=(n-j)/o,c=(s-j)/Ys,l=o-j,u=a,d=e.pow(t,s),f=e.pow(t,(s+j)/Ys),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-Ys;n=Ys<<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%Zs===Xs){let n=(e.ORDER-Xs)/Zs,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 Gs(e,t){if(as(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=Ws(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=ss(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var Ks,qs,Js,j,Ys,Xs,Zs,Qs=o((()=>{Ls(),Ss(),ui(),Ks=class extends Error{constructor(e=``){super(e)}},qs={Err:Ks,_tlv:{encode:(e,t)=>{let{Err:n}=qs;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=Fr(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Fr(i.length/2|128):``;return Fr(e)+a+i+t},decode(e,t){let{Err:n}=qs,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}=qs;if(e<Js)throw new t(`integer: negative integers are not allowed`);let n=Fr(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}=qs;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 Br(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=qs,i=Wr(`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}=qs,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},Js=BigInt(0),j=BigInt(1),Ys=BigInt(2),Xs=BigInt(3),Zs=BigInt(4)}));function $s(e){return{hash:e,hmac:(t,...n)=>yn(e,t,un(...n)),randomBytes:pn}}function ec(e,t){let n=t=>Us({...e,...$s(t)});return{...n(t),create:n}}var tc=o((()=>{bn(),_n(),Qs()}));function nc(e,t){if(ic(e),ic(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 rc(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 ic(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function ac(e,t,n,r){Nr(e),Nr(t),ic(n),t.length>255&&(t=r(Gr(qr(`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=Gr(t,nc(t.length,1)),c=nc(0,a),l=nc(n,2),u=Array(o),d=r(Gr(c,e,l,nc(0,1),s));u[0]=r(Gr(d,nc(1,1),s));for(let e=1;e<=o;e++)u[e]=r(Gr(rc(d,u[e-1]),nc(e+1,1),s));return Gr(...u).slice(0,n)}function oc(e,t,n,r,i){if(Nr(e),Nr(t),ic(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(qr(`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(nc(n,2)).update(t).update(nc(t.length,1)).digest()}function sc(e,t,n){Qr(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;Nr(e),ic(t);let l=typeof c==`string`?qr(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=ac(e,l,f,o);else if(s===`xof`)p=oc(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]=Qo(uc(p.subarray(i,i+d)),r)}m[e]=t}return m}function cc(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]=ss(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function lc(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=sc(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(sc(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 uc,dc=o((()=>{Ss(),ui(),uc=Br})),fc=c({encodeToCurve:()=>Hc,hashToCurve:()=>Vc,schnorr:()=>Lc,secp256k1:()=>Oc,secp256k1_hasher:()=>Bc});function pc(e){let t=xc,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=$o($o($o(u,n,t)*u%t,n,t)*u%t,Tc,t)*l%t,f=$o(d,i,t)*d%t,p=$o(f,a,t)*f%t,m=$o(p,s,t)*p%t,h=$o($o($o($o($o($o(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Tc,t);if(!Dc.eql(Dc.sqr(h),e))throw Error(`Cannot find square root`);return h}function mc(e,...t){let n=kc[e];if(n===void 0){let t=Dr(Uint8Array.from(e,e=>e.charCodeAt(0)));n=Gr(t,t),kc[e]=n}return Dr(Gr(n,...t))}function hc(e){let t=Oc.utils.normPrivateKeyToScalar(e),n=Pc.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Nc(-t),bytes:Ac(n)}}function gc(e){Yr(`x`,e,wc,xc);let t=pc(Mc(Mc(e*e)*e+BigInt(7)));t%Tc!==Cc&&(t=Mc(-t));let n=new Pc(e,t,wc);return n.assertValidity(),n}function _c(...e){return Nc(Ic(mc(`BIP0340/challenge`,...e)))}function vc(e){return hc(e).bytes}function yc(e,t,n=pn(32)){let r=Wr(`message`,e),{bytes:i,scalar:a}=hc(t),o=Nc(Ic(mc(`BIP0340/nonce`,jc(a^Ic(mc(`BIP0340/aux`,Wr(`auxRand`,n,32)))),i,r)));if(o===Cc)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=hc(o),l=_c(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(jc(Nc(c+l*a)),32),!bc(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function bc(e,t,n){let r=Wr(`signature`,e,64),i=Wr(`message`,t),a=Wr(`publicKey`,n,32);try{let e=gc(Ic(a)),t=Ic(r.subarray(0,32));if(!Jr(t,wc,xc))return!1;let n=Ic(r.subarray(32,64));if(!Jr(n,wc,Sc))return!1;let o=Fc(e,n,Nc(-_c(jc(t),Ac(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var xc,Sc,Cc,wc,Tc,Ec,Dc,Oc,kc,Ac,jc,Mc,Nc,Pc,Fc,Ic,Lc,Rc,zc,Bc,Vc,Hc,Uc=o((()=>{Ar(),_n(),tc(),dc(),Ss(),ui(),Qs(),xc=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Sc=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Cc=BigInt(0),wc=BigInt(1),Tc=BigInt(2),Ec=(e,t)=>(e+t/Tc)/t,Dc=us(xc,void 0,void 0,{sqrt:pc}),Oc=ec({a:Cc,b:BigInt(7),Fp:Dc,n:Sc,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Sc,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-wc*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=Ec(a*e,t),c=Ec(-r*e,t),l=Qo(e-s*n-c*i,t),u=Qo(-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}}}},Dr),kc={},Ac=e=>e.toRawBytes(!0).slice(1),jc=e=>Hr(e,32),Mc=e=>Qo(e,xc),Nc=e=>Qo(e,Sc),Pc=Oc.ProjectivePoint,Fc=(e,t,n)=>Pc.BASE.multiplyAndAddUnsafe(e,t,n),Ic=Br,Lc={getPublicKey:vc,sign:yc,verify:bc,utils:{randomPrivateKey:Oc.utils.randomPrivateKey,lift_x:gc,pointToBytes:Ac,numberToBytesBE:Hr,bytesToNumberBE:Br,taggedHash:mc,mod:Qo}},Rc=cc(Dc,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),zc=Gs(Dc,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:Dc.create(BigInt(`-11`))}),Bc=lc(Oc.ProjectivePoint,e=>{let{x:t,y:n}=zc(Dc.create(e[0]));return Rc(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:Dc.ORDER,m:1,k:128,expand:`xmd`,hash:Dr}),Vc=Bc.hashToCurve,Hc=Bc.encodeToCurve}));Kt(),A(),ki();function Wc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new il({signature:e});if(e.r<0n||e.r>eo)throw new al({value:e.r});if(e.s<0n||e.s>eo)throw new ol({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new sl({value:e.yParity})}function Gc(e){return Kc(D(e))}function Kc(e){if(e.length!==130&&e.length!==132)throw new rl({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 tl(t)}catch{throw new sl({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function qc(e){if(e.r!==void 0&&e.s!==void 0)return Jc(e)}function Jc(e){let t=typeof e==`string`?Kc(e):e instanceof Uint8Array?Gc(e):typeof e.r==`string`?Xc(e):e.v?Yc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return Wc(t),t}function Yc(e){return{r:e.r,s:e.s,yParity:tl(e.v)}}function Xc(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=tl(t)),typeof n!=`number`)throw new sl({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Zc(e){let[t,n,r]=e;return Jc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function Qc(e){Wc(e);let t=e.r,n=e.s;return E(O(t,{size:32}),O(n,{size:32}),typeof e.yParity==`number`?O(nl(e.yParity),{size:1}):`0x`)}function $c(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 el(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Ri(O(t)),n===0n?`0x`:Ri(O(n))]}function tl(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new cl({value:e})}function nl(e){if(e===0)return 27;if(e===1)return 28;throw new sl({value:e})}var rl=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Li(ji(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},il=class extends T{constructor({signature:e}){super(`Signature \\`${Di(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},al=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`})}},ol=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`})}},sl=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`})}},cl=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 ll(e,t={}){return typeof e.chainId==`string`?ul(e):{...e,...t.signature}}function ul(e){let{address:t,chainId:n,nonce:r}=e,i=qc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function dl(e){return e.map(ul)}function fl(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:O(n),nonce:O(r),...$c(i)}}function pl(e){return e.map(fl)}wa();let ml=new TextEncoder,hl=new TextDecoder,gl=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),_l={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function vl(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]=gl[r>>18],i[t+1]=gl[r>>12&63],i[t+2]=gl[r>>6&63],i[t+3]=gl[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=hl.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function yl(e,t={}){return vl(ra(e),t)}function bl(e,t={}){return vl(ia(e),t)}function xl(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);ml.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(_l[r[e]]<<18)+(_l[r[e+1]]<<12)+(_l[r[e+2]]<<6)+_l[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 Sl(e){return pa(xl(e))}let Cl={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},wl={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Tl(e,t={}){if(!e)return null;let n=qc(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=dl(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=wl[e.type]??e.type),n&&(r.v=nl(n.yParity)),r}function El(e){return{address:e.address,amount:O(e.amount),index:O(e.index),validatorIndex:O(e.validatorIndex)}}var Dl=o((()=>{A()}));function Ol(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(El)}}}var kl=o((()=>{A(),Dl()}));wa(),Kt(),A();function Al(e,t={}){let{as:n=`Hex`}=t,r=Wl(e),i=Co(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}var jl=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`})}},Ml=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`})}},Nl=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`})}},Pl=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`})}},Fl=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`})}},Il=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`})}},Ll=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`})}},Rl=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},zl=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`})}},Bl=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`})}},Vl=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`})}},Hl=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 Wl(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 Wl.number(e);if(typeof e==`bigint`)throw new Ll;if(typeof e==`string`)return Wl.string(e);if(Array.isArray(e))return Wl.array(e);if(e instanceof Uint8Array)return Wl.byteString(e);if(e instanceof ArrayBuffer)return Wl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return Wl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return Wl.map(e);if(typeof e==`object`)return Wl.object(e);throw new Rl({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 zl({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 zl({number:e.toString(10)})}e.number=t;function n(e){let t=ia(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 Bl({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 Vl({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 Hl({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 Hl({size:i})}e.map=o})(Wl||={});function Gl(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Gl.readUnsignedInteger(e,r);case 1:return Gl.readNegativeInteger(e,r);case 2:return Gl.readByteString(e,r);case 3:return Gl.readTextString(e,r);case 4:return Gl.readArray(e,r);case 5:return Gl.readMap(e,r);case 6:throw new Pl({tag:r});case 7:return Gl.readSimpleOrFloat(e,r);default:throw new jl({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 Nl:new Ml({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 Fl({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 Fl({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return pa(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 Il({value:t});return}throw new Ml({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}})(Gl||={}),Kt();function Kl(e){let t=Pa(e),n=t.slice(1,33),r=t.slice(33,65);return Al(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}Uc(),wa(),A();function ql(e){let{privateKey:t}=e;return ja(Oc.ProjectivePoint.fromPrivateKey(ji(t).slice(2)))}function Jl(e){return Ga(Yl(e))}function Yl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return ja(new Oc.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(ji(t).substring(2)))}function Xl(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Oc.sign(ta(r),ta(i),{extraEntropy:typeof t==`boolean`?t:ji(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Zl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?Ka(t,Jl({payload:r,signature:a})):Oc.verify(a,ta(r),Pa(i),...n?[{prehash:!0,lowS:!0}]:[])}Ar(),tc(),dc(),Ss(),Qs();let Ql=us(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),$l=Ql.create(BigInt(`-3`)),eu=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),tu=ec({a:$l,b:eu,Fp:Ql,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Dr),nu=tu,ru=Gs(Ql,{A:$l,B:eu,Z:Ql.create(BigInt(`-10`))}),iu=lc(nu.ProjectivePoint,e=>ru(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:Ql.ORDER,m:1,k:128,expand:`xmd`,hash:Dr}),au=us(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),ou=au.create(BigInt(`-3`)),su=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),cu=ec({a:ou,b:su,Fp:au,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},kr),lu=Gs(au,{A:ou,B:su,Z:au.create(BigInt(`-12`))});lc(cu.ProjectivePoint,e=>lu(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:au.ORDER,m:1,k:192,expand:`xmd`,hash:kr});let uu=us(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),du=uu.create(BigInt(`-3`)),fu=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),pu=ec({a:du,b:fu,Fp:uu,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Or),mu=Gs(uu,{A:du,B:fu,Z:uu.create(BigInt(`-4`))});lc(pu.ProjectivePoint,e=>mu(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:uu.ORDER,m:1,k:256,expand:`xmd`,hash:Or});let hu=tu,gu=tu;iu.hashToCurve,iu.encodeToCurve,wa(),A();function _u(e){let{privateKey:t}=e;return ja(gu.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):D(t).slice(2)))}function vu(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=gu.sign(r instanceof Uint8Array?r:ra(r),i instanceof Uint8Array?i:ra(i),{extraEntropy:typeof t==`boolean`?t:ji(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function yu(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return gu.verify(i,n instanceof Uint8Array?n:ra(n),Fa(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var bu=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 xu(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Su(r.error);return r.result}function Su(e){let t=e;if(t instanceof Error&&!(`code`in t))return new Pu({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===Pu.code?new Pu(t):n===wu.code?new wu(t):n===Nu.code?new Nu(t):n===ju.code?new ju(t):n===ku.code?new ku(t):n===Mu.code?new Mu(t):n===Ou.code?new Ou(t):n===Fu.code?new Fu(t):n===Tu.code?new Tu(t):n===Eu.code?new Eu(t):n===Du.code?new Du(t):n===Au.code?new Au(t):new Pu({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Cu=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??``}},wu=class e extends Cu{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(wu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Tu=class e extends Cu{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(Tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Eu=class e extends Cu{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(Eu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Du=class e extends Cu{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(Du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Ou=class e extends Cu{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(Ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ku=class e extends Cu{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(ku,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Au=class e extends Cu{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(Au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var ju=class e extends Cu{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(ju,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var Mu=class e extends Cu{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(Mu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var Nu=class e extends Cu{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(Nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var Pu=class e extends Cu{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(Pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var Fu=class e extends Cu{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(Fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Kt();var Iu=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}},Lu=class extends Iu{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(Lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var Ru=class extends Iu{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(Ru,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var zu=class extends Iu{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(zu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var Bu=class extends Iu{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(Bu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var Vu=class extends Iu{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(Vu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var Hu=class extends Iu{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(Hu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var Uu=class extends Iu{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 Wu=class extends Iu{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(Wu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var Gu=class extends Iu{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(Gu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var Ku=class extends Iu{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(Ku,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var qu=class extends Iu{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(qu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var Ju=class extends Iu{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(Ju,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var Yu=class extends Iu{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(Yu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function Xu(){let e=new bu.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 Zu(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?xu(n):n}catch(e){throw Qu(e)}}}}function Qu(e){let t=Su(e);if(t instanceof Pu){if(!t.data)return t;let{code:e}=t.data;if(e===Bu.code)return new Bu(t);if(e===Vu.code)return new Vu(t);if(e===Lu.code)return new Lu(t);if(e===Ru.code)return new Ru(t);if(e===zu.code)return new zu(t);if(e===Hu.code)return new Hu(t);if(e===Ju.code)return new Ju(t);if(e===Yu.code)return new Yu(t);if(e===qu.code)return new qu(t);if(e===Ku.code)return new Ku(t);if(e===Gu.code)return new Gu(t);if(e===Wu.code)return new Wu(t);if(e===Uu.code)return new Uu(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 ed(e={}){let t=e.id??0;return{prepare(e){return td({id:t++,...e})},get id(){return t}}}function td(e){return{...e,jsonrpc:`2.0`}}function nd(){return null}A();function rd(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=pl(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=Cl[e.type]||e.type),e.value!==void 0&&(t.value=O(e.value)),t}Kt();let id={wei:0,gwei:9,szabo:12,finney:15,ether:18};function ad(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 od(e,t=`wei`){return ad(e,id.gwei-id[t])}Kt();var sd=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${od(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`})}},cd=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`})}},ld=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`})}},ud=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${od(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${od(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};wa(),Kt(),Uint8Array.from([105,171,180,181,160,222,75,198,42,42,32,31,141,37,186,233]);function dd(e){let t=hu.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}A();function fd(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=E(Da(Ni(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,Kl(t.publicKey))}function pd(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:yl(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}wa(),Kt(),A();function md(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:xl(e),type:`public-key`})):[{id:xl(t),type:`public-key`}]}:{},challenge:ra(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function hd(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=fd({flag:i,rpId:o,signCount:s}),u=pd({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Da(Ni(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:E(l,d)}}async function gd(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:md(n);try{let e=await t(r);if(!e)throw new _d;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=dd(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 _d({cause:e})}}var _d=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 vd(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=ra(s);if(u.length<37||a!==void 0&&!aa(u.slice(0,32),Da(Ni(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(xl(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:yu({hash:!0,payload:ea(u,Da(ia(c),{as:`Bytes`})),publicKey:i,signature:o})}let yd=hd;async function bd(e){return gd(e)}function xd(e){return vd(e)}wa();async function Sd(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=ja(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Cd(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,ta(t)),i=na(new Uint8Array(r)),a=ua(la(i,0,32)),o=ua(la(i,32,64));return o>hu.CURVE.n/2n&&(o=hu.CURVE.n-o),{r:a,s:o}}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 wd(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new nf(e.type);return`${e.name}(${Td(e.inputs,{includeName:t})})`}function Td(e,{includeName:t=!1}={}){return e?e.map(e=>Ed(e,{includeName:t})).join(t?`, `:`,`):``}function Ed(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Td(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Dd=o((()=>{rf()}));function N(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Od=o((()=>{}));function P(e){return N(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var kd=o((()=>{Od()})),Ad,jd=o((()=>{Ad=`2.47.6`}));function Md(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Md(e.cause,t):t?null:e}var Nd,F,I=o((()=>{jd(),Nd={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Ad}`},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=Nd.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Nd.version?[`Version: ${Nd.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=Ad}walk(e){return Md(this,e)}}})),Pd,Fd,Id,Ld,Rd,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd,qd,Jd,Yd,Xd,Zd,Qd,$d,ef,tf,nf,rf=o((()=>{Dd(),kd(),I(),Pd=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`})}},Fd=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`})}},Id=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: (${Td(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}},Ld=class extends F{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Rd=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`})}},zd=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`})}},Bd=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`})}},Vd=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`})}},Hd=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`})}},Ud=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}},Wd=class extends F{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Gd=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`})}},Kd=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`})}},qd=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`})}},Jd=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`})}},Yd=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${wd(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${wd(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Xd=class extends F{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},Zd=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: (${Td(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}},Qd=class extends F{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${wd(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},$d=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`})}},ef=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`})}},tf=class extends F{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},nf=class extends F{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),af,of,sf,cf=o((()=>{I(),af=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`})}},of=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`})}},sf=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 lf(e,{dir:t,size:n=32}={}){return typeof e==`string`?uf(e,{dir:t,size:n}):df(e,{dir:t,size:n})}function uf(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new of({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function df(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new of({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 ff=o((()=>{cf()})),pf,mf,hf,gf,_f,vf=o((()=>{I(),pf=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`})}},mf=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`})}},hf=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`})}},gf=class extends F{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},_f=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function yf(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 bf=o((()=>{}));function xf(e,{size:t}){if(P(e)>t)throw new _f({givenSize:P(e),maxSize:t})}function L(e,t={}){let{signed:n}=t;t.size&&xf(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 Sf(e,t={}){let n=e;if(t.size&&(xf(n,{size:t.size}),n=yf(n)),yf(n)===`0x00`)return!1;if(yf(n)===`0x01`)return!0;throw new hf(n)}function Cf(e,t={}){let n=L(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new pf({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var wf=o((()=>{vf(),kd(),bf()}));function Tf(e,t={}){return typeof e==`number`||typeof e==`bigint`?R(e,t):typeof e==`string`?Of(e,t):typeof e==`boolean`?Ef(e,t):Df(e,t)}function Ef(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(xf(n,{size:t.size}),lf(n,{size:t.size})):n}function Df(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=kf[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(xf(r,{size:t.size}),lf(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 pf({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?lf(s,{size:r}):s}function Of(e,t={}){return Df(Af.encode(e),t)}var kf,Af,z=o((()=>{vf(),ff(),wf(),kf=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Af=new TextEncoder}));function jf(e,t={}){return typeof e==`number`||typeof e==`bigint`?Ff(e,t):typeof e==`boolean`?Mf(e,t):N(e)?Pf(e,t):If(e,t)}function Mf(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(xf(n,{size:t.size}),lf(n,{size:t.size})):n}function Nf(e){if(e>=Rf.zero&&e<=Rf.nine)return e-Rf.zero;if(e>=Rf.A&&e<=Rf.F)return e-(Rf.A-10);if(e>=Rf.a&&e<=Rf.f)return e-(Rf.a-10)}function Pf(e,t={}){let n=e;t.size&&(xf(n,{size:t.size}),n=lf(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=Nf(r.charCodeAt(t++)),i=Nf(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 Ff(e,t){return Pf(R(e,t))}function If(e,t={}){let n=Lf.encode(e);return typeof t.size==`number`?(xf(n,{size:t.size}),lf(n,{dir:`right`,size:t.size})):n}var Lf,Rf,zf=o((()=>{I(),Od(),ff(),wf(),z(),Lf=new TextEncoder,Rf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Bf(e,t){let n=t||`hex`,r=mr(N(e,{strict:!1})?jf(e):e);return n===`bytes`?r:Tf(r)}var Vf=o((()=>{gr(),Od(),zf(),z()}));function Hf(e){return Uf(e)}var Uf,Wf=o((()=>{zf(),Vf(),Uf=e=>Bf(jf(e))}));function Gf(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 Kf=o((()=>{I()})),qf,Jf=o((()=>{Bt(),Kf(),qf=e=>Gf(typeof e==`string`?e:Ce(e))}));function Yf(e){return Hf(qf(e))}var Xf=o((()=>{Wf(),Jf()})),Zf,Qf=o((()=>{Xf(),Zf=Yf})),$f,ep=o((()=>{I(),$f=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`})}}})),tp,np=o((()=>{tp=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 rp(e,t){if(ap.has(`${e}.${t}`))return ap.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Bf(If(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 ap.set(`${e}.${t}`,a),a}function ip(e,t){if(!sp(e,{strict:!1}))throw new $f({address:e});return rp(e,t)}var ap,op=o((()=>{ep(),zf(),Vf(),np(),up(),ap=new tp(8192)}));function sp(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(lp.has(r))return lp.get(r);let i=cp.test(e)?e.toLowerCase()===e?!0:n?rp(e)===e:!0:!1;return lp.set(r,i),i}var cp,lp,up=o((()=>{np(),op(),cp=/^0x[a-fA-F0-9]{40}$/,lp=new tp(8192)}));function dp(e){return typeof e[0]==`string`?pp(e):fp(e)}function fp(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 pp(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var mp=o((()=>{}));function hp(e,t,n,{strict:r}={}){return N(e,{strict:!1})?yp(e,t,n,{strict:r}):vp(e,t,n,{strict:r})}function gp(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new af({offset:t,position:`start`,size:P(e)})}function _p(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new af({offset:n,position:`end`,size:P(e)})}function vp(e,t,n,{strict:r}={}){gp(e,t);let i=e.slice(t,n);return r&&_p(i,t,n),i}function yp(e,t,n,{strict:r}={}){gp(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&_p(i,t,n),i}var bp=o((()=>{cf(),Od(),kd()})),xp,Sp,Cp=o((()=>{xp=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Sp=/^(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 wp(e,t){if(e.length!==t.length)throw new Bd({expectedLength:e.length,givenLength:t.length});let n=Dp(Tp({params:e,values:t}));return n.length===0?`0x`:n}function Tp({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(Ep({param:e[r],value:t[r]}));return n}function Ep({param:e,value:t}){let n=Fp(e.type);if(n){let[r,i]=n;return kp(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return Pp(t,{param:e});if(e.type===`address`)return Op(t);if(e.type===`bool`)return jp(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Sp.exec(e.type)??[];return Mp(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Ap(t,{param:e});if(e.type===`string`)return Np(t);throw new $d(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Dp(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 dp([...n,...r])}function Op(e){if(!sp(e))throw new $f({address:e});return{dynamic:!1,encoded:uf(e.toLowerCase())}}function kp(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new tf(e);if(!r&&e.length!==t)throw new Rd({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=Ep({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Dp(a);if(r){let t=R(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?dp([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:dp(a.map(({encoded:e})=>e))}}function Ap(e,{param:t}){let[,n]=t.type.split(`bytes`),r=P(e);if(!n){let t=e;return r%32!=0&&(t=uf(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:dp([uf(R(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new zd({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:uf(e,{dir:`right`})}}function jp(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:uf(Ef(e))}}function Mp(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 pf({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 Np(e){let t=Of(e),n=Math.ceil(P(t)/32),r=[];for(let e=0;e<n;e++)r.push(uf(hp(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:dp([uf(R(P(t),{size:32})),...r])}}function Pp(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=Ep({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Dp(r):dp(r.map(({encoded:e})=>e))}}function Fp(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Ip=o((()=>{rf(),ep(),I(),vf(),up(),mp(),ff(),kd(),bp(),z(),Cp()})),Lp,Rp=o((()=>{bp(),Xf(),Lp=e=>hp(Yf(e),0,4)}));function zp(e){let{abi:t,args:n=[],name:r}=e,i=N(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Lp(e)===r:e.type===`event`?Zf(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?Bp(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Vp(e.inputs,o.inputs,n);if(t)throw new Yd({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Bp(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return sp(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`&&Bp(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=>Bp(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Vp(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 Vp(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`))&&sp(n[r],{strict:!1}))return o}}var Hp=o((()=>{rf(),Od(),up(),Qf(),Rp()}));function Up(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var Wp=o((()=>{}));function Gp(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=zp({abi:t,args:n,name:r});if(!e)throw new Kd(r,{docsPath:Kp});i=e}if(i.type!==`function`)throw new Kd(void 0,{docsPath:Kp});return{abi:[i],functionName:Lp(wd(i))}}var Kp,qp=o((()=>{rf(),Rp(),Dd(),Hp(),Kp=`/docs/contract/encodeFunctionData`}));function Jp(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Gp(e),i=n[0];return pp([r,(`inputs`in i&&i.inputs?wp(i.inputs,t??[]):void 0)??`0x`])}var Yp=o((()=>{mp(),Ip(),qp()})),Xp,Zp,Qp,$p=o((()=>{Xp={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.`},Zp={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Qp={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),em,tm,nm,rm=o((()=>{I(),em=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},tm=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},nm=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function im(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(am);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var am,om=o((()=>{rm(),am={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 nm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new tm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new em({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 em({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 sm(e,t={}){return t.size!==void 0&&xf(e,{size:t.size}),L(Df(e,t),t)}function cm(e,t={}){let n=e;if(t.size!==void 0&&(xf(n,{size:t.size}),n=yf(n)),n.length>1||n[0]>1)throw new mf(n);return!!n[0]}function lm(e,t={}){return t.size!==void 0&&xf(e,{size:t.size}),Cf(Df(e,t),t)}function um(e,t={}){let n=e;return t.size!==void 0&&(xf(n,{size:t.size}),n=yf(n,{dir:`right`})),new TextDecoder().decode(n)}var dm=o((()=>{vf(),bf(),wf(),z()}));function fm(e,t){let n=typeof t==`string`?Pf(t):t,r=im(n);if(P(n)===0&&e.length>0)throw new Ld;if(P(t)&&P(t)<32)throw new Id({data:typeof t==`string`?t:Df(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]=pm(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function pm(e,t,{staticPosition:n}){let r=Fp(t.type);if(r){let[i,a]=r;return hm(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return ym(e,t,{staticPosition:n});if(t.type===`address`)return mm(e);if(t.type===`bool`)return gm(e);if(t.type.startsWith(`bytes`))return _m(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return vm(e,t);if(t.type===`string`)return bm(e,{staticPosition:n});throw new ef(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function mm(e){return[rp(Df(vp(e.readBytes(32),-20))),32]}function hm(e,t,{length:n,staticPosition:r}){if(!n){let n=r+lm(e.readBytes(Cm)),i=n+Sm;e.setPosition(n);let a=lm(e.readBytes(Sm)),o=xm(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=pm(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(xm(t)){let i=r+lm(e.readBytes(Cm)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=pm(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]=pm(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function gm(e){return[cm(e.readBytes(32),{size:32}),32]}function _m(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=lm(e.readBytes(32));e.setPosition(n+t);let r=lm(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Df(i),32]}return[Df(e.readBytes(Number.parseInt(i,10),32)),32]}function vm(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?sm(i,{signed:n}):lm(i,{signed:n}),32]}function ym(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(xm(t)){let o=n+lm(e.readBytes(Cm));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=pm(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]=pm(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function bm(e,{staticPosition:t}){let n=t+lm(e.readBytes(32));e.setPosition(n);let r=lm(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=um(yf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function xm(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(xm);let n=Fp(e.type);return!!(n&&xm({...e,type:n[1]}))}var Sm,Cm,wm=o((()=>{rf(),op(),om(),kd(),bp(),bf(),dm(),zf(),z(),Ip(),Sm=32,Cm=32}));function Tm(e){let{abi:t,data:n,cause:r}=e,i=hp(n,0,4);if(i===`0x`)throw new Ld({cause:r});let a=[...t||[],Zp,Qp].find(e=>e.type===`error`&&i===Lp(wd(e)));if(!a)throw new Ud(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?fm(a.inputs,hp(n,4)):void 0,errorName:a.name}}var Em=o((()=>{$p(),rf(),bp(),Rp(),wm(),Dd()})),Dm,Om=o((()=>{Dm=(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 km({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`?Dm(t[n]):t[n]}`).join(`, `)})`}var Am=o((()=>{Om()})),jm,Mm,Nm=o((()=>{jm={gwei:9,wei:18},Mm={ether:-9,wei:9}}));function Pm(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 Fm=o((()=>{}));function Im(e,t=`wei`){return Pm(e,jm[t])}var Lm=o((()=>{Nm(),Fm()}));function Rm(e,t=`wei`){return Pm(e,Mm[t])}var zm=o((()=>{Nm(),Fm()}));function Bm(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Vm(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+=Bm(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Bm(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Hm,Um,Wm=o((()=>{I(),Hm=class extends F{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},Um=class extends F{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Gm(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 Km,qm,Jm,Ym,Xm,Zm,Qm=o((()=>{Lm(),zm(),I(),Km=class extends F{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},qm=class extends F{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Gm(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`})}},Jm=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}},Ym=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}},Xm=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`})}},Zm=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=Gm({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${Im(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Rm(o)} gwei`,maxFeePerGas:s!==void 0&&`${Rm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Rm(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}}})),$m,eh,th=o((()=>{$m=e=>e,eh=e=>e})),nh,rh,ih,ah,oh,sh,ch=o((()=>{Wp(),$p(),Em(),Dd(),Am(),Hp(),Lm(),zm(),rf(),I(),Wm(),Qm(),th(),nh=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=Gm({from:(t?Up(t):void 0)?.address,to:u,value:d!==void 0&&`${Im(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Rm(o)} gwei`,maxFeePerGas:s!==void 0&&`${Rm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Rm(c)} gwei`,nonce:l});f&&(p+=`\\n${Vm(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}},rh=class extends F{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=zp({abi:t,args:n,name:a}),c=s?km({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?wd(s,{includeName:!0}):void 0,u=Gm({address:r&&$m(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}},ih=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=Tm({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=Xp[e]}else{let e=n?wd(n,{includeName:!0}):void 0,t=n&&a?km({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 Ud&&(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}},ah=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})}},oh=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`})}},sh=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}}})),lh,uh,dh,fh=o((()=>{Om(),I(),th(),lh=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: ${eh(a)}`,e&&`Request body: ${Dm(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}},uh=class extends F{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${eh(n)}`,`Request body: ${Dm(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}},dh=class extends F{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${eh(t)}`,`Request body: ${Dm(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),ph,mh,hh,gh,_h,vh,yh,bh,xh,Sh,Ch,wh,Th,Eh,Dh,Oh,kh,Ah,jh,Mh,Nh,Ph,Fh,Ih,Lh,Rh,zh,Bh,Vh,Hh,Uh=o((()=>{I(),fh(),ph=-1,mh=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 uh?e.code:t??ph}},hh=class extends mh{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},gh=class e extends mh{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(gh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),_h=class e extends mh{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(_h,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),vh=class e extends mh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(vh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),yh=class e extends mh{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(yh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),bh=class e extends mh{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(bh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),xh=class e extends mh{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(xh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Sh=class e extends mh{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(Sh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Ch=class e extends mh{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(Ch,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),wh=class e extends mh{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(wh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Th=class e extends mh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(Th,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Eh=class e extends mh{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(Eh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Dh=class e extends mh{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Dh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Oh=class e extends hh{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(Oh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),kh=class e extends hh{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(kh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Ah=class e extends hh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Ah,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),jh=class e extends hh{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(jh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Mh=class e extends hh{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Mh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Nh=class e extends hh{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(Nh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Ph=class e extends hh{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(Ph,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Fh=class e extends hh{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(Fh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Ih=class e extends hh{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(Ih,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Lh=class e extends hh{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Lh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Rh=class e extends hh{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Rh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),zh=class e extends hh{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(zh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Bh=class e extends hh{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Bh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Vh=class e extends hh{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Vh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Hh=class extends mh{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));rf(),I(),ch(),fh(),Uh();function Wh(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof sh?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 rh(e instanceof Ld?new ah({functionName:a,cause:e}):[3,bh.code].includes(c)&&(l||u||d||f)||c===xh.code&&u===`execution reverted`&&l?new ih({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof uh?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}op(),Vf();function Gh(e){return rp(`0x${Bf(`0x${e.substring(4)}`).substring(26)}`)}Od(),kd(),wf(),z();async function Kh({hash:e,signature:t}){let n=N(e)?e:Tf(e),{secp256k1:r}=await Promise.resolve().then(()=>(Uc(),fc));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=qh(Number(a??i));return new r.Signature(L(e),L(n)).addRecoveryBit(o)}let e=N(t)?t:Tf(t);if(P(e)!==65)throw Error(`invalid signature length`);let n=qh(Cf(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function qh(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 Jh({hash:e,signature:t}){return Gh(await Kh({hash:e,signature:t}))}I(),om(),zf(),z();function Yh(e,t=`hex`){let n=Xh(e),r=im(new Uint8Array(n.length));return n.encode(r),t===`hex`?Df(r.bytes):r.bytes}function Xh(e){return Array.isArray(e)?Zh(e.map(e=>Xh(e))):Qh(e)}function Zh(e){let t=e.reduce((e,t)=>e+t.length,0),n=$h(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 Qh(e){let t=typeof e==`string`?Pf(e):e,n=$h(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 $h(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.`)}mp(),zf(),z(),Vf();function eg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Bf(pp([`0x05`,Yh([t?R(t):`0x`,i,n?R(n):`0x`])]));return r===`bytes`?Pf(a):a}async function tg(e){let{authorization:t,signature:n}=e;return Jh({hash:eg(t),signature:n??t})}Lm(),zm(),I(),Qm();var ng=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=Gm({from:t?.address,to:u,value:d!==void 0&&`${Im(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Rm(o)} gwei`,maxFeePerGas:s!==void 0&&`${Rm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Rm(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}},rg,ig,ag,og,sg,cg,lg,ug,dg,fg,pg,mg,hg=o((()=>{zm(),I(),rg=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(rg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(rg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),ig=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Rm(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(ig,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),ag=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Rm(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(ag,`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/}),og=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(og,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),sg=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(sg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),cg=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(cg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),lg=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(lg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),ug=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(ug,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),dg=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(dg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),fg=class extends F{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(fg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),pg=class extends F{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Rm(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Rm(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(pg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),mg=class extends F{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function gg(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof F?e.walk(e=>e?.code===rg.code):e;return r instanceof F?new rg({cause:e,message:r.details}):rg.nodeMessage.test(n)?new rg({cause:e,message:e.details}):ig.nodeMessage.test(n)?new ig({cause:e,maxFeePerGas:t?.maxFeePerGas}):ag.nodeMessage.test(n)?new ag({cause:e,maxFeePerGas:t?.maxFeePerGas}):og.nodeMessage.test(n)?new og({cause:e,nonce:t?.nonce}):sg.nodeMessage.test(n)?new sg({cause:e,nonce:t?.nonce}):cg.nodeMessage.test(n)?new cg({cause:e,nonce:t?.nonce}):lg.nodeMessage.test(n)?new lg({cause:e}):ug.nodeMessage.test(n)?new ug({cause:e,gas:t?.gas}):dg.nodeMessage.test(n)?new dg({cause:e,gas:t?.gas}):fg.nodeMessage.test(n)?new fg({cause:e}):pg.nodeMessage.test(n)?new pg({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new mg({cause:e})}var _g=o((()=>{I(),hg()}));hg(),_g();function vg(e,{docsPath:t,...n}){return new ng((()=>{let t=gg(e,n);return t instanceof mg?e:t})(),{docsPath:t,...n})}function yg(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 bg=o((()=>{}));function xg(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 Sg=o((()=>{}));function Cg(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=wg(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=>Df(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=Tg[e.type]),e.value!==void 0&&(n.value=R(e.value)),n}function wg(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 Tg,Eg,Dg=o((()=>{z(),Sg(),Tg={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Eg=xg(`transactionRequest`,Cg)}));function Og(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new sf({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new sf({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function kg(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=Og(r)),i!==void 0){if(o.state)throw new Um;o.stateDiff=Og(i)}return o}function Ag(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!sp(n,{strict:!1}))throw new $f({address:n});if(t[n])throw new Hm({address:n});t[n]=kg(r)}return t}var jg=o((()=>{ep(),cf(),Wm(),up(),z()})),Mg,Ng=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)),Mg=2n**256n-1n}));function Pg(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?Up(t):void 0;if(a&&!sp(a.address))throw new $f({address:a.address});if(i&&!sp(i))throw new $f({address:i});if(n&&n>Mg)throw new ig({maxFeePerGas:n});if(r&&n&&r>n)throw new pg({maxFeePerGas:n,maxPriorityFeePerGas:r})}var Fg=o((()=>{Wp(),Ng(),ep(),hg(),up()}));zm(),I();var Ig=class extends F{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},Lg=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},Rg=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Rm(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};I();var zg=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`})}};wf(),Sg();let Bg={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Vg(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Cf(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?Cf(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Bg[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=Ug(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 Hg=xg(`transaction`,Vg);function Ug(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 Wg(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:Vg(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 Gg(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 zg({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||Wg)(s,`getBlock`)}async function Kg(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}wf();async function qg(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,Gg,`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,Gg,`getBlock`)({}),M(e,Kg,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new Lg;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function Jg(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 Ig;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await M(e,Gg,`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 Lg;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await qg(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,Kg,`getGasPrice`)({}))}}wf(),z();async function Yg(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return Cf(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?R(r):n]},{dedupe:!!r}))}zf(),z();function Xg(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=>Pf(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Df(e))}zf(),z();function Zg(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=>Pf(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Pf(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=>Df(e))}Od(),zf(),z();function Qg(e,t){let n=t||`hex`,r=jr(N(e,{strict:!1})?jf(e):e);return n===`bytes`?r:Tf(r)}z();function $g(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Qg(t,`bytes`);return i.set([n],0),r===`bytes`?i:Df(i)}function e_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push($g({commitment:e,to:r,version:n}));return i}let t_=4096,n_=32*t_;n_*6-1-1*t_*6,I();var r_=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},i_=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},a_=class extends F{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},o_=class extends F{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};om(),kd(),zf(),z();function s_(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Pf(e.data):e.data,r=P(n);if(!r)throw new i_;if(r>761855)throw new r_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=im(new Uint8Array(n_)),t=0;for(;t<t_;){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=>Df(e.bytes))}function c_(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??s_({data:t,to:r}),a=e.commitments??Xg({blobs:i,kzg:n,to:r}),o=e.proofs??Zg({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}Qm();function l_(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 qm({transaction:e})}hg(),Qm(),_g();function u_(e,{docsPath:t,...n}){return new Zm((()=>{let t=gg(e,n);return t instanceof mg?e:t})(),{docsPath:t,...n})}wf();async function d_(e){return Cf(await e.request({method:`eth_chainId`},{dedupe:!0}))}Wp(),bg(),Dg(),Fg();async function f_(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=Up(n),r=a?a.id:await M(e,d_,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();Pg(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Cg)({...yg(y,{format:x}),account:n?Up(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||Vg)(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,Gg,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new Ig;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 u_(n,{...t,chain:e.chain})}}Wp(),np(),Fg();let p_=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],m_=new Map,h_=new tp(128);async function g_(e,t){let n=t;n.account??=e.account,n.parameters??=p_;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,d_,`getChainId`)({}),c):n.chainId)}let u=r&&Up(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||h_.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,f_,`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 h_.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`)})&&h_.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,Gg,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await M(e,Yg,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=Xg({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=e_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=c_({blobs:p,commitments:e,proofs:Zg({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=l_(n)}catch{let t=m_.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,m_.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 Jg(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new Rg({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new Lg;if(n.gasPrice===void 0){let{gasPrice:t}=await Jg(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,__,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),Pg(n),delete n.parameters,n}Wp(),I(),z(),bg(),Dg(),jg(),Fg();async function __(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?Up(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 tg({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 g_(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=Ag(b);Pg(t);let C=e.chain?.formatters?.transactionRequest?.format,te=(C||Cg)({...yg(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?[te,S??e.experimental_blockTag??`latest`,ee]:S?[te,S]:[te]}))}catch(n){throw vg(n,{...t,account:i,chain:e.chain})}}function v_(e,t){if(!sp(e,{strict:!1}))throw new $f({address:e});if(!sp(t,{strict:!1}))throw new $f({address:t});return e.toLowerCase()===t.toLowerCase()}var y_=o((()=>{ep(),up()}));function b_(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}:{}}}rf(),rm(),kd(),Qf(),wm(),Dd();let x_=`/docs/contract/decodeEventLog`;function S_(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Wd({docsPath:x_});let c=t.find(e=>e.type===`event`&&o===Zf(wd(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Gd(o,{docsPath:x_});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 Qd({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=C_({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=fm(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 Id||e instanceof tm?new Zd({abiItem:c,data:n,params:g,size:P(n)}):e}else if(a)throw new Zd({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function C_({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(fm([e],t)||[])[0]}y_(),zf(),Vf(),Qf();function w_(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:Zf(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?b_(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=S_({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=S_({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)||!T_({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function T_(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`?v_(t,n):e.type===`string`||e.type===`bytes`?Bf(jf(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 E_(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=zp({abi:t,args:n,name:r});if(!e)throw new Kd(r,{docsPath:D_});a=e}if(a.type!==`function`)throw new Kd(void 0,{docsPath:D_});if(!a.outputs)throw new qd(a.name,{docsPath:D_});let o=fm(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var D_,O_=o((()=>{rf(),wm(),Hp(),D_=`/docs/contract/decodeFunctionResult`})),k_,A_,j_,M_,N_,P_=o((()=>{k_=[{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`}],A_=[{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`}]}],j_=[{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`}],[...j_],[...j_],M_=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],N_=[{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`}]})),F_=o((()=>{})),I_,L_,R_,z_,B_=o((()=>{I_=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,L_=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,R_=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,z_=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),V_,H_,U_,W_,G_,K_=o((()=>{I(),V_=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`})}},H_=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`})}},U_=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`})}},W_=class extends F{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},G_=class extends F{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function q_(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 Pd({docsPath:J_});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Fd({docsPath:J_});return pp([r,wp(i.inputs,n)])}var J_,Y_=o((()=>{rf(),mp(),Ip(),J_=`/docs/contract/encodeDeployData`}));function X_({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new V_({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new V_({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Z_=o((()=>{K_()}));function Q_(e,{docsPath:t,...n}){return new nh((()=>{let t=gg(e,n);return t instanceof mg?e:t})(),{docsPath:t,...n})}var $_=o((()=>{ch(),hg(),_g()}));function ev(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var tv=o((()=>{}));function nv({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=()=>rv.delete(t),s=()=>c().map(({args:e})=>e),c=()=>rv.get(t)||[],l=e=>rv.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=ev();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 rv,iv=o((()=>{tv(),rv=new Map})),av,ov,sv,cv=o((()=>{Om(),I(),th(),av=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=>` ${eh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ov=class extends F{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${eh(t)}`,`Response: ${Dm(e)}`],name:`OffchainLookupResponseMalformedError`})}},sv=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 lv(e){let{abi:t,data:n}=e,r=hp(n,0,4),i=t.find(e=>e.type===`function`&&r===Lp(wd(e)));if(!i)throw new Jd(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?fm(i.inputs,hp(n,4)):void 0}}var uv=o((()=>{rf(),bp(),Rp(),wm(),Dd()}));function dv(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=zp({abi:t,args:r,name:n});if(!e)throw new Hd(n,{docsPath:fv});i=e}if(i.type!==`error`)throw new Hd(void 0,{docsPath:fv});let a=Lp(wd(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new Vd(i.name,{docsPath:fv});o=wp(i.inputs,r)}return pp([a,o])}var fv,pv=o((()=>{rf(),mp(),Rp(),Ip(),Dd(),Hp(),fv=`/docs/contract/encodeErrorResult`}));function mv(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=zp({abi:t,name:n});if(!e)throw new Kd(n,{docsPath:hv});i=e}if(i.type!==`function`)throw new Kd(void 0,{docsPath:hv});if(!i.outputs)throw new qd(i.name,{docsPath:hv});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new tf(r)})();return wp(i.outputs,a)}var hv,gv=o((()=>{rf(),Ip(),Hp(),hv=`/docs/contract/encodeFunctionResult`}));async function _v(e){let{data:t,ccipRequest:n}=e,{args:[r]}=lv({abi:A_,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await _v({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=vv(e)}})),mv({abi:A_,functionName:`query`,result:[i,a]})}function vv(e){return e.name===`HttpRequestError`&&e.status?dv({abi:A_,errorName:`HttpError`,args:[e.status,e.shortMessage]}):dv({abi:[Zp],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var yv=o((()=>{P_(),$p(),uv(),pv(),gv()})),bv=c({ccipRequest:()=>Sv,offchainLookup:()=>xv,offchainLookupAbiItem:()=>wv,offchainLookupSignature:()=>Cv});async function xv(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=Tm({data:r,abi:[wv]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:Sv;try{if(!v_(i,o))throw new sv({sender:o,to:i});let{data:r}=await Ev(e,{blockNumber:t,blockTag:n,data:dp([l,wp([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await _v({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new av({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function Sv({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 lh({body:s,details:i?.error?Dm(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!N(i)){r=new ov({result:i,url:a});continue}return i}catch(e){r=new lh({body:s,details:e.message,url:a})}}throw r}var Cv,wv,Tv=o((()=>{Mv(),cv(),fh(),Em(),Ip(),y_(),mp(),Od(),yv(),Om(),Cv=`0x556f1830`,wv={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function Ev(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?Up(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 te=u&&d,w=f&&p&&b&&d,ne=te||w,re=te?kv({code:u,data:d}):w?Av({data:d,factory:f,factoryData:p,to:b}):d;try{Pg(t);let n=(typeof a==`bigint`?R(a):void 0)||o,u=l?Ol(l):void 0,d=Ag(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Cg)({...yg(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&&Dv({request:p})&&!d&&!u)try{return await Ov(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof W_)&&!(e instanceof V_))throw e}let te=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),w=await e.request({method:`eth_call`,params:te});return w===`0x`?{data:void 0}:{data:w}}catch(n){let r=jv(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Tv(),bv));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 oh({factory:f}):Q_(n,{...t,account:C,chain:e.chain})}}function Dv({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 Ov(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 X_({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new W_})(),u=(typeof a==`bigint`?R(a):void 0)||o,{schedule:d}=nv({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=Jp({abi:k_,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:kv({code:z_,data:r})}:{to:l,data:r}},u]});return E_({abi:k_,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new sh({data:f});return f===`0x`?{data:void 0}:{data:f}}function kv(e){let{code:t,data:n}=e;return q_({abi:It([`constructor(bytes, bytes)`]),bytecode:I_,args:[t,n]})}function Av(e){let{data:t,factory:n,factoryData:r,to:i}=e;return q_({abi:It([`constructor(address, bytes, address, bytes)`]),bytecode:L_,args:[i,t,n,r]})}function jv(e){if(!(e instanceof F))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Mv=o((()=>{Bt(),kl(),Wp(),P_(),F_(),B_(),I(),K_(),ch(),O_(),Y_(),Yp(),Z_(),z(),$_(),bg(),Dg(),iv(),jg(),Fg()}));O_(),Yp(),Mv();async function Nv(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Jp({abi:n,args:i,functionName:a});try{let{data:t}=await M(e,Ev,`call`)({...o,data:s,to:r});return E_({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw Wh(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let Pv=new Map,Fv=new Map,Iv=0;function Lv(e,t,n){let r=++Iv,i=()=>Pv.get(e)||[],a=()=>{let t=i();Pv.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Fv.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(Pv.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`&&Fv.set(e,l),o}async function Rv(e){return new Promise(t=>setTimeout(t,e))}function zv(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Rv(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Rv(r),s())};s()})(),a}I();var Bv=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`})}},Vv=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};K_();function Hv({chain:e,currentChainId:t}){if(!e)throw new U_;if(t!==e.id)throw new H_({chain:e,currentChainId:t})}async function Uv(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}Wp(),I(),mp(),bg(),Dg(),np(),Fg();let Wv=new tp(128);async function Gv(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 Bv({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?Up(n):null;try{Pg(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await tg({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,d_,`getChainId`)({}),r&&Hv({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Cg)({...yg(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?dp([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Wv.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=>(Wv.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Wv.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await M(e,g_,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?dp([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...p_,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await M(e,Uv,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Vv({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Vv({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Vv?e:u_(e,{...t,account:y,chain:t.chain||void 0})}}Wp(),Yp();async function B(e,t){return B.internal(e,Gv,`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 Bv({docsPath:`/docs/contract/writeContract`});let u=a?Up(a):null,d=Jp({abi:i,args:s,functionName:c});try{return await M(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw Wh(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(B||={}),I();var Kv=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 qv(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 Rv(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()})}wf(),Sg();let Jv={\"0x0\":`reverted`,\"0x1\":`success`};function Yv(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=>b_(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Cf(e.transactionIndex):null,status:e.status?Jv[e.status]:null,type:e.type?Bg[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Xv=xg(`transactionReceipt`,Yv);Wp(),I(),Uh(),Yp(),mp(),wf(),z();let Zv=R(0,{size:32});async function Qv(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?Up(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?Jp({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?dp([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 Ph(new F(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new Bh(new F(e,{details:e}))}let t=[];for(let n of d){let i=Gv(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:dp([...n.map(e=>e.status===`fulfilled`?e.value:Zv),R(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw u_(n,{...t,account:l,chain:t.chain})}}bp(),bf(),wf();async function $v(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=yf(yp(t,-64,-32)),r=yp(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>Zv.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:Cf(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?Cf(i):void 0,receipts:a?.map(e=>({...e,blockNumber:L(e.blockNumber),gasUsed:L(e.gasUsed),status:Jv[e.status]}))??[],statusCode:l,status:c,version:o}}I(),tv(),Om();async function ey(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=Dm([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=ev(),p,m=Lv(l,{resolve:d,reject:f},t=>{let s=zv(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await qv(async()=>{let t=await M(e,$v,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Kv(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 ty({id:n}))},s):void 0,await u}var ty=class extends F{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let ny=256,ry;function iy(e=11){if(!ry||ny+e>256*2){ry=``,ny=0;for(let e=0;e<256;e++)ry+=(256+Math.random()*256|0).toString(16).substring(1)}return ry.substring(ny,ny+++e)}Wp();function ay(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?Up(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:iy(),...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 oy(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}Ng(),ep(),I(),K_(),hg(),up(),kd(),bp(),wf();function sy(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!sp(n))throw new $f({address:n});if(t<0)throw new G_({chainId:t})}ly(e)}function cy(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new i_;for(let e of t){let t=P(e),n=Cf(hp(e,0,1));if(t!==32)throw new a_({hash:e,size:t});if(n!==1)throw new o_({hash:e,version:n})}}ly(e)}function ly(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new G_({chainId:t});if(i&&!sp(i))throw new $f({address:i});if(r&&r>Mg)throw new ig({maxFeePerGas:r});if(n&&r&&n>r)throw new pg({maxFeePerGas:r,maxPriorityFeePerGas:n})}function uy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new G_({chainId:t});if(a&&!sp(a))throw new $f({address:a});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>Mg)throw new ig({maxFeePerGas:r})}function dy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!sp(a))throw new $f({address:a});if(t!==void 0&&t<=0)throw new G_({chainId:t});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>Mg)throw new ig({maxFeePerGas:r})}ep(),Qm(),up();function fy(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 Xm({storageKey:i[e]});if(!sp(r,{strict:!1}))throw new $f({address:r});t.push([r,i])}return t}Qm(),mp(),bf(),z();function py(e,t){let n=l_(e);return n===`eip1559`?gy(e,t):n===`eip2930`?_y(e,t):n===`eip4844`?hy(e,t):n===`eip7702`?my(e,t):vy(e,t)}function my(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;sy(e);let f=fy(u),p=by(n);return pp([`0x04`,Yh([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,...yy(e,t)])])}function hy(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;cy(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=>Df(e)),n=e.kzg,r=Xg({blobs:t,kzg:n});f===void 0&&(f=e_({commitments:r})),p===void 0&&(p=c_({blobs:t,commitments:r,proofs:Zg({blobs:t,commitments:r,kzg:n})}))}let m=fy(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??[],...yy(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 pp([`0x03`,Yh(p?[h,g,_,v]:h)])}function gy(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;ly(e);let d=fy(l);return pp([`0x02`,Yh([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,...yy(e,t)])])}function _y(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;uy(e);let u=fy(c);return pp([`0x01`,Yh([R(n),a?R(a):`0x`,l?R(l):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`,u,...yy(e,t)])])}function vy(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;dy(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 Km({v:t.v});return e})(),r=yf(t.r),i=yf(t.s);l=[...l,R(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,R(n),`0x`,`0x`]);return Yh(l)}function yy(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=yf(n.r),o=yf(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 by(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?Tf(e):`0x`,a,r?Tf(r):`0x`,...yy({},i)])}return t}op(),y_();async function xy({address:e,authorization:t,signature:n}){return v_(ip(e),await tg({authorization:t,signature:n}))}np();let Sy=new tp(8192);function Cy(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Sy.get(n))return Sy.get(n);let r=e().finally(()=>Sy.delete(n));return Sy.set(n,r),r}I(),fh(),Uh(),z(),Om();function wy(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 Th(Error(`method not supported`),{method:l});return Cy(()=>qv(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case gh.code:throw new gh(t);case _h.code:throw new _h(t);case vh.code:throw new vh(t,{method:n.method});case yh.code:throw new yh(t);case bh.code:throw new bh(t);case xh.code:throw new xh(t);case Sh.code:throw new Sh(t);case Ch.code:throw new Ch(t);case wh.code:throw new wh(t);case Th.code:throw new Th(t,{method:n.method});case Eh.code:throw new Eh(t);case Dh.code:throw new Dh(t);case Oh.code:throw new Oh(t);case kh.code:throw new kh(t);case Ah.code:throw new Ah(t);case jh.code:throw new jh(t);case Mh.code:throw new Mh(t);case Nh.code:throw new Nh(t);case Ph.code:throw new Ph(t);case Fh.code:throw new Fh(t);case Ih.code:throw new Ih(t);case Lh.code:throw new Lh(t);case Rh.code:throw new Rh(t);case zh.code:throw new zh(t);case Bh.code:throw new Bh(t);case 5e3:throw new Oh(t);case Vh.code:throw new Vh(t);default:throw e instanceof F?e:new Hh(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof lh){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})=>Ty(e)}),{enabled:i,id:i?Of(`${c}.${Dm(n)}`):void 0})}}function Ty(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===Eh.code||e.code===bh.code:e instanceof lh&&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 Ey(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 Dy(){return{}}I(),vf(),om(),zf(),z();function Oy(e,t=`hex`){return ky(im((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new gf(e);return Pf(e)}return e})(),{recursiveReadLimit:1/0}),t)}function ky(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Df(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Ay(e,n,128),i=e.readBytes(r);return t===`hex`?Df(i):i}return jy(e,Ay(e,n,192),t)}function Ay(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 jy(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(ky(e,n));return i}Od(),kd();function My(e){return N(e)&&P(e)===32}function Ny(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 Py(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Fy=Py();fh(),Om();function Iy(e,t={}){let{url:n,headers:r}=Ly(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 Ny(async({signal:e})=>{let t={...l,body:Dm(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Fy.take(),...e})):{jsonrpc:`2.0`,id:i.id??Fy.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 dh({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 lh({body:i,details:Dm(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof lh||e instanceof dh?e:new lh({body:i,cause:e,url:n})}}}}function Ly(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}}}mp(),kd(),z();function Ry(e){let t=typeof e==`string`?Of(e):typeof e.raw==`string`?e.raw:Df(e.raw);return dp([Of(`\u0019Ethereum Signed Message:\n${P(t)}`),t])}Vf();function zy(e,t){return Bf(Ry(e),t)}Om(),I();var By=class extends F{constructor({domain:e}){super(`Invalid domain \"${Dm(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Vy=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`.\"]})}},Hy=class extends F{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};rf(),ep(),up(),kd(),z(),Cp(),Om();function Uy(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 Dm({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Wy(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(Sp);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`&&!sp(o))throw new $f({address:o});let c=r.match(xp);if(c){let[e,t]=c;if(t&&P(o)!==Number.parseInt(t,10))throw new Xd({expectedSize:Number.parseInt(t,10),givenSize:P(o)})}let l=i[r];l&&(Ky(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new By({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Vy({primaryType:r,types:i})}function Gy({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 Ky(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Hy({type:e})}Ip(),mp(),z(),Vf();function qy(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Gy({domain:t}),...e.types};Wy({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Jy({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Yy({data:n,primaryType:r,types:i})),Bf(dp(a))}function Jy({domain:e,types:t}){return Yy({data:e,primaryType:`EIP712Domain`,types:t})}function Yy({data:e,primaryType:t,types:n}){return Bf(Xy({data:e,primaryType:t,types:n}))}function Xy({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Zy({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=eb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return wp(r,i)}function Zy({primaryType:e,types:t}){return Bf(Tf(Qy({primaryType:e,types:t})))}function Qy({primaryType:e,types:t}){let n=``,r=$y({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 $y({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])$y({primaryType:e.type,types:t},n);return n}function eb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Bf(Xy({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Bf(r)];if(n===`string`)return[{type:`bytes32`},Bf(Tf(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>eb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Bf(wp(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}Kt(),A();let tb=Ao(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function nb(e){if(typeof e==`string`){if(k(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new ab(e)}else Wc(e.authorization)}function rb(e){nb(e);let t=Vi(k(e,-64,-32)),n=k(e,-t-64,-64),r=k(e,0,-t-64),[i,a,o]=Do(tb,n);return{authorization:ll({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 ib(e){try{return nb(e),!0}catch{return!1}}var ab=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`})}};Qm(),bp(),wf();function ob(e){let t=yp(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`&&Cf(t)>=192)return`legacy`;throw new Jm({serializedType:t})}ep(),Qm(),up(),Od(),ff(),bf(),wf();function sb(e){let t=ob(e);return t===`eip1559`?ub(e):t===`eip2930`?db(e):t===`eip4844`?lb(e):t===`eip7702`?cb(e):fb(e)}function cb(e){let t=pb(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Ym({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:Cf(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:Cf(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=mb(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=hb(d)),sy(h),{...t.length===13?gb(t):void 0,...h}}function lb(e){let t=pb(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 Ym({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:Cf(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:Cf(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=mb(p)),y&&b&&x&&(S.sidecars=c_({blobs:y,commitments:b,proofs:x})),cy(S),{...r.length===14?gb(r):void 0,...S}}function ub(e){let t=pb(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Ym({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:Cf(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:Cf(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=mb(u)),ly(m),{...t.length===12?gb(t):void 0,...m}}function db(e){let t=pb(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Ym({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:Cf(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:Cf(r)),N(s)&&s!==`0x`&&(p.value=L(s)),N(i)&&i!==`0x`&&(p.gasPrice=L(i)),l.length!==0&&l!==`0x`&&(p.accessList=mb(l)),uy(p),{...t.length===11?gb(t):void 0,...p}}function fb(e){let t=Oy(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Ym({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:Cf(n)),N(o)&&o!==`0x`&&(d.value=L(o)),N(r)&&r!==`0x`&&(d.gasPrice=L(r)),dy(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 Km({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function pb(e){return Oy(`0x${e.slice(4)}`,`hex`)}function mb(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!sp(r,{strict:!1}))throw new $f({address:r});t.push({address:r,storageKeys:i.map(e=>My(e)?e:yf(e))})}return t}function hb(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:Cf(r),nonce:a===`0x`?0:Cf(a),...gb([o,s,c])})}return t}function gb(e){let t=e.slice(-3),n=t[0]===`0x`||L(t[0])===0n?27n:28n;return{r:uf(t[1],{size:32}),s:uf(t[2],{size:32}),v:n,yParity:n===27n?0:1}}I();var _b=class extends F{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function vb(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new _b({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}`)}P_(),B_(),rf(),I(),ch(),O_(),Yp(),Z_();async function yb(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 X_({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=Jp({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=Wh(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,Nv,`readContract`)({...f===null?{code:z_}:{address:f},abi:k_,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 Ld;if(!a)throw new sh({data:r});let e=E_({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=Wh(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 _}Kt(),A();function bb(e){if(k(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new Cb(e)}function xb(e){let{data:t,signature:n,to:r}=e;return E(Oo(Ao(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function Sb(e){try{return bb(e),!0}catch{return!1}}var Cb=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(),wf(),zf();function wb({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 Oc.Signature(L(e),L(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Pf(o)}P_(),B_(),ch(),Y_(),Yp(),op(),y_(),mp(),Od(),wf(),z(),Mv();async function Tb(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?wb(e):Df(e)})();try{if(s===`eoa`)try{if(v_(ip(n),await Jh({hash:i,signature:c})))return!0}catch{}return ib(c)?await Eb(e,{...t,multicallAddress:o,signature:c}):await Db(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(v_(ip(n),await Jh({hash:i,signature:c})))return!0}catch{}if(e instanceof kb)return!1;throw e}}async function Eb(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=rb(t.signature);if(await oy(e,{address:n,blockNumber:r,blockTag:i})===pp([`0xef0100`,s.address]))return await Ob(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 xy({address:n,authorization:d}))throw new kb;let f=await M(e,Nv,`readContract`)({...o?{address:o}:{code:z_},authorizationList:[d],abi:k_,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Jp({abi:M_,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new kb}async function Db(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||Sb(o)?o:xb({data:i,signature:o,to:r}))(),u=s?{to:s,data:Jp({abi:N_,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:q_({abi:N_,args:[n,a,l],bytecode:R_}),...c},{data:d}=await M(e,Ev,`call`)(u).catch(e=>{throw e instanceof nh?new kb:e});if(Sf(d??`0x0`))return!0;throw new kb}async function Ob(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await M(e,Nv,`readContract`)({address:n,abi:M_,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof rh?new kb:e})).startsWith(`0x1626ba7e`))return!0;throw new kb}var kb=class extends Error{};async function Ab(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await M(e,Qv,`sendCalls`)(t);return await M(e,ey,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}Wp(),z(),Dg(),Fg();async function jb(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Bv({docsPath:`/docs/actions/wallet/signTransaction`});let a=Up(n);Pg({account:a,...t});let o=await M(e,d_,`getChainId`)({});r!==null&&Hv({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Cg;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})}Wp();async function Mb(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Bv({docsPath:`/docs/actions/wallet/signTypedData`});let o=Up(n),s={EIP712Domain:Gy({domain:r}),...t.types};if(Wy({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Uy({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function Nb({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=iy();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:wy(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Pb(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>Nb({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}I();var Fb=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`})}};fh(),iv();function Ib(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 Fb;let b=Iy(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return Nb({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=nv({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 uh({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Object.freeze({status:`aborted`});function V(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 Lb=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Rb=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};let zb={};function Bb(e){return e&&Object.assign(zb,e),zb}function Vb(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 Hb(e,t){return typeof t==`bigint`?t.toString():t}function Ub(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Wb(e){return e==null}function Gb(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Kb=Symbol(`evaluating`);function H(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Kb)return r===void 0&&(r=Kb,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let qb=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Jb(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Yb(e){if(Jb(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Jb(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Xb=new Set([`string`,`number`,`symbol`]),Zb=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Qb(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function $b(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function ex(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 tx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function nx(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 rx(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function ix(e){return typeof e==`string`?e:e?.message}function ax(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=ix(e.inst?._zod.def?.error?.(e))??ix(t?.error?.(e))??ix(n.customError?.(e))??ix(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function ox(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function sx(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let cx=(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,Hb,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},lx=V(`$ZodError`,cx),ux=V(`$ZodError`,cx,{Parent:Error}),dx=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 Lb;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>ax(e,a,Bb())));throw qb(t,i?.callee),t}return o.value},fx=dx(ux),px=(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=>ax(e,a,Bb())));throw qb(t,i?.callee),t}return o.value})(ux),mx=(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 Lb;return a.issues.length?{success:!1,error:new(e??lx)(a.issues.map(e=>ax(e,i,Bb())))}:{success:!0,data:a.value}})(ux),hx=(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=>ax(e,i,Bb())))}:{success:!0,data:a.value}})(ux),gx=(e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return dx(e)(t,n,i)})(ux),_x=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},vx=/^-?\\d+n?$/,yx=/^-?\\d+(?:\\.\\d+)?$/,bx=/^(?:true|false)$/i,xx=V(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Sx=V(`$ZodCheckMaxLength`,(e,t)=>{var n;xx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Wb(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=ox(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Cx=V(`$ZodCheckMinLength`,(e,t)=>{var n;xx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Wb(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=ox(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),wx=V(`$ZodCheckStringFormat`,(e,t)=>{var n,r;xx.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=()=>{})}),Tx=V(`$ZodCheckRegex`,(e,t)=>{wx.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})}}),Ex={major:4,minor:3,patch:6},U=V(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ex;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=nx(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 Lb;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=nx(e,t))});else{if(e.issues.length===t)continue;r||=nx(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(nx(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Lb;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 Lb;return o.then(e=>t(e,r,a))}return t(o,r,a)}}H(e,`~standard`,()=>({validate:t=>{try{let n=mx(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return hx(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Dx=V(`$ZodString`,(e,t)=>{U.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??_x(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}}),Ox=V(`$ZodNumber`,(e,t)=>{U.init(e,t),e._zod.pattern=e._zod.bag.pattern??yx,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}}),kx=V(`$ZodBoolean`,(e,t)=>{U.init(e,t),e._zod.pattern=bx,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}}),Ax=V(`$ZodBigInt`,(e,t)=>{U.init(e,t),e._zod.pattern=vx,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}}),jx=V(`$ZodAny`,(e,t)=>{U.init(e,t),e._zod.parse=e=>e}),Mx=V(`$ZodUnknown`,(e,t)=>{U.init(e,t),e._zod.parse=e=>e}),Nx=V(`$ZodVoid`,(e,t)=>{U.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 Px(e,t,n){e.issues.length&&t.issues.push(...rx(n,e.issues)),t.value[n]=e.value}let Fx=V(`$ZodArray`,(e,t)=>{U.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=>Px(t,n,e))):Px(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Ix(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...rx(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function Lx(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=tx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Rx(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=>Ix(e,n,i,t,u))):Ix(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 zx=V(`$ZodObject`,(e,t)=>{if(U.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=Ub(()=>Lx(t));H(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=Jb,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=>Ix(n,t,e,s,r))):Ix(i,t,e,s,r)}return i?Rx(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function Bx(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=>!nx(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=>ax(e,r,Bb())))}),t)}let Vx=V(`$ZodUnion`,(e,t)=>{U.init(e,t),H(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),H(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),H(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),H(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=>Gb(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=>Bx(t,i,e,a)):Bx(s,i,e,a)}}),Hx=V(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Vx.init(e,t);let n=e._zod.parse;H(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=Ub(()=>{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(!Jb(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)}}),Ux=V(`$ZodTuple`,(e,t)=>{U.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=[...n].reverse().findIndex(e=>e._zod.optin!==`optional`),c=s===-1?0:n.length-s;if(!t.rest){let t=a.length>n.length,i=a.length<c-1;if(t||i)return r.issues.push({...t?{code:`too_big`,maximum:n.length,inclusive:!0}:{code:`too_small`,minimum:n.length},input:a,inst:e,origin:`array`}),r}let l=-1;for(let e of n){if(l++,l>=a.length&&l>=c)continue;let t=e._zod.run({value:a[l],issues:[]},i);t instanceof Promise?o.push(t.then(e=>Wx(e,r,l))):Wx(t,r,l)}if(t.rest){let e=a.slice(n.length);for(let n of e){l++;let e=t.rest._zod.run({value:n,issues:[]},i);e instanceof Promise?o.push(e.then(e=>Wx(e,r,l))):Wx(e,r,l)}}return o.length?Promise.all(o).then(()=>r):r}});function Wx(e,t,n){e.issues.length&&t.issues.push(...rx(n,e.issues)),t.value[n]=e.value}let Gx=V(`$ZodRecord`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Yb(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(...rx(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...rx(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`&&yx.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=>ax(e,r,Bb())),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}}),Kx=V(`$ZodEnum`,(e,t)=>{U.init(e,t);let n=Vb(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Xb.has(typeof e)).map(e=>typeof e==`string`?Qb(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}}),qx=V(`$ZodLiteral`,(e,t)=>{if(U.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`?Qb(e):e?Qb(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}}),Jx=V(`$ZodTransform`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Rb(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 Lb;return n.value=i,n}});function Yx(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let Xx=V(`$ZodOptional`,(e,t)=>{U.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,H(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),H(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Gb(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=>Yx(t,e.value)):Yx(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Zx=V(`$ZodNullable`,(e,t)=>{U.init(e,t),H(e._zod,`optin`,()=>t.innerType._zod.optin),H(e._zod,`optout`,()=>t.innerType._zod.optout),H(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Gb(e.source)}|null)$`):void 0}),H(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)}),Qx=V(`$ZodPipe`,(e,t)=>{U.init(e,t),H(e._zod,`values`,()=>t.in._zod.values),H(e._zod,`optin`,()=>t.in._zod.optin),H(e._zod,`optout`,()=>t.out._zod.optout),H(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=>$x(e,t.in,n)):$x(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>$x(e,t.out,n)):$x(r,t.out,n)}});function $x(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let eS=V(`$ZodCodec`,(e,t)=>{U.init(e,t),H(e._zod,`values`,()=>t.in._zod.values),H(e._zod,`optin`,()=>t.in._zod.optin),H(e._zod,`optout`,()=>t.out._zod.optout),H(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=>tS(e,t,n)):tS(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>tS(e,t,n)):tS(r,t,n)}}});function tS(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=>nS(e,r,t.out,n)):nS(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>nS(e,r,t.in,n)):nS(e,r,t.in,n)}}function nS(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let rS=V(`$ZodReadonly`,(e,t)=>{U.init(e,t),H(e._zod,`propValues`,()=>t.innerType._zod.propValues),H(e._zod,`values`,()=>t.innerType._zod.values),H(e._zod,`optin`,()=>t.innerType?._zod?.optin),H(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(iS):iS(r)}});function iS(e){return e.value=Object.freeze(e.value),e}let aS=V(`$ZodTemplateLiteral`,(e,t)=>{U.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||Zb.has(typeof e))n.push(Qb(`${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)}),oS=V(`$ZodCustom`,(e,t)=>{xx.init(e,t),U.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=>sS(t,n,r,e));sS(i,n,r,e)}});function sS(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(sx(e))}}var cS,lS=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function uS(){return new lS}(cS=globalThis).__zod_globalRegistry??(cS.__zod_globalRegistry=uS()),globalThis.__zod_globalRegistry;function dS(e,t){return new e({type:`string`,...ex(t)})}function fS(e,t){return new e({type:`number`,checks:[],...ex(t)})}function pS(e,t){return new e({type:`boolean`,...ex(t)})}function mS(e,t){return new e({type:`bigint`,...ex(t)})}function hS(e){return new e({type:`any`})}function gS(e){return new e({type:`unknown`})}function _S(e,t){return new e({type:`void`,...ex(t)})}function vS(e,t){return new Sx({check:`max_length`,...ex(t),maximum:e})}function yS(e,t){return new Cx({check:`min_length`,...ex(t),minimum:e})}function bS(e,t){return new Tx({check:`string_format`,format:`regex`,...ex(t),pattern:e})}function xS(e,t,n){let r=ex(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function SS(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...ex(n)})}let CS=V(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);U.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>fx(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>mx(e,t,n),e.parseAsync=async(t,n)=>px(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>hx(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)=>$b(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),wS=V(`ZodMiniString`,(e,t)=>{Dx.init(e,t),CS.init(e,t)});function W(e){return dS(wS,e)}let TS=V(`ZodMiniNumber`,(e,t)=>{Ox.init(e,t),CS.init(e,t)});function ES(e){return fS(TS,e)}let DS=V(`ZodMiniBoolean`,(e,t)=>{kx.init(e,t),CS.init(e,t)});function OS(e){return pS(DS,e)}let kS=V(`ZodMiniBigInt`,(e,t)=>{Ax.init(e,t),CS.init(e,t)});function AS(e){return mS(kS,e)}let jS=V(`ZodMiniAny`,(e,t)=>{jx.init(e,t),CS.init(e,t)});function MS(){return hS(jS)}let NS=V(`ZodMiniUnknown`,(e,t)=>{Mx.init(e,t),CS.init(e,t)});function PS(){return gS(NS)}let FS=V(`ZodMiniVoid`,(e,t)=>{Nx.init(e,t),CS.init(e,t)});function IS(e){return _S(FS,e)}let LS=V(`ZodMiniArray`,(e,t)=>{Fx.init(e,t),CS.init(e,t)});function RS(e,t){return new LS({type:`array`,element:e,...ex(t)})}let zS=V(`ZodMiniObject`,(e,t)=>{zx.init(e,t),CS.init(e,t),H(e,`shape`,()=>t.shape)});function G(e,t){return new zS({type:`object`,shape:e??{},...ex(t)})}let BS=V(`ZodMiniUnion`,(e,t)=>{Vx.init(e,t),CS.init(e,t)});function VS(e,t){return new BS({type:`union`,options:e,...ex(t)})}let HS=V(`ZodMiniDiscriminatedUnion`,(e,t)=>{Hx.init(e,t),CS.init(e,t)});function US(e,t,n){return new HS({type:`union`,options:t,discriminator:e,...ex(n)})}let WS=V(`ZodMiniTuple`,(e,t)=>{Ux.init(e,t),CS.init(e,t)});function GS(e,t,n){let r=t instanceof U;return new WS({type:`tuple`,items:e,rest:r?t:null,...ex(r?n:t)})}let KS=V(`ZodMiniRecord`,(e,t)=>{Gx.init(e,t),CS.init(e,t)});function qS(e,t,n){return new KS({type:`record`,keyType:e,valueType:t,...ex(n)})}let JS=V(`ZodMiniEnum`,(e,t)=>{Kx.init(e,t),CS.init(e,t),e.options=Object.values(t.entries)});function YS(e,t){return new JS({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...ex(t)})}let XS=V(`ZodMiniLiteral`,(e,t)=>{qx.init(e,t),CS.init(e,t)});function K(e,t){return new XS({type:`literal`,values:Array.isArray(e)?e:[e],...ex(t)})}let ZS=V(`ZodMiniTransform`,(e,t)=>{Jx.init(e,t),CS.init(e,t)});function QS(e){return new ZS({type:`transform`,transform:e})}let $S=V(`ZodMiniOptional`,(e,t)=>{Xx.init(e,t),CS.init(e,t)});function q(e){return new $S({type:`optional`,innerType:e})}let eC=V(`ZodMiniNullable`,(e,t)=>{Zx.init(e,t),CS.init(e,t)});function tC(e){return new eC({type:`nullable`,innerType:e})}function nC(e){return q(tC(e))}let rC=V(`ZodMiniPipe`,(e,t)=>{Qx.init(e,t),CS.init(e,t)});function iC(e,t){return new rC({type:`pipe`,in:e,out:t})}let aC=V(`ZodMiniCodec`,(e,t)=>{rC.init(e,t),eS.init(e,t)});function oC(e,t,n){return new aC({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let sC=V(`ZodMiniReadonly`,(e,t)=>{rS.init(e,t),CS.init(e,t)});function J(e){return new sC({type:`readonly`,innerType:e})}let cC=V(`ZodMiniTemplateLiteral`,(e,t)=>{aS.init(e,t),CS.init(e,t)});function lC(e,t){return new cC({type:`template_literal`,parts:e,...ex(t)})}let uC=V(`ZodMiniCustom`,(e,t)=>{oS.init(e,t),CS.init(e,t)});function dC(e,t){return xS(uC,e??(()=>!0),t)}function fC(e,t={}){return SS(uC,e,t)}function pC(e){return e}function mC(e){return e}let Y=()=>lC([`0x`,W()],`Expected address`),hC=()=>oC(VS([X(),AS()]),AS(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:zi(e),encode:e=>O(e)}),X=()=>lC([`0x`,W()],`Expected hex value`),gC=()=>oC(VS([X(),ES()]),ES(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Vi(e),encode:e=>O(e)}),_C=G({address:Y(),blockHash:X(),blockNumber:hC(),data:X(),logIndex:gC(),removed:OS(),topics:J(RS(X())),transactionHash:X(),transactionIndex:gC()}),vC=G({blobGasPrice:q(hC()),blobGasUsed:q(hC()),blockHash:X(),blockNumber:hC(),contractAddress:tC(Y()),cumulativeGasUsed:hC(),effectiveGasPrice:hC(),feePayer:q(Y()),feeToken:q(Y()),from:Y(),gasUsed:hC(),logs:RS(_C),logsBloom:X(),root:q(X()),status:oC(X(),YS([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:tC(Y()),transactionHash:X(),transactionIndex:gC(),type:X()}),yC=dC(),bC=VS([K(`secp256k1`),K(`p256`),K(`webAuthn`)]),xC=G({address:Y(),chainId:hC(),expiry:nC(gC()),keyId:Y(),keyType:bC,limits:q(J(RS(G({token:Y(),limit:hC()})))),signature:yC}),SC=G({data:q(X()),to:q(Y()),value:q(hC())}),CC=G({accessList:q(RS(G({address:Y(),storageKeys:RS(X())}))),calls:q(J(RS(SC))),chainId:q(gC()),data:q(X()),feePayer:q(VS([OS(),W()])),feeToken:q(Y()),from:q(Y()),gas:q(hC()),keyAuthorization:q(xC),maxFeePerGas:q(hC()),maxPriorityFeePerGas:q(hC()),nonce:q(gC()),nonceKey:q(hC()),to:q(Y()),validAfter:q(gC()),validBefore:q(gC()),value:q(hC())});var wC;(function(e){e.schema=pC({method:K(`eth_accounts`),params:void 0,returns:J(RS(Y()))})})(wC||={});var TC;(function(e){e.schema=pC({method:K(`eth_chainId`),params:void 0,returns:X()})})(TC||={});var EC;(function(e){e.schema=pC({method:K(`eth_requestAccounts`),params:void 0,returns:J(RS(Y()))})})(EC||={});var DC;(function(e){e.schema=pC({method:K(`eth_sendTransaction`),params:J(GS([CC])),returns:X()})})(DC||={});var OC;(function(e){e.schema=pC({method:K(`eth_fillTransaction`),params:J(GS([CC])),returns:MS()})})(OC||={});var kC;(function(e){e.schema=pC({method:K(`eth_signTransaction`),params:J(GS([CC])),returns:X()})})(kC||={});var AC;(function(e){e.schema=pC({method:K(`eth_sendTransactionSync`),params:J(GS([CC])),returns:vC})})(AC||={});var jC;(function(e){e.schema=pC({method:K(`eth_signTypedData_v4`),params:J(GS([Y(),W()])),returns:X()})})(jC||={});var MC;(function(e){e.schema=pC({method:K(`personal_sign`),params:J(GS([X(),Y()])),returns:X()})})(MC||={});let NC=q(G({feePayer:q(VS([OS(),W()])),sync:q(OS())}));var PC;(function(e){e.schema=pC({method:K(`wallet_sendCalls`),params:q(J(GS([G({atomicRequired:q(OS()),calls:J(RS(SC)),capabilities:NC,chainId:q(gC()),from:q(Y()),version:q(W())})]))),returns:G({atomic:q(OS()),capabilities:NC,chainId:q(gC()),id:W(),receipts:q(RS(vC)),status:q(ES()),version:q(W())})})})(PC||={});var FC;(function(e){e.schema=pC({method:K(`wallet_getBalances`),params:q(J(GS([G({account:q(Y()),chainId:q(gC()),tokens:q(J(RS(Y())))})]))),returns:J(RS(G({address:Y(),balance:hC(),decimals:ES(),display:W(),name:W(),symbol:W()})))})})(FC||={});var IC;(function(e){e.schema=pC({method:K(`wallet_getCapabilities`),params:q(J(VS([GS([Y()]),GS([Y(),J(RS(X()))])]))),returns:qS(X(),G({accessKeys:q(G({status:VS([K(`supported`),K(`unsupported`)])})),atomic:G({status:VS([K(`supported`),K(`ready`),K(`unsupported`)])}),feePayer:q(G({status:VS([K(`supported`),K(`unsupported`)])}))}))})})(IC||={});var LC;(function(e){e.parameters=G({address:q(Y()),expiry:ES(),keyType:q(bC),limits:q(J(RS(G({token:Y(),limit:hC()})))),publicKey:q(X())});let t=G({keyAuthorization:xC,rootAddress:Y()});e.schema=pC({method:K(`wallet_authorizeAccessKey`),params:J(GS([e.parameters])),returns:t})})(LC||={});var RC;(function(e){e.parameters=G({address:q(Y()),expiry:ES(),keyType:q(bC),limits:J(RS(G({token:Y(),limit:hC()}))),publicKey:q(X())})})(RC||={});var zC;(function(e){e.schema=pC({method:K(`wallet_revokeAccessKey`),params:J(GS([G({address:Y(),accessKeyAddress:Y()})])),returns:void 0})})(zC||={});var BC;(function(e){e.authorizeAccessKey=q(LC.parameters),e.capabilities={request:q(VS([G({digest:q(X()),authorizeAccessKey:e.authorizeAccessKey,method:K(`register`),name:q(W()),userId:q(W())}),G({digest:q(X()),credentialId:q(W()),authorizeAccessKey:e.authorizeAccessKey,method:q(K(`login`)),selectAccount:q(OS())})])),result:G({keyAuthorization:q(xC),signature:q(X())})},e.schema=pC({method:K(`wallet_connect`),params:q(J(GS([G({capabilities:e.capabilities.request,chainId:q(gC()),version:q(W())})]))),returns:G({accounts:J(RS(G({address:Y(),capabilities:e.capabilities.result})))})})})(BC||={});var VC;(function(e){let t=q(RC.parameters);e.parameters=G({capabilities:q(VS([G({digest:q(X()),authorizeAccessKey:t,method:K(`register`),name:q(W()),userId:q(W())}),G({digest:q(X()),credentialId:q(W()),authorizeAccessKey:t,method:q(K(`login`)),selectAccount:q(OS())})])),chainId:q(gC()),version:q(W())})})(VC||={});var HC;(function(e){e.schema=pC({method:K(`wallet_disconnect`),params:void 0,returns:void 0})})(HC||={});var UC;(function(e){e.schema=pC({method:K(`wallet_getCallsStatus`),params:q(J(GS([W()]))),returns:G({atomic:OS(),chainId:gC(),id:W(),receipts:q(RS(vC)),status:ES(),version:W()})})})(UC||={});var WC;(function(e){e.schema=pC({method:K(`wallet_switchEthereumChain`),params:J(GS([G({chainId:gC()})])),returns:void 0})})(WC||={});var GC;(function(e){e.schema=pC({method:K(`wallet_deposit`),params:J(GS([G({address:q(Y()),chainId:q(gC()),token:q(Y()),value:q(W())})])),returns:IS()})})(GC||={}),RC.parameters,VC.parameters;let KC=mC([wC.schema,TC.schema,OC.schema,EC.schema,DC.schema,AC.schema,kC.schema,jC.schema,MC.schema,LC.schema,BC.schema,GC.schema,HC.schema,FC.schema,UC.schema,IC.schema,zC.schema,PC.schema,WC.schema]),qC=nd();function JC(e){return e.params?G({method:e.method,params:e.params}):G({method:e.method})}let YC=US(`method`,KC.map(JC));function XC(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)}function ZC(e){let t=Sl(e);return JSON.parse(t)}function QC(e){return bl(Ti(e),{pad:!1,url:!0})}function $C(){return W().check(bS(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function ew(){return W().check(bS(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function tw(){return W().check(bS(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function nw(){return W().check(bS(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let rw=G({description:q(W()),digest:q(W().check(bS(/^sha-256=/,`Invalid digest format`))),expires:q(ew()),id:W(),intent:W(),method:W(),opaque:q(qS(W(),W())),realm:W(),request:qS(W(),PS())});function iw(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=l?_w({...e,expires:u,...i&&{opaque:i}},{secretKey:l}):e.id;return rw.parse({id:d,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i&&{opaque:i}})}function aw(e,t){let n=ow(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=sw(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 iw({...a,request:ZC(r),...i&&{meta:ZC(i)}},t)}function ow(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(!uw(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 sw(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]=cw(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function cw(e,t){if(e[t]===`\"`)return lw(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function lw(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 uw(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 dw(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return aw(n,t)}function fw(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return dw(e.headers,t)}function pw(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return mw(e.headers,t)}function mw(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return hw(n,t)}function hw(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 aw(e.slice(r,a).replace(/,\\s*$/,``),t)})}function gw(e){return[e.realm,e.method,e.intent,QC(e.request),e.expires??``,e.digest??``,e.opaque?QC(e.opaque):``].join(`|`)}function _w(e,t){let n=gw(e);return vl(Ea(ia(t.secretKey),ia(n),{as:`Bytes`}),{url:!0,pad:!1})}var vw=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},yw=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function bw(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new vw;try{let e=Sl(t[1]),n=JSON.parse(e);return{challenge:rw.parse({...n.challenge,request:ZC(n.challenge.request)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new yw}}function xw(e){let t={challenge:{...e.challenge,request:QC(e.challenge.request)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${bl(JSON.stringify(t),{pad:!1,url:!0})}`}function Sw(e){return e}function Cw(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}Kt(),A(),ki();let ww=`0x01`,Tw=`0x02`,Ew=`0x03`,Dw=`0x04`,Ow=`0x7777777777777777777777777777777777777777777777777777777777777777`;function kw(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:kw({...e,signature:t.inner}):Ga(Aw(e))}function Aw(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Yl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return Aw({payload:t,signature:n.inner})}}function jw(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?k(e,0,-Li(Ow)):e;if(Li(t)===65){let e=Kc(t);return Wc(e),{signature:e,type:`secp256k1`}}let n=k(t,0,1),r=k(t,1),i=Li(r);if(n===ww){if(i!==129)throw new zw({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:zi(k(r,64,96)),y:zi(k(r,96,128))},prehash:Vi(k(r,128,129))!==0,signature:{r:zi(k(r,0,32)),s:zi(k(r,32,64))},type:`p256`}}if(n===Tw){if(i<128)throw new zw({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=Hi(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 zw({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:zi(k(r,e+64,e+96)),y:zi(k(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:zi(k(r,e,e+32)),s:zi(k(r,e+32,e+64))},type:`webAuthn`}}if(n===Ew||n===Dw)return{userAddress:k(r,0,20),inner:jw(k(r,20)),type:`keychain`,version:n===Dw?`v2`:`v1`};throw new zw({reason:`Unknown signature type identifier: ${n}. Expected ${ww} (P256), ${Tw} (WebAuthn), ${Ew} (Keychain V1), or ${Dw} (Keychain V2)`,serialized:t})}function Mw(e,t){if(typeof e==`string`)return jw(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=Pw(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:Ga(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:Ga(Yl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function Nw(e){if(e.type===`secp256k1`)return{signature:Xc(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:zi(e.pubKeyX),y:zi(e.pubKeyY)},signature:{r:zi(e.r),s:zi(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Li(t),r,i;for(let e=37;e<n;e++){let n=Hi(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 zw({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:zi(e.pubKeyX),y:zi(e.pubKeyY)},signature:{r:zi(e.r),s:zi(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:Nw(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new Rw({envelope:e})}function Pw(e){if(typeof e!=`object`||!e)throw new Rw({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 Rw({envelope:e})}function Fw(e,t={}){let n=Pw(e);if(n===`secp256k1`)return E(Qc(e.signature),t.magic?Ow:`0x`);if(n===`p256`){let n=e;return E(ww,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?Ow:`0x`)}if(n===`webAuthn`){let n=e;return E(Tw,E(n.metadata.authenticatorData,Ni(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?Ow:`0x`)}if(n===`keychain`){let n=e;return E(n.version===`v1`?Ew:Dw,n.userAddress,Fw(n.inner),t.magic?Ow:`0x`)}throw new Rw({envelope:e})}function Iw(e){let t=Pw(e);if(t===`secp256k1`)return{...$c(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,Ni(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:Iw(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new Rw({envelope:e})}function Lw(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return Ga(t.publicKey)})();if(!r)return!1;let i=Mw(e);if(i.type===`secp256k1`)return r?Zl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return Ka(Ga(i.publicKey),r)?yu({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return Ka(Ga(i.publicKey),r)?xd({challenge:ji(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new Bw(`Unable to verify signature envelope of type \"${i.type}\".`)}var Rw=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Di(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},zw=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`})}},Bw=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};Kt(),A();function Vw(e){return e.startsWith(`tempo`)?Hw(e).address:e}function Hw(e){if(!e.startsWith(`tempox`))throw new Uw({address:e});let t=e.slice(6);return Ai(t,{strict:!0}),{address:Ua(t)}}var Uw=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 Ww(e,t={}){if(typeof e.chainId==`string`)return Gw(e);let n={...e,address:Vw(e.address)};return t.signature?{...n,signature:t.signature}:n}function Gw(e){let{address:t,chainId:n,nonce:r}=e,i=Nw(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function Kw(e){return e.map(e=>Gw(e))}function qw(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=jw(i)),Ww(a)}function Jw(e){let t=[];for(let n of e)t.push(qw(n));return t}function Yw(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:O(n),nonce:O(r),signature:Iw(i)}}function Xw(e){return e.map(e=>Yw(e))}function Zw(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?Fw(e.signature):void 0;return[n?O(n):`0x`,t,r?O(r):`0x`,...i?[i]:[]]}function Qw(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(Zw(n));return t}A();function $w(e,t={}){if(`keyId`in e)return eT(e);let n=e,r={...n,address:Vw(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:Vw(e.token)}))}:{}};return t.signature?{...r,signature:Mw(t.signature)}:r}function eT(e){let{chainId:t,keyId:n,expiry:r=0,limits:i,keyType:a}=e,o=Nw(e.signature);return{address:n,chainId:t===`0x`?0n:zi(t),expiry:Number(r),limits:i?.map(e=>({token:e.token,limit:BigInt(e.limit)})),signature:o,type:a}}function tT(e){let[t,n]=e,[r,i,a,o,s]=t,c=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),l={address:a,expiry:o===void 0?void 0:lT(o),type:c,chainId:r===`0x`?0n:zi(r),...o===void 0?{}:{expiry:lT(o)},...s===void 0?{}:{limits:s.map(([e,t])=>({token:e,limit:cT(t)}))}};return n&&(l.signature=jw(n)),$w(l)}function nT(e){return rT(e)}function rT(e){let[t]=aT(e);return Ta(qo(t))}function iT(e){let{address:t,chainId:n,expiry:r,limits:i,type:a,signature:o}=e;return{chainId:n===0n?`0x`:O(n),expiry:typeof r==`number`?O(r):null,limits:i?.map(({token:e,limit:t})=>({token:e,limit:O(t)})),keyId:Vw(t),signature:Iw(o),keyType:a}}function aT(e){let{address:t,chainId:n,expiry:r,limits:i}=e,a=e.signature?Fw(e.signature):void 0,o=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),s=i?.map(e=>[e.token,oT(e.limit)]);return[[oT(n),o,t,typeof r==`number`||s?sT(r??0):void 0,s].filter(Boolean),...a?[a]:[]]}function oT(e){return e===0n?`0x`:O(e)}function sT(e){return e===0?`0x`:O(e)}function cT(e){return e===`0x`?0n:BigInt(e)}function lT(e){return e===`0x`?0:Vi(e)}A();let uT=`0x20c0`;function dT(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):fT(e)}function fT(e){let t=Vw(e);if(!t.toLowerCase().startsWith(uT))throw Error(`invalid tip20 address.`);return zi(k(t,6))}function Z(e){if(typeof e==`string`){let t=Vw(e);return Ha(t),t}return E(uT,O(e,{size:18}))}A();let pT={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function mT(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ta(Ni(pT[e]??e))}let hT={...Cl,tempo:`0x76`},gT={...wl,\"0x76\":`tempo`};function _T(e,t={}){if(!e)return null;let n=Tl(e);return n.type=gT[e.type],e.aaAuthorizationList&&(n.authorizationList=Kw(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=Nw(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=eT(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=Xc(e.feePayerSignature),n.feePayerSignature.v=nl(n.feePayerSignature.yParity)),n}A();function vT(e){let t=rd({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=Xw(e.authorizationList)),e.calls&&(t.calls=e.calls.map(e=>({to:e.to?Vw(e.to):e.to,value:e.value?O(e.value):`0x`,data:e.data??`0x`}))),e.feeToken!==void 0&&(t.feeToken=Z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=iT(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 Ii(6);if(typeof e.nonceKey==`bigint`)return O(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==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=hT.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}Kt(),A();let yT=`tempo`;function bT(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new DT;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new OT({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&Ha(e.to,{strict:!1});if(n<=0)throw new cd({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new sd({feeCap:r});if(i&&r&&i>r)throw new ud({maxFeePerGas:r,maxPriorityFeePerGas:i})}function xT(e){let t=Vo(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 ld({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:yT});let y={chainId:Number(n),type:yT};Ui(a)&&a!==`0x`&&(y.gas=BigInt(a)),Ui(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),Ui(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),Ui(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),Ui(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),Ui(u)&&u!==`0x`&&(y.validBefore=Number(u)),Ui(d)&&d!==`0x`&&(y.validAfter=Number(d)),Ui(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=Ro(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=Jw(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||qa(p)?(y.feePayerSignature=null,qa(p)&&(y.from=p)):y.feePayerSignature=Zc(p)),_&&(y.keyAuthorization=tT(_));let b=v?jw(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=kw({payload:wT(ST(y)),signature:b,root:!0})}catch{}return bT(y),y}function ST(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?xT(e):e;return i.from&&=Vw(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:Vw(e.to)}:{}})),bT(i),{...i,...r?{signature:Mw(r)}:{},...n?{feePayerSignature:Jc(n)}:{},type:`tempo`}}function CT(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;bT(e);let h=zo(n),g=t.signature||e.signature,_=Qw(r),v=i.map(e=>[e.to?Vw(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=Mw(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return Ga(t.publicKey);if(t.type===`secp256k1`)return Jl({payload:wT(ST(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?el(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?[aT(c)]:[],...g?[Fw(Mw(g))]:[]];return E(t.format===`feePayer`?`0x78`:`0x76`,qo(x))}function wT(e,t={}){let n=TT(e,{presign:!0});return t.from?Ta(E(`0x04`,n,Vw(t.from))):n}function TT(e,t={}){return Ta(CT({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function ET(e,t){let n=Vw(t.sender);return Ta(CT({...e,signature:void 0},{sender:n,format:`feePayer`}))}var DT=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},OT=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 kT(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:l_(e)}function AT(e){try{return kT(e)===`tempo`}catch{return!1}}function jT(e){let t=k(e,0,1);return t===`0x76`||t===`0x78`?NT(e):sb(e)}async function MT(e,t){if(!AT(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 py(e,{r:O(n,{size:32}),s:O(r,{size:32}),yParity:i})}return py(e,t)}if(kT(e)===`tempo`)return PT(e,t);throw Error(`Unsupported transaction type`)}function NT(e){let{feePayerSignature:t,nonce:n,...r}=xT(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 PT(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return Mw({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=ST(c,{signature:n}),r=ET(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Jl({payload:wT(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return CT(t,{feePayerSignature:Jc(await e.feePayer.sign({hash:r}))})}return i===!0?n?CT(c,{format:`feePayer`,sender:e.from,signature:n}):CT(c,{feePayerSignature:null}):CT({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}A(),Wp(),Dg();function FT(e){if(!AT(e))return Vg(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=_T(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:hT[i.type],type:i.type}}function IT(e){return Yv(e)}function LT(e,t){let n=e,r=n.account?Up(n.account):void 0;if(!AT(n))return Cg(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=vT({...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`?Up(n.feePayer):n.feePayer}:{}}}let RT=new Map;async function zT(e){RT.set(e,(RT.get(e)??0)+1),await Promise.resolve();let t=(RT.get(e)??0)>1;return queueMicrotask(()=>{let t=RT.get(e)??0;t<=1?RT.delete(e):RT.set(e,t-1)}),t}Ng(),Dg();let BT={blockTime:1e3,extendSchema:Dy(),formatters:{transaction:Hg({exclude:[`aaAuthorizationList`],format:FT}),transactionReceipt:Xv({format:IT}),transactionRequest:Eg({format:LT})},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 zT(e):!1})()?(n.nonceKey=Mg,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)=>MT(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=jw(i);if(a.type!==`keychain`){let i=await oy(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return Lw(a,{address:n,payload:r})}}return await M(e,Tb,`verifyHash`)({...t,chain:null})}},VT=Ey({...BT,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`]}}}),HT=Ey({...BT,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),UT=Ey({...BT,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:[]}],WT=[{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:[]}],GT=[{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(),Wp(),Vf();function KT(e){let{access:t}=e;return t?eE(e):$T(e)}function qT(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=_u({privateKey:e});return KT({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=yd({...t,challenge:n,rpId:r,origin:i});return Fw({metadata:a,signature:vu({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function JT(e,t={}){let{access:n,internal_version:r}=t,i=_u({privateKey:e});return KT({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return Fw({signature:vu({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function YT(e,t={}){let{access:n,internal_version:r}=t;return KT({access:n,internal_version:r,keyType:`secp256k1`,publicKey:ql({privateKey:e}),async sign(t){let{hash:n}=t;return Qc(Xl({payload:n,privateKey:e}))}})}function XT(e,t={}){let{id:n}=e,r=Na(e.publicKey);return KT({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await bd({...t,challenge:e,credentialId:n});return Fw({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function ZT(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return KT({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return Fw({signature:await Cd({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function QT(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??Ga(e.publicKey),o=Fa(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Bf(E(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?Fw(Mw({userAddress:n,inner:Mw(o),type:`keychain`,version:i})):t===`secp256k1`?o:E(o,Ow)}return{address:Ua(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=Mw(await s({hash:eg({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:zy(t)})},async signTransaction(e,t){let{serializer:n=MT}=t??{};return await n(e,Mw(await s({hash:Bf(await n(e))})))},async signTypedData(e){return await s({hash:qy(e)})},publicKey:o,source:r,type:`local`}}function $T(e){let t=QT(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return $w({address:o,chainId:r,expiry:i,limits:a,signature:Mw(await t.sign({hash:nT({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function eE(e){let{access:t}=e,{address:n}=Up(t);return{...QT({...e,parentAddress:n}),accessKeyAddress:Ga(e.publicKey),source:`accessKey`}}let tE=`0xdec0000000000000000000000000000000000000`;function $(e){return{...e,data:Jp(e),to:e.address}}A(),Wp();async function nE(e,t){return nE.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return $({address:tE,abi:WT,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(nE||={});async function rE(e,t){return rE.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:tE,abi:WT,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=w_({abi:WT,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(rE||={});async function iE(e,t){return iE.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:tE,abi:WT,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=w_({abi:WT,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(iE||={});async function aE(e,t){return aE.inner(B,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return $({address:tE,abi:WT,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=w_({abi:WT,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(aE||={});async function oE(e,t){let{account:n=e.account,token:r,...i}=t,a=n?Up(n).address:void 0;if(!a)throw Error(`account is required.`);return Nv(e,{...i,...oE.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:tE,abi:WT,args:[t,n],functionName:`balanceOf`})}e.call=t})(oE||={});async function sE(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Nv(e,{...a,...sE.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return $({address:tE,abi:WT,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(sE||={});async function cE(e,t){let{orderId:n,...r}=t;return Nv(e,{...r,...cE.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return $({address:tE,abi:WT,args:[t],functionName:`getOrder`})}e.call=t})(cE||={});async function lE(e,t){let{base:n,quote:r,...i}=t;return Nv(e,{...i,...lE.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return $({address:tE,abi:WT,args:[gE(t,n)],functionName:`books`})}e.call=t})(lE||={});async function uE(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Nv(e,{...a,...uE.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:tE,abi:WT,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(uE||={});async function dE(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Nv(e,{...a,...dE.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return $({address:tE,abi:WT,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(dE||={});async function fE(e,t){return fE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return $({address:tE,abi:WT,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=w_({abi:WT,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(fE||={});async function pE(e,t){return pE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return $({address:tE,abi:WT,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=w_({abi:WT,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})(pE||={});async function mE(e,t){return mE.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return $({address:tE,abi:WT,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(mE||={});async function hE(e,t){return hE.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return $({address:tE,abi:WT,functionName:`withdraw`,args:[t,n]})}e.call=n})(hE||={});function gE(e,t){return Ta(E(e,t))}A(),Wp(),Yp();async function _E(e,t){let{token:n,...r}=t;return _E.inner(B,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(_E||={});async function vE(e,t){return vE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(vE||={});async function yE(e,t){return yE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Pi(n,32)]}:{functionName:`burn`,args:[t]};return $({address:Z(r),abi:Q,...i})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(yE||={});async function bE(e,t){return bE.inner(B,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return $({address:Z(t),abi:Q,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(bE||={});async function xE(e,t){return xE.inner(B,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?Up(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=Ii(32)}=e;return $({address:`0x20fc000000000000000000000000000000000000`,abi:GT,args:[t,n,r,Z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=w_({abi:GT,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(xE||={});async function SE(e,t){let{account:n=e.account}=t,r=n?Up(n).address:void 0;if(!r)throw Error(`account is required.`);return Nv(e,{...t,...SE.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})(SE||={});async function CE(e,t){let{account:n=e.account,...r}=t,i=n?Up(n).address:void 0;if(!i)throw Error(`account is required.`);return Nv(e,{...r,...CE.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})(CE||={});async function wE(e,t){let{token:n,...r}=t,i=Z(n),a=Q;return dT(n)===fT(`0x20c0000000000000000000000000000000000000`)?yb(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})):yb(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 TE(e,t){return Nv(e,{...t,...TE.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`getRoleAdmin`,args:[mT(t)]})}e.call=t})(TE||={});async function EE(e,t){let{account:n=e.account}=t,r=n?Up(n).address:void 0;if(!r)throw Error(`account is required.`);return Nv(e,{...t,...EE.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,mT(n)]})}e.call=t})(EE||={});async function DE(e,t){return DE.inner(Gv,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:Jp(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=mT(r);return $({address:Z(t),abi:Q,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=w_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(DE||={});async function OE(e,t){return OE.inner(B,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Pi(r,32)]}:{functionName:`mint`,args:[t,n]};return $({address:Z(i),abi:Q,...a})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(OE||={});async function kE(e,t){return kE.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(kE||={});async function AE(e,t){return AE.inner(Gv,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:Jp(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=mT(n);return $({address:Z(t),abi:Q,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=w_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(AE||={});async function jE(e,t){return jE.inner(Gv,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:Jp(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=mT(r);return $({address:Z(t),abi:Q,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=w_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(jE||={});async function ME(e,t){return ME.inner(B,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return $({address:Z(t),abi:Q,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(ME||={});async function NE(e,t){return NE.inner(B,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=mT(n),a=mT(r);return $({address:Z(t),abi:Q,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(NE||={});async function PE(e,t){return PE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Pi(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Pi(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]=w_({abi:Q,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(PE||={});async function FE(e,t){return FE.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(FE||={});async function IE(e,t){return IE.inner(B,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return $({address:Z(t),abi:Q,functionName:`setNextQuoteToken`,args:[Z(n)]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(IE||={});async function LE(e,t){return LE.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(LE||={});function RE(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return Nb({key:RE.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(jT(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:RE.type})}}function zE(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 Up(r)}}function BE(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=ay({chain:i.chain,transport:RE(Ib(e),Ib(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?RE(Ib(a),Ib(n)):Ib(a);return ay({chain:{...t,id:r},transport:o})}}let VE=k(Ta(ia(`mpp`),{as:`Hex`}),0,4);function HE(e){return Bi(k(Ta(ia(e),{as:`Hex`}),0,10))}function UE(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(Bi(VE),0),i[4]=1,i.set(HE(t),5),n&&i.set(HE(n),15),i.set(WE(r),25),D(i)}function WE(e){return Bi(k(Ta(ia(e),{as:`Hex`}),0,7))}function GE(e,t){return e.toLowerCase()===t.toLowerCase()}let KE={mainnet:4217,testnet:42431},qE={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};KE.mainnet,qE.usdc,KE.testnet,qE.pathUsd;let JE={[KE.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[KE.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},YE={[KE.mainnet]:`https://rpc.tempo.xyz`,[KE.testnet]:`https://rpc.moderato.tempo.xyz`},XE=[qE.pathUsd,qE.usdc];async function ZE(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!GE(e,i)),c=await Promise.allSettled([Nv(e,CE.call({account:n,token:i})),...s.map(t=>Nv(e,CE.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 sE(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[_E.call({token:l,spender:tE,amount:e}),nE.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new $E({currency:i})}}function QE(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>GE(e,t)))]:t,slippage:e.slippage??1}:!1}var $E=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function eD(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 tD={Proof:[{name:`challengeId`,type:`string`}]};function nD(e){return{name:`MPP`,version:`1`,chainId:e}}function rD(e){return{challengeId:e}}function iD(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let aD=[`push`,`pull`],oD=G({amount:$C(),memo:q(tw()),recipient:iC(W(),QS(e=>e))}),sD=Sw({name:`tempo`,intent:`charge`,schema:{credential:{payload:US(`type`,[G({hash:tw(),type:K(`hash`)}),G({signature:nw(),type:K(`transaction`)}),G({signature:nw(),type:K(`proof`)})])},request:iC(G({amount:$C(),chainId:q(ES()),currency:W(),decimals:ES(),description:q(W()),externalId:q(W()),feePayer:q(iC(VS([OS(),dC()]),QS(e=>typeof e==`object`?!0:e))),memo:q(tw()),recipient:q(W()),splits:q(RS(oD).check(yS(1),vS(10))),supportedModes:q(RS(YS(aD)).check(yS(1)))}).check(fC(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=vb(e,t),i=n.reduce((e,n)=>e+vb(n.amount,t),0n);return n.every(e=>vb(e.amount,t)>0n)&&i<r},`Invalid splits`)),QS(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:vb(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:vb(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),cD=Sw({name:`tempo`,intent:`session`,schema:{credential:{payload:US(`action`,[G({action:K(`open`),authorizedSigner:q(W()),channelId:tw(),cumulativeAmount:$C(),signature:nw(),transaction:nw(),type:K(`transaction`)}),G({action:K(`topUp`),additionalDeposit:$C(),channelId:tw(),transaction:nw(),type:K(`transaction`)}),G({action:K(`voucher`),channelId:tw(),cumulativeAmount:$C(),signature:nw()}),G({action:K(`close`),channelId:tw(),cumulativeAmount:$C(),signature:nw()})])},request:iC(G({amount:$C(),chainId:q(ES()),channelId:q(tw()),currency:W(),decimals:ES(),escrowContract:q(W()),feePayer:q(iC(VS([OS(),dC()]),QS(e=>typeof e==`object`?!0:e))),minVoucherDelta:q($C()),recipient:q(W()),suggestedDeposit:q($C()),unitType:W()}).check(fC(({amount:e,decimals:t})=>vb(e,t)>0n,`Session amount must be greater than 0`)),QS(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:vb(e,r).toString(),...s?{suggestedDeposit:vb(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:vb(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function lD(e={}){let{clientId:t}=e,n=BE({chain:VT,getClient:e.getClient,rpcUrl:YE}),r=zE({account:e.account});return Cw(sD,{context:G({account:q(dC()),autoSwap:q(dC()),mode:q(YS(aD))}),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 xw({challenge:i,payload:{signature:await Mb(s,{account:c,domain:nD(o),types:tD,primaryType:`Proof`,message:rD(i.id)}),type:`proof`},source:iD({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:UE({challengeId:i.id,clientId:t,serverId:i.realm}),g=eD({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>PE.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=QE(a?.autoSwap??e.autoSwap,XE),v=[...(_?await ZE(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 Ab(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return xw({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await g_(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,xw({challenge:i,payload:{signature:await jb(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function uD(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let dD={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function fD(e,t,n,r,i,a){let o=await Mb(e,{account:t,domain:uD(r,i),types:dD,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=Mw(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return Qc(e.inner.signature)}catch{}return o}function pD(e){return Ta(Oo(Ao([`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 mD=[{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 hD(e,t,n){return Nv(e,{address:t,abi:mD,functionName:`getChannel`,args:[n]})}zp({abi:mD,name:`open`}),zp({abi:mD,name:`topUp`});function gD(e,t,n){let r=e.request.methodDetails?.escrowContract??n??JE[t];if(!r)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return r}function _D(e,t,n,r){return xw({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function vD(e,t,n,r,i,a,o){let s=await fD(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function yD(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=Ii(32),f=pD({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Jp({abi:Q,functionName:`approve`,args:[r,o]}),m=Jp({abi:mD,functionName:`open`,args:[i,a,o,d,u]}),h=await g_(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await jb(e,h),_=await fD(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 bD(e,t,n,r){try{let i=await hD(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 xD=G({account:q(dC()),action:q(YS([`open`,`topUp`,`voucher`,`close`])),channelId:q(W()),cumulativeAmount:q($C()),cumulativeAmountRaw:q(W()),transaction:q(W()),authorizedSigner:q(W()),additionalDeposit:q($C()),additionalDepositRaw:q(W()),depositRaw:q(W())});function SD(e={}){let{decimals:t=6}=e,n=BE({chain:VT,getClient:e.getClient,rpcUrl:YE}),r=zE({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:vb(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 gD(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(S!==void 0&&a!==void 0)return S<a?S:a;if(S!==void 0)return S;if(a!==void 0)return a;if(e.deposit!==void 0)return vb(e.deposit,t);throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),te=u(v,y,_),w=s.get(te);if(!w){let e=p?.channelId??m?.channelId;if(e){let n=await bD(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?vb(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(te,n),c.set(n.channelId,te),o.set(n.channelId,_),w=n,l(w)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(w?.opened)w.cumulativeAmount+=b,ne=await vD(g,f,w.channelId,w.cumulativeAmount,_,h,C),l(w);else{let e=await yD(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(te,e.entry),c.set(e.entry.channelId,te),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return _D(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?vb(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?vb(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 fD(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 vD(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 fD(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 _D(e,S,u,r)}return Cw(cD,{context:xD,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 CD(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=kD(n)}return t}function wD(e,t){let n=CD(e),r=FD(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[kD(e)]??1,index:t}));return{definition:r,entries:i,header:ED(i),keys:n}}function TD(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)=>ND(e,t))}function ED(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${zD(n)}`}).join(`, `)}function DD(e,t){return e.map((e,n)=>{let r=AD(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 OD(e,t,n){let r=new Map;for(let e of t){let t=kD(e);r.has(t)||r.set(t,e)}let i=DD(e.filter(e=>r.has(kD(e))),n)[0];if(i)return{challenge:i,method:r.get(kD(i))}}function kD(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function AD(e,t){let n;for(let r of t){if(!jD(e,r))continue;let t={...r,specificity:MD(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 jD(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function MD(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function ND(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}`);BD(r,`method`),BD(i,`intent`);let a=1;for(let t of PD(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=LD(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function PD(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function FD(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>kD(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]=ID(t,`payment preference \"${e}\"`)}return a}function ID(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return RD(e,t)}function LD(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 RD(Number(e),t)}function RD(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 zD(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function BD(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let VD=Symbol.for(`mppx.fetch.wrapper`),HD;function UD(e){let{acceptPayment:t,fetch:n=globalThis.fetch,methods:r,onChallenge:i}=e,a=t??wD(r),o=YD(n),s=async(e,t)=>{let n=JD(e,t?.headers),s=n.has(`Accept-Payment`),c=QD(n,a),l=qD(e,t,n,c.header,s),u=await o(l.input,l.init);if(u.status!==402)return u;let d=t?.context,{context:f,...p}=l.init??{},m=pw(u),h=OD(m,r,c.entries);if(!h)throw Error(`No method found for challenges: ${m.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${r.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:g,method:_}=h,v=(i?await i(g,{createCredential:async e=>ZD(g,_,e??d)}):void 0)??await ZD(g,_,d);return XD(v),o(l.input,{...p,headers:KD(l.headers,v)})};return s[VD]=o,s}function WD(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);HD||=globalThis.fetch,globalThis.fetch=UD({...e,fetch:globalThis.fetch})}function GD(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 KD(e,t){let n=GD(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function qD(e,t,n,r,i){let a=!!r&&!i;if(!a)return{headers:n,init:t,input:e};let o=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{o.set(t,e)}),o.set(`Accept-Payment`,r),t?(t.headers=o,{headers:o,init:t,input:e}):{headers:o,init:a?{headers:o}:void 0,input:e}}function JD(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function YD(e){let t=e;for(;t[VD];)t=t[VD];return t}function XD(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 ZD(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 QD(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:TD(n),header:n}}catch{return t}}function $D(e){let t=Sl(e);return JSON.parse(t)}function eO(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 tO(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function nO(){return JSON.stringify({mpp:`payment-close-request`})}function rO(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`&&iO(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`&&aO(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&iO(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function iO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function aO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let oO={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function sO(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:vb(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,_=SD({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=UD({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;let t=BigInt(e.spent);s=s>t?s:t}function b(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function x(){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 S(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function ee(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function C(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function w(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function ne(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function re(e){let t=e.headers.get(`Payment-Receipt`),n=t?$D(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ie(e,t){return o=e,re(await v(e,t))}function ae(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=oO.CLOSED,r=null}if(e===`open`&&(i=oO.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available — call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ie,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ie(e,{...s,headers:{...GD(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=eO(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);ne(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),x=new URL(v.toString());x.protocol===`ws:`&&(x.protocol=`http:`),x.protocol===`wss:`&&(x.protocol=`https:`),o=x.toString();let w=await t(x,m?{signal:m}:void 0);if(w.status!==402)throw Error(`Expected a 402 payment challenge from ${x}, received ${w.status} instead.`);let re=pw(w).find(e=>e.method===_.name&&e.intent===_.intent);if(!re)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=re;let ie=await _.createCredential({challenge:re,context:{}});d=null,c=re,h=0n,g=BigInt(re.request.amount);let oe=bw(ie);l=oe.payload.channelId;let se=new n(v,f);u=se;let ce=ae(se),le=e=>{C(Error(e)),te(Error(e)),(se.readyState===oO.CONNECTING||se.readyState===oO.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===re.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===re&&(c=null),l===oe.payload.channelId&&(l=null),p=null,C(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=rO(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),ee(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:C(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{ne(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:re,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(tO(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),S(n.data);break}}),m&&m.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(tO(ie)),await b(),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===oO.OPEN){let t=d??await(async()=>(u.send(nO()),x()))(),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=b(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(tO(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:w(e,n)}});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=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?$D(m):void 0}}}function cO(e={}){return[lD(e),SD(e)]}(function(e){e.charge=lD,e.session=sO})(cO||={});function lO(e){return e}function uO(){return lO({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return pw(e)},getChallenge(e){return fw(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function dO(e){let{onChallenge:t,polyfill:n=!0,transport:r=uO()}=e,i=e.fetch??globalThis.fetch,a=e.methods.flat(),o=wD(a,e.paymentPreferences),s=t,c={acceptPayment:o,...e.fetch&&{fetch:e.fetch},...s&&{onChallenge:s},methods:a},l=UD(c);return n&&WD(c),{fetch:l,rawFetch:i,methods:a,transport:r,async createCredential(e,t,n){let i=r.getChallenges?r.getChallenges(e):[r.getChallenge(e)],s=OD(i,a,fO(o.entries,n?.acceptPayment));if(!s)throw Error(`No method found for challenges: ${i.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${a.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=s,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 fO(e,t){return t?typeof t==`string`?TD(t):t:e}function pO(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 mO(e={}){let{account:t}=e,n=await Sd();return{accessKey:ZT(n,t?{access:t}:void 0),keyPair:n}}function hO(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 gO(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 _O(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o=i?{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,privateKey:i}:r?{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,keyPair:r}:{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits};a.setState(e=>({accessKeys:[o,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function vO(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 Ru({message:`Account \"${n}\" not found.`}):new Bu({message:`No active account.`});if(t){let e=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(e)if(e.expiry&&e.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(t=>t!==e)});else return yO(e)}return bO(l,{signable:r})}function yO(e){if(`keyPair`in e&&e.keyPair)return ZT(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return YT(e.privateKey,{access:e.access});case`p256`:return JT(e.privateKey,{access:e.access})}throw new Ru({message:`External access key cannot be hydrated for signing.`})}function bO(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 Ru({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return YT(e.privateKey);case`p256`:return JT(e.privateKey);case`webCrypto`:return ZT(e.keyPair);case`webAuthn`:return XT(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return qT(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new Ru({message:`Unknown key type.`})}}function xO(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function SO(e={}){let{dialog:t=b()?ne():w(),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`}=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.`),xO({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,o=ed();function s(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 Lu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new Lu({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 c=Zu({async request(e){let t=o.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),s(t.id)}},{schema:qC});async function l(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await mO();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function u(e,t,n){_O({address:e,keyAuthorization:eT(t),keyPair:n,store:i})}async function d(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=pO(n,{store:i});try{let e=await t(n,r??void 0);return gO(n,{store:i}),e}catch{hO(n,{store:i});return}}let f=t({host:n,store:i}),p=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);f?.syncRequests(t),t.length===0&&f?.close()});return{cleanup(){p(),f?.destroy()},actions:{async createAccount(e,t){let n=await l(e.authorizeAccessKey),{accounts:r}=await c.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:gx(BC.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&u(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 l(e?.authorizeAccessKey),{accounts:r}=await c.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:gx(BC.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&u(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 c.request(t)},async signTransaction(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=await g_(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await c.request({...t,params:[gx(CC,e)]}):n},async signTypedData(e,t){return await c.request(t)},async sendTransaction(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await g_(o,{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await c.request({...t,params:[gx(CC,e)]}):n},async sendTransactionSync(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await g_(o,{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await c.request({...t,params:[gx(CC,e)]}):n},async authorizeAccessKey(t,n){let r=await l(t),i=await c.request({...n,params:[gx(BC.authorizeAccessKey,r.request)]});return r&&u(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await c.request(t)},async deposit(e,t){return await c.request(t)},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let CO=new Map;function wO(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1)return typeof r==`string`?r: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=CO.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Ib(),r=i?TO(i,t):t;u=ay({chain:e,transport:o?EO(r,o,s):r,pollingInterval:1e3}),CO.set(l,u)}return u}function TO(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function EO(e,t,n){return r=>{let i=e(r),a=Ib(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=jT(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 DO(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(DO.cache.get(n))return DO.cache.get(n);let r=e().finally(()=>DO.cache.delete(n));return DO.cache.set(n,r),r}DO.cache=new Map;function OO(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function kO(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=OO(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let AO;function jO(){return AO||=kO(`keyval-store`,`keyval`),AO}function MO(e,t=jO()){return t(`readonly`,t=>OO(t.get(e)))}function NO(e,t,n=jO()){return n(`readwrite`,n=>(n.put(t,e),OO(n.transaction)))}function PO(e,t=jO()){return t(`readwrite`,t=>(t.delete(e),OO(t.transaction)))}function FO(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 IO(e={}){let t=typeof indexedDB<`u`?kO(`tempo`,`store`):void 0;return FO({async getItem(e){let n=await MO(e,t);return n===null?null:n},async setItem(e,n){await NO(e,n,t)},async removeItem(e){await PO(e,t)}},e)}function LO(e={}){let t=new Map;return FO({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let RO=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 zO(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 BO=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return BO(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return BO(t)(e)}}}},VO=(e,t)=>(n,r,i)=>{let a={storage:zO(()=>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 BO(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},HO=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},UO=(e=>e?HO(e):HO);function WO(e){let{chainId:t,persistCredentials:n=!0,storage:r=typeof window<`u`?IO({key:`tempo`}):LO({key:`tempo`})}=e;return UO(RO(VO(()=>({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:e.accounts,activeAccount:e.activeAccount,...n?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:r,version:0})))}async function GO(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function KO(e,t){let n=mx(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new zu({message:`Unsupported method \"${t?.method}\".`}):new Iu(-32602,`Invalid params: ${qO(n.error.issues)}`)}return{...t,_decoded:n.data}}function qO(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?qO([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let JO=new Set;function YO(e={}){let{adapter:t=SO(),chains:n=[VT,UT],persistCredentials:r,testnet:i,storage:a=typeof window<`u`?IO():LO()}=e,o=(()=>{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}})(),s=WO({chainId:(i?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,persistCredentials:r,storage:a}),c=(e={})=>vO({...e,store:s}),l;function u(e={}){let{chainId:t,feePayer:r}=e;return wO(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:o?.precedence}})(),store:s})}let d=t({getAccount:c,getClient:u,storage:a,store:s}),{actions:f}=d,p=Xu();s.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>p.emit(`accountsChanged`,s.getState().accounts.map(e=>e.address))),s.subscribe(e=>e.chainId,e=>p.emit(`chainChanged`,O(e))),s.subscribe(e=>e.accounts.length>0,e=>{e?p.emit(`connect`,{chainId:O(s.getState().chainId)}):p.emit(`disconnect`,new Bu)});function m(){if(s.getState().accounts.length===0)throw new Bu({message:`No accounts connected.`})}function h(e){if(!d.persistAccounts)return e;let t=[...e];for(let e of s.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function g(e){let t=(()=>{if(typeof e==`string`)return e;if(e!==!1)return o?.url})();if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let _=Object.assign(Zu({...p,async request({method:t,params:r}){return await GO(s),DO(async()=>{let i;try{i=KO(YC,{method:t,params:r})}catch(e){if(!(e instanceof zu))throw e;return await wO(void 0,{chains:n,store:s}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=s.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(s.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await f.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return s.setState({accounts:h(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{m();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 f.sendTransaction({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=g(t.feePayer),a=e=>{let t=u({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 c({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=pO(e,{store:s});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...iT(n)}});return gO(e,{store:s}),r}catch{return hO(e,{store:s}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{m();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 f.signTransaction({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_sendTransactionSync`:{m();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 f.sendTransactionSync({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_signTypedData_v4`:{m();let[e,t]=i._decoded.params;return await f.signTypedData({address:e,data:t},i)}case`personal_sign`:{m();let[e,t]=i._decoded.params;return await f.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{m();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,c=g(t?.feePayer??(o?!0:void 0)),l={calls:e,chainId:n,from:r,...c?{feePayer:c}:{}};if(!a){let e=E(await f.sendTransaction(l,{method:`eth_sendTransaction`,params:[gx(CC,l)]}),Pi(O(s.getState().chainId),32),ZO);return{capabilities:{sync:a},id:e}}let u=await f.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[gx(CC,l)]}),d=u.transactionHash,p=O(s.getState().chainId),h=E(d,Pi(p,32),ZO);return{atomic:!0,capabilities:{sync:a},chainId:p,id:h,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}=s.getState(),a=e?.account??t[r]?.address;if(!a)throw new Bu({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new Nu({message:\"`tokens` is required.\"});let c=wO(e?.chainId,{chains:n,store:s});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([CE(c,{account:a,token:e}),wE(c,{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(ZO.slice(2)))throw Error(\"`id` not supported\");Ai(e);let t=k(e,0,32),r=O(Number(k(e,32,64))),a=await wO(Number(r),{chains:n,store:s}).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}=s.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new Ru({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(O(e.id))):n,c={};for(let e of a)c[O(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...o?{feePayer:{status:`supported`}}:{}};return c}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&s.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,signature:c}=await(async()=>n?.method===`register`?await f.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId},i):await f.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i))();s.setState({accounts:h(o),activeAccount:0});let l=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===l?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...c&&n?.digest?{signature:c}:{}}:{}}))}}case`wallet_disconnect`:await f.disconnect?.(),s.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!f.authorizeAccessKey)throw new zu({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await f.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(m(),!f.revokeAccessKey)throw new zu({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await f.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!f.deposit)throw new zu({message:\"`deposit` not supported by adapter.\"});return await f.deposit(i._decoded.params[0],i);case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new Wu({message:`Chain ${e} not configured.`});await f.switchChain?.({chainId:e}),s.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Di({method:t,params:r})})}},{schema:qC}),{chains:n,getAccount:c,getClient(e={}){let{chainId:t,feePayer:r}=e;return wO(t,{chains:n,feePayer:r,provider:l,store:s})},store:s});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;JO.has(e)||(JO.add(e),XC({info:{icon:t.icon??XO,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:_}))}return e.mpp&&dO({methods:[cO({getClient:({chainId:e})=>{let t=_.getClient({chainId:e}),n=_.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),l=_,_}let XO=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,ZO=Ta(Ni(`TEMPO_5792`)),QO={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},$O={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},ek={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var tk=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let nk={accent:new tk(`accent`),background:new tk(`background`),border:new tk(`border`),foreground:new tk(`foreground`),muted:new tk(`muted`),negative:new tk(`negative`),positive:new tk(`positive`),surface:new tk(`surface`),fontFamily:new tk(`font-family`),fontSizeBase:new tk(`font-size-base`),radius:new tk(`radius`),spacingUnit:new tk(`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: ${nk.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 rk(e){let t=new URL(location.href);t.searchParams.set($O.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 ik(e){let t=document.getElementById(QO.data),n=Ei(t.textContent),r=t.getAttribute(ek.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(ek.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(ek.challengeId),o=a?(i.removeAttribute(ek.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(QO.error)?.remove();return}let t=document.getElementById(QO.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=QO.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:rk,vars:nk}}let ak=ik(`tempo`),ok=String.raw,sk=document.createElement(`style`);sk.textContent=ok`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${ak.vars.spacingUnit} * 8);\n }\n button {\n background: ${ak.vars.accent};\n border-radius: ${ak.vars.radius};\n color: ${ak.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${ak.vars.spacingUnit} * 4) calc(${ak.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`,ak.root.append(sk);let ck=YO({testnet:ak.challenge.request.methodDetails?.chainId===UT.id||ak.challenge.request.methodDetails?.chainId===HT.id}),lk=document.createElement(`button`);lk.innerHTML=`${ak.text.pay===`Pay`?`Continue with`:ak.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>`,lk.onclick=async()=>{try{ak.error(),lk.disabled=!0;let e=await(async()=>{let e=await ck.request({method:`eth_accounts`});return e.length>0?e.at(0):(await ck.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await cO({account:e,getClient:e=>{let t=e.chainId??ak.challenge.request.methodDetails?.chainId;return ay({chain:[...ck?.chains??[],UT,HT].find(e=>e.id===t),transport:Pb(ck)})}})[0].createCredential({challenge:ak.challenge,context:{}});await ak.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;ak.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{lk.disabled=!1}},ak.root.appendChild(lk)})();</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),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 e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}let v={height:440,width:360};function y(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function b(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function x(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let S,ee,C,te=[];function w(){return typeof window>`u`?re():y({name:`iframe`},e=>{let{host:t}=e;if(S&&S.host===t){let t=ee;return ee=e.store,t&&t!==ee&&!te.includes(t)&&te.push(t),C?.destroy(),C=ne()(e),S.instance}S?.instance.destroy(),ee=e.store,C=ne()(e);let n=!1,r=ce(),i=new URL(t);i.searchParams.set(`chainId`,String(ee.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)));let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Auth`),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 Auth`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:`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=>{ae(ie(ee,te,e.id),e)}),e.waitForReady().then(e=>{c=e,e.colorScheme&&(o.style.colorScheme=e.colorScheme)}),e.on(`switch-mode`,()=>{de(),w(),n=!1,l=!0;let e=ee?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&C?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,v=()=>oe(ee),y=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});y.observe(a,{attributeOldValue:!0,attributes:!0});let b=!1,w=()=>{b&&(b=!1,a.removeEventListener(`cancel`,v),a.removeEventListener(`click`,v),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},re=()=>{b||(b=!0,a.addEventListener(`cancel`,v),a.addEventListener(`click`,v),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},le=!1,ue=()=>{le||(le=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},de=()=>{if(le){le=!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`)}},fe={close(){C.close(),n=!1,de(),w()},destroy(){S?.instance===fe&&(S=void 0),C?.close(),n=!1,w(),de(),C?.destroy(),f.destroy(),a.remove(),y.disconnect(),ee=void 0,C=void 0,te=[]},open(){n||(n=!0,ue(),re())},async syncRequests(e){if(l){C.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(x()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){C.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`)),C.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:se(ee),chainId:ee.getState().chainId,requests:e})}}};return S={host:t,instance:fe},fe})}function ne(e={}){if(typeof window>`u`)return re();let{size:t=v}=e;return y({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&oe(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`,()=>oe(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 e=ce(),a=new URL(n);a.searchParams.set(`chainId`,String(r.getState().chainId)),a.searchParams.set(`mode`,`popup`),e.icon&&(typeof e.icon==`string`?a.searchParams.set(`icon`,e.icon):(a.searchParams.set(`icon`,e.icon.light),a.searchParams.set(`iconDark`,e.icon.dark)));let c=(window.innerWidth-t.width)/2+window.screenX,l=window.screenY+100;if(i=window.open(a.toString(),`_blank`,`width=${t.width},height=${t.height},left=${c},top=${l}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:a.origin}),to:p(i,{targetOrigin:a.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>ae(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:se(r),chainId:r.getState().chainId,requests:e})}}})}function re(){return y({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){}}))}function ie(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 ae(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 oe(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 se(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ce(){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 le,ue=o((()=>{le=`1.2.3`})),de,fe=o((()=>{ue(),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@${le}`].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 pe(e,t){return e.exec(t)?.groups}var me,he,ge,_e=o((()=>{me=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,he=/^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)?$/,ge=/^\\(.+?\\).*?$/}));function ve(e){let t=e.type;if(ye.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+=ve(i),r<n-1&&(t+=`, `)}let r=pe(ye,e.type);return t+=`)${r?.array||``}`,ve({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var ye,be=o((()=>{_e(),ye=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function xe(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ve(i),r!==n-1&&(t+=`, `)}return t}var Se=o((()=>{be()}));function Ce(e){return e.type===`function`?`function ${e.name}(${xe(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${xe(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${xe(e.inputs)})`:e.type===`error`?`error ${e.name}(${xe(e.inputs)})`:e.type===`constructor`?`constructor(${xe(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var we=o((()=>{Se()}));function Te(e){return Re.test(e)}function Ee(e){return pe(Re,e)}function De(e){return ze.test(e)}function Oe(e){return pe(ze,e)}function ke(e){return Be.test(e)}function Ae(e){return pe(Be,e)}function je(e){return Ve.test(e)}function Me(e){return pe(Ve,e)}function Ne(e){return He.test(e)}function Pe(e){return pe(He,e)}function Fe(e){return Ue.test(e)}function Ie(e){return pe(Ue,e)}function Le(e){return We.test(e)}var Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je=o((()=>{_e(),Re=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,ze=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Be=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,Ve=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,He=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Ue=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,We=/^receive\\(\\) external payable$/,Ge=new Set([`memory`,`indexed`,`storage`,`calldata`]),Ke=new Set([`indexed`]),qe=new Set([`calldata`,`memory`,`storage`])})),Ye,Xe,Ze=o((()=>{fe(),Ye=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`})}},Xe=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`})}}})),Qe,$e,et,tt,nt,rt,it=o((()=>{fe(),Qe=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`})}},$e=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},et=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`})}},tt=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`})}},nt=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`})}},rt=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`})}}})),at,ot,st,ct=o((()=>{fe(),at=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`})}},ot=class extends de{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},st=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`})}}})),lt,ut=o((()=>{fe(),lt=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`})}}})),dt,ft=o((()=>{fe(),dt=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 pt(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 mt,ht=o((()=>{mt=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 gt(e,t={}){if(ke(e))return _t(e,t);if(De(e))return vt(e,t);if(Te(e))return yt(e,t);if(Ne(e))return bt(e,t);if(Fe(e))return xt(e);if(Le(e))return{type:`receive`,stateMutability:`payable`};throw new ot({signature:e})}function _t(e,t={}){let n=Ae(e);if(!n)throw new at({signature:e,type:`function`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{modifiers:qe,structs:t,type:`function`}));let o=[];if(n.returns){let e=Ct(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(St(e[n],{modifiers:qe,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function vt(e,t={}){let n=Oe(e);if(!n)throw new at({signature:e,type:`event`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{modifiers:Ke,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function yt(e,t={}){let n=Ee(e);if(!n)throw new at({signature:e,type:`error`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function bt(e,t={}){let n=Pe(e);if(!n)throw new at({signature:e,type:`constructor`});let r=Ct(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(St(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function xt(e){let t=Ie(e);if(!t)throw new at({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function St(e,t){let n=pt(e,t?.type,t?.structs);if(mt.has(n))return mt.get(n);let r=ge.test(e),i=pe(r?Ot:Dt,e);if(!i)throw new $e({param:e});if(i.name&&Tt(i.name))throw new et({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=Ct(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(St(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(kt.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!wt(c))throw new Xe({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new tt({param:e,type:t?.type,modifier:i.modifier});if(qe.has(i.modifier)&&!Et(c,!!i.array))throw new nt({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return mt.set(n,u),u}function Ct(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?Ct(o,[...t,n.trim()]):Ct(o,t,`${n}${i}`,r);case`(`:return Ct(o,t,`${n}${i}`,r+1);case`)`:return Ct(o,t,`${n}${i}`,r-1);default:return Ct(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new dt({current:n,depth:r});return t.push(n.trim()),t}function wt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||me.test(e)||he.test(e)}function Tt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||me.test(e)||he.test(e)||At.test(e)}function Et(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var Dt,Ot,kt,At,jt=o((()=>{_e(),Ze(),it(),ct(),ft(),ht(),Je(),Dt=/^(?<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$_]*))?$/,Ot=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,kt=/^u?int$/,At=/^(?: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 Mt(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!je(n))continue;let i=Me(n);if(!i)throw new at({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=St(t,{type:`struct`});o.push(n)}if(!o.length)throw new st({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]=Nt(a,t)}return r}function Nt(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(ge.test(i.type))r.push(i);else{let e=pe(Pt,i.type);if(!e?.type)throw new rt({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new lt({type:o});r.push({...i,type:`tuple${a??``}`,components:Nt(t[o],t,new Set([...n,o]))})}else if(wt(o))r.push(i);else throw new Ye({type:o})}}return r}var Pt,Ft=o((()=>{_e(),Ze(),it(),ct(),ut(),Je(),jt(),Pt=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function It(e){let t=Mt(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];je(r)||n.push(gt(r,t))}return n}var Lt=o((()=>{Je(),Ft(),jt()}));function Rt(e){let t=[];if(typeof e==`string`){let n=Ct(e),r=n.length;for(let e=0;e<r;e++)t.push(St(n[e],{modifiers:Ge}))}else{let n=Mt(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(je(r))continue;let a=Ct(r),o=a.length;for(let e=0;e<o;e++)t.push(St(a[e],{modifiers:Ge,structs:n}))}}if(t.length===0)throw new Qe({params:e});return t}var zt=o((()=>{it(),Je(),Ft(),jt()})),Bt=o((()=>{fe(),we(),be(),Se(),Lt(),Ze(),Je(),Ft(),jt(),it(),zt(),ct(),ft(),ut()})),Vt,Ht=o((()=>{Vt=`0.1.1`}));function Ut(){return Vt}var Wt=o((()=>{Ht()}));function Gt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?Gt(e.cause,t):t?null:e}var T,Kt=o((()=>{Wt(),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 Gt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${Ut()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),qt,Jt=o((()=>{qt=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function Yt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Xt(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Zt(e,...t){if(!Yt(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 Qt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);Xt(e.outputLen),Xt(e.blockLen)}function $t(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 en(e,t){Zt(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function tn(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function nn(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function rn(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function an(e,t){return e<<32-t|e>>>t}function on(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function sn(e){for(let t=0;t<e.length;t++)e[t]=on(e[t]);return e}function cn(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ln(e){return typeof e==`string`&&(e=cn(e)),Zt(e),e}function un(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Zt(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 dn(e){let t=t=>e().update(ln(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function fn(e){let t=(t,n)=>e(n).update(ln(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function pn(e=32){if(qt&&typeof qt.getRandomValues==`function`)return qt.getRandomValues(new Uint8Array(e));if(qt&&typeof qt.randomBytes==`function`)return Uint8Array.from(qt.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var mn,hn,gn,_n=o((()=>{Jt(),mn=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,hn=mn?e=>e:sn,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,gn=class{}})),vn,yn,bn=o((()=>{_n(),vn=class extends gn{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Qt(e);let n=ln(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),nn(i)}update(e){return $t(this),this.iHash.update(e),this}digestInto(e){$t(this),Zt(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()}},yn=(e,t,n)=>new vn(e,t).update(n).digest(),yn.create=(e,t)=>new vn(e,t)}));function xn(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 Sn(e,t,n){return e&t^~e&n}function Cn(e,t,n){return e&t^e&n^t&n}var wn,Tn,En,Dn,On=o((()=>{_n(),wn=class extends gn{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=rn(this.buffer)}update(e){$t(this),e=ln(e),Zt(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=rn(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){$t(this),en(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,nn(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;xn(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=rn(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()}},Tn=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),En=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Dn=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function kn(e,t=!1){return t?{h:Number(e&Mn),l:Number(e>>Nn&Mn)}:{h:Number(e>>Nn&Mn)|0,l:Number(e&Mn)|0}}function An(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}=kn(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function jn(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn,Yn,Xn=o((()=>{Mn=BigInt(2**32-1),Nn=BigInt(32),Pn=(e,t,n)=>e>>>n,Fn=(e,t,n)=>e<<32-n|t>>>n,In=(e,t,n)=>e>>>n|t<<32-n,Ln=(e,t,n)=>e<<32-n|t>>>n,Rn=(e,t,n)=>e<<64-n|t>>>n-32,zn=(e,t,n)=>e>>>n-32|t<<64-n,Bn=(e,t,n)=>e<<n|t>>>32-n,Vn=(e,t,n)=>t<<n|e>>>32-n,Hn=(e,t,n)=>t<<n-32|e>>>64-n,Un=(e,t,n)=>e<<n-32|t>>>64-n,Wn=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),Gn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,Kn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),qn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Jn=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Yn=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function Zn(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=ur(a,o,1)^n[r],c=dr(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=ar[n],a=ur(t,i,r),o=dr(t,i,r),s=ir[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]^=cr[r],e[1]^=lr[r]}nn(n)}var Qn,$n,er,tr,nr,rr,ir,ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr=o((()=>{Xn(),_n(),Qn=BigInt(0),$n=BigInt(1),er=BigInt(2),tr=BigInt(7),nr=BigInt(256),rr=BigInt(113),ir=[],ar=[],or=[];for(let e=0,t=$n,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ir.push(2*(5*r+n)),ar.push((e+1)*(e+2)/2%64);let i=Qn;for(let e=0;e<7;e++)t=(t<<$n^(t>>tr)*rr)%nr,t&er&&(i^=$n<<($n<<BigInt(e))-$n);or.push(i)}sr=An(or,!0),cr=sr[0],lr=sr[1],ur=(e,t,n)=>n>32?Hn(e,t,n):Bn(e,t,n),dr=(e,t,n)=>n>32?Un(e,t,n):Vn(e,t,n),fr=class e extends gn{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,Xt(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=tn(this.state)}clone(){return this._cloneInto()}keccak(){hn(this.state32),Zn(this.state32,this.rounds),hn(this.state32),this.posOut=0,this.pos=0}update(e){$t(this),e=ln(e),Zt(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){$t(this,!1),Zt(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 Xt(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(en(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,nn(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}},pr=(e,t,n)=>dn(()=>new fr(t,e,n)),pr(6,144,224/8),pr(6,136,256/8),pr(6,104,384/8),pr(6,72,512/8),pr(1,144,224/8),mr=pr(1,136,256/8),pr(1,104,384/8),pr(1,72,512/8),hr=(e,t,n)=>fn((r={})=>new fr(t,e,r.dkLen===void 0?n:r.dkLen,!0)),hr(31,168,128/8),hr(31,136,256/8)})),_r,vr,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar=o((()=>{On(),Xn(),_n(),_r=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]),vr=new Uint32Array(64),yr=class extends wn{constructor(e=32){super(64,e,8,!1),this.A=Tn[0]|0,this.B=Tn[1]|0,this.C=Tn[2]|0,this.D=Tn[3]|0,this.E=Tn[4]|0,this.F=Tn[5]|0,this.G=Tn[6]|0,this.H=Tn[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)vr[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=vr[e-15],n=vr[e-2],r=an(t,7)^an(t,18)^t>>>3;vr[e]=(an(n,17)^an(n,19)^n>>>10)+vr[e-7]+r+vr[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=an(o,6)^an(o,11)^an(o,25),u=l+t+Sn(o,s,c)+_r[e]+vr[e]|0,d=(an(n,2)^an(n,13)^an(n,22))+Cn(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(){nn(vr)}destroy(){this.set(0,0,0,0,0,0,0,0),nn(this.buffer)}},br=An(`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))),xr=br[0],Sr=br[1],Cr=new Uint32Array(80),wr=new Uint32Array(80),Tr=class extends wn{constructor(e=64){super(128,e,16,!1),this.Ah=Dn[0]|0,this.Al=Dn[1]|0,this.Bh=Dn[2]|0,this.Bl=Dn[3]|0,this.Ch=Dn[4]|0,this.Cl=Dn[5]|0,this.Dh=Dn[6]|0,this.Dl=Dn[7]|0,this.Eh=Dn[8]|0,this.El=Dn[9]|0,this.Fh=Dn[10]|0,this.Fl=Dn[11]|0,this.Gh=Dn[12]|0,this.Gl=Dn[13]|0,this.Hh=Dn[14]|0,this.Hl=Dn[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)Cr[n]=e.getUint32(t),wr[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Cr[e-15]|0,n=wr[e-15]|0,r=In(t,n,1)^In(t,n,8)^Pn(t,n,7),i=Ln(t,n,1)^Ln(t,n,8)^Fn(t,n,7),a=Cr[e-2]|0,o=wr[e-2]|0,s=In(a,o,19)^Rn(a,o,61)^Pn(a,o,6),c=Ln(a,o,19)^zn(a,o,61)^Fn(a,o,6),l=Kn(i,c,wr[e-7],wr[e-16]);Cr[e]=qn(l,r,s,Cr[e-7],Cr[e-16])|0,wr[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=In(u,d,14)^In(u,d,18)^Rn(u,d,41),v=Ln(u,d,14)^Ln(u,d,18)^zn(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Jn(_,v,b,Sr[e],wr[e]),S=Yn(x,g,t,y,xr[e],Cr[e]),ee=x|0,C=In(n,r,28)^Rn(n,r,34)^Rn(n,r,39),te=Ln(n,r,28)^zn(n,r,34)^zn(n,r,39),w=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=jn(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=Wn(ee,te,ne);n=Gn(re,S,C,w),r=re|0}({h:n,l:r}=jn(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=jn(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=jn(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=jn(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=jn(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=jn(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=jn(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=jn(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(){nn(Cr,wr)}destroy(){nn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Er=class extends Tr{constructor(){super(48),this.Ah=En[0]|0,this.Al=En[1]|0,this.Bh=En[2]|0,this.Bl=En[3]|0,this.Ch=En[4]|0,this.Cl=En[5]|0,this.Dh=En[6]|0,this.Dl=En[7]|0,this.Eh=En[8]|0,this.El=En[9]|0,this.Fh=En[10]|0,this.Fl=En[11]|0,this.Gh=En[12]|0,this.Gl=En[13]|0,this.Hh=En[14]|0,this.Hl=En[15]|0}},Dr=dn(()=>new yr),Or=dn(()=>new Tr),kr=dn(()=>new Er)}));Ar();let jr=Dr;function Mr(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Nr(e){if(!Mr(e))throw Error(`Uint8Array expected`)}function Pr(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Fr(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Ir(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?ei:BigInt(`0x`+e)}function Lr(e){if(Nr(e),ni)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=ri[e[n]];return t}function Rr(e){if(e>=ii._0&&e<=ii._9)return e-ii._0;if(e>=ii.A&&e<=ii.F)return e-(ii.A-10);if(e>=ii.a&&e<=ii.f)return e-(ii.a-10)}function zr(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(ni)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=Rr(e.charCodeAt(i)),a=Rr(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 Br(e){return Ir(Lr(e))}function Vr(e){return Nr(e),Ir(Lr(Uint8Array.from(e).reverse()))}function Hr(e,t){return zr(e.toString(16).padStart(t*2,`0`))}function Ur(e,t){return Hr(e,t).reverse()}function Wr(e,t,n){let r;if(typeof t==`string`)try{r=zr(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Mr(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 Gr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Nr(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 Kr(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 qr(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function Jr(e,t,n){return ai(e)&&ai(t)&&ai(n)&&t<=e&&e<n}function Yr(e,t,n,r){if(!Jr(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function Xr(e){let t;for(t=0;e>ei;e>>=ti,t+=1);return t}function Zr(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=si(e),i=si(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=si(0))=>{i=s(ci([0]),e),r=s(),e.length!==0&&(i=s(ci([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 Gr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function Qr(e,t,n={}){let r=(t,n,r)=>{let i=li[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 $r(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 ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui=o((()=>{ei=BigInt(0),ti=BigInt(1),ni=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,ri=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ii={_0:48,_9:57,A:65,F:70,a:97,f:102},ai=e=>typeof e==`bigint`&&ei<=e,oi=e=>(ti<<BigInt(e))-ti,si=e=>new Uint8Array(e),ci=e=>Uint8Array.from(e),li={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`||Mr(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 di(e,t){if(ca(e)>t)throw new xa({givenSize:ca(e),maxSize:t})}function fi(e,t){if(typeof t==`number`&&t>0&&t>ca(e)-1)throw new Sa({offset:t,position:`start`,size:ca(e)})}function pi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&ca(e)!==n-t)throw new Sa({offset:n,position:`end`,size:ca(e)})}function mi(e){if(e>=_i.zero&&e<=_i.nine)return e-_i.zero;if(e>=_i.A&&e<=_i.F)return e-(_i.A-10);if(e>=_i.a&&e<=_i.f)return e-(_i.a-10)}function hi(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Ca({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 gi(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 _i,vi=o((()=>{wa(),_i={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function yi(e,t){if(Li(e)>t)throw new Xi({givenSize:Li(e),maxSize:t})}function bi(e,t){if(typeof t==`number`&&t>0&&t>Li(e)-1)throw new Zi({offset:t,position:`start`,size:Li(e)})}function xi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Li(e)!==n-t)throw new Zi({offset:n,position:`end`,size:Li(e)})}function Si(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 Qi({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Ci(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 wi=o((()=>{A()}));function Ti(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=>Ti(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)}:${Ti(r)}`),t},[]).join(`,`)}}`}function Ei(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Oi)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Di(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Oi:n,n)}var Oi,ki=o((()=>{Oi=`#__bigint`}));function Ai(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new qi(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new Ji(e)}function E(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function ji(e){return e instanceof Uint8Array?D(e):Array.isArray(e)?D(new Uint8Array(e)):e}function Mi(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(yi(n,t.size),Pi(n,t.size)):n}function D(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Gi[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(yi(r,t.size),Fi(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 Ki({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?Pi(s,r):s}function Ni(e,t={}){return D(Wi.encode(e),t)}function Pi(e,t){return Si(e,{dir:`left`,size:t})}function Fi(e,t){return Si(e,{dir:`right`,size:t})}function Ii(e){return D(sa(e))}function k(e,t,n,r={}){let{strict:i}=r;bi(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&xi(a,t,n),a}function Li(e){return Math.ceil((e.length-2)/2)}function Ri(e){return Ci(e,{dir:`left`})}function zi(e,t={}){let{signed:n}=t;t.size&&yi(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 Bi(e,t={}){return ra(e,t)}function Vi(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:zi(e,t))}function Hi(e,t={}){let{size:n}=t,r=ra(e);return n&&(di(r,n),r=ha(r)),new TextDecoder().decode(r)}function Ui(e,t={}){let{strict:n=!1}=t;try{return Ai(e,{strict:n}),!0}catch{return!1}}var Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,A=o((()=>{wa(),Kt(),vi(),wi(),ki(),Wi=new TextEncoder,Gi=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Ki=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`})}},qi=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Di(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`})}},Ji=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`})}},Yi=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`})}},Xi=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`})}},Zi=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`})}},Qi=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 $i(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 ba(e)}function ea(...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 ta(e){return e instanceof Uint8Array?e:typeof e==`string`?ra(e):na(e)}function na(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function ra(e,t={}){let{size:n}=t,r=e;n&&(yi(e,n),r=Fi(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=mi(i.charCodeAt(t++)),r=mi(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 ia(e,t={}){let{size:n}=t,r=va.encode(e);return typeof n==`number`?(di(r,n),oa(r,n)):r}function aa(e,t){return Kr(e,t)}function oa(e,t){return hi(e,{dir:`right`,size:t})}function sa(e){return crypto.getRandomValues(new Uint8Array(e))}function ca(e){return e.length}function la(e,t,n,r={}){let{strict:i}=r;fi(e,t);let a=e.slice(t,n);return i&&pi(a,t,n),a}function ua(e,t={}){let{size:n}=t;return n!==void 0&&di(e,n),zi(D(e,t),t)}function da(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(di(r,n),r=ma(r)),r.length>1||r[0]>1)throw new ya(r);return!!r[0]}function fa(e,t={}){let{size:n}=t;return n!==void 0&&di(e,n),Vi(D(e,t),t)}function pa(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(di(r,n),r=ha(r)),_a.decode(r)}function ma(e){return gi(e,{dir:`left`})}function ha(e){return gi(e,{dir:`right`})}function ga(e){try{return $i(e),!0}catch{return!1}}var _a,va,ya,ba,xa,Sa,Ca,wa=o((()=>{ui(),Kt(),A(),vi(),wi(),ki(),_a=new TextDecoder,va=new TextEncoder,ya=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`})}},ba=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Di(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`})}},xa=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`})}},Sa=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`})}},Ca=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`})}}}));bn(),gr(),wa(),A();function Ta(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=mr(ta(e));return n===`Bytes`?r:D(r)}function Ea(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=yn(jr,ta(e),ta(t));return r===`Bytes`?i:D(i)}function Da(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=jr(ta(e));return n===`Bytes`?r:D(r)}function Oa(e){return Ui(e)&&Li(e)===32}let ka={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;wa(),Kt(),A(),ki();function Aa(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 La({prefix:r,cause:new za});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new La({prefix:r,cause:new Ra});return}throw new Ia({publicKey:e})}function ja(e){let t=(()=>{if(Ui(e))return Na(e);if(ga(e))return Ma(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 Aa(t),t}function Ma(e){return Na(D(e))}function Na(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Ba({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 Pa(e,t={}){return ra(Fa(e,t))}function Fa(e,t={}){Aa(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 Ia=class extends T{constructor({publicKey:e}){super(`Value \\`${Di(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`})}},La=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`})}},Ra=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`})}},za=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`})}},Ba=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 ${Li(ji(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};wa(),Kt();let Va=/^0x[a-fA-F0-9]{40}$/;function Ha(e,t={}){let{strict:n=!0}=t;if(!Va.test(e))throw new Ja({address:e,cause:new Ya});if(n){if(e.toLowerCase()===e)return;if(Ua(e)!==e)throw new Ja({address:e,cause:new Xa})}}function Ua(e){if(ka.has(e))return ka.get(e);Ha(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ta(ia(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 ka.set(e,i),i}function Wa(e,t={}){let{checksum:n=!1}=t;return Ha(e),n?Ua(e):e}function Ga(e,t={}){return Wa(`0x${Ta(`0x${Fa(e).slice(4)}`).substring(26)}`,t)}function Ka(e,t){return Ha(e,{strict:!1}),Ha(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function qa(e,t={}){let{strict:n=!0}=t??{};try{return Ha(e,{strict:n}),!0}catch{return!1}}var Ja=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`})}},Ya=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`})}},Xa=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`})}};let Za=/^(.*)\\[([0-9]*)\\]$/,Qa=/^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 eo=2n**256n-1n;wa(),Kt(),A();function to(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=bo(t.type);if(a){let[n,o]=a;return ro(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return so(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return no(e,{checksum:r});if(t.type===`bool`)return io(e);if(t.type.startsWith(`bytes`))return ao(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return oo(e,t);if(t.type===`string`)return co(e,{staticPosition:i});throw new Lo(t.type)}function no(e,t={}){let{checksum:n=!1}=t;return[(e=>n?Ua(e):e)(D(la(e.readBytes(32),-20))),32]}function ro(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+fa(e.readBytes(32)),i=n+32;e.setPosition(n);let o=fa(e.readBytes(32)),s=xo(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=to(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(xo(t)){let n=a+fa(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=to(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]=to(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function io(e){return[da(e.readBytes(32),{size:32}),32]}function ao(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=fa(e.readBytes(32));e.setPosition(n+t);let r=fa(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 oo(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?ua(i,{signed:n}):fa(i,{signed:n}),32]}function so(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(xo(t)){let n=i+fa(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=to(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]=to(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function co(e,{staticPosition:t}){let n=t+fa(e.readBytes(32));e.setPosition(n);let r=fa(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=pa(ma(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function lo({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(uo({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function uo({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=bo(r.type);if(i){let[t,a]=i;return mo(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return yo(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return po(n,{checksum:e});if(r.type===`bool`)return go(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=$a.exec(r.type)??[];return _o(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return ho(n,{type:r.type});if(r.type===`string`)return vo(n);throw new Lo(r.type)}function fo(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Li(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+=Li(s)):n.push(s)}return E(...n,...r)}function po(e,t){let{checksum:n=!1}=t;return Ha(e,{strict:n}),{dynamic:!1,encoded:Pi(e.toLowerCase())}}function mo(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new Io(e);if(!a&&e.length!==r)throw new No({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=uo({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=fo(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 ho(e,{type:t}){let[,n]=t.split(`bytes`),r=Li(e);if(!n){let t=e;return r%32!=0&&(t=Fi(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:E(Pi(O(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Po({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Fi(e)}}function go(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Pi(Mi(e))}}function _o(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 Ki({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 vo(e){let t=Ni(e),n=Math.ceil(Li(t)/32),r=[];for(let e=0;e<n;e++)r.push(Fi(k(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:E(Fi(O(Li(t),{size:32})),...r)}}function yo(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=uo({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?fo(a):E(...a.map(({encoded:e})=>e))}}function bo(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function xo(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(xo);let n=bo(e.type);return!!(n&&xo({...e,type:n[1]}))}Kt();let So={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 Eo({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new To({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new wo({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 wo({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 Co(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(So);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var wo=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`})}},To=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`})}},Eo=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`})}};Bt(),wa(),Kt(),A();function Do(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?ra(t):t,o=Co(a);if(ca(a)===0&&e.length>0)throw new Mo;if(ca(a)&&ca(a)<32)throw new jo({data:typeof t==`string`?t:D(t),parameters:e,size:ca(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]=to(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Oo(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Fo({expectedLength:e.length,givenLength:t.length});let i=fo(lo({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function ko(e,t){if(e.length!==t.length)throw new Fo({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(ko.encode(i,a))}return E(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return Ha(e),Pi(e.toLowerCase(),r?32:0)}if(e===`string`)return Ni(n);if(e===`bytes`)return n;if(e===`bool`)return Pi(Mi(n),r?32:1);let i=e.match($a);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(Qa);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Po({expectedSize:Number.parseInt(t,10),value:n});return Fi(n,r?32:0)}let o=e.match(Za);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 Lo(e)}e.encode=t})(ko||={});function Ao(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Rt(e):e}var jo=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${xe(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Mo=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`})}},No=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`})}},Po=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Li(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Fo=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`})}},Io=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`})}},Lo=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`})}};Kt(),A();function Ro(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&Ha(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Oa(e)?e:Ri(e))})}return t}function zo(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(Li(r[e])!==32)throw new Bo({storageKey:r[e]});n&&Ha(n,{strict:!1}),t.push([n,r])}return t}var Bo=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Li(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};wa(),Kt(),A();function Vo(e){return Ho(e,`Hex`)}function Ho(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return Uo(Co((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Yi(e);return ra(e)}return e})(),{recursiveReadLimit:1/0}),n)}function Uo(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=Wo(e,n,128),i=e.readBytes(r);return t===`Hex`?D(i):i}return Go(e,Wo(e,n,192),t)}function Wo(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 Go(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Uo(e,n));return i}function Ko(e,t){let{as:n}=t,r=Jo(e),i=Co(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}function qo(e,t={}){let{as:n=`Hex`}=t;return Ko(e,{as:n})}function Jo(e){return Array.isArray(e)?Yo(e.map(e=>Jo(e))):Xo(e)}function Yo(e){let t=e.reduce((e,t)=>e+t.length,0),n=Zo(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 Xo(e){let t=typeof e==`string`?ra(e):e,n=Zo(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 Zo(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 Qo(e,t){let n=e%t;return n>=ms?n:t+n}function $o(e,t,n){let r=e;for(;t-- >ms;)r*=r,r%=n;return r}function es(e,t){if(e===ms)throw Error(`invert: expected non-zero number`);if(t<=ms)throw Error(`invert: expected positive modulus, got `+t);let n=Qo(e,t),r=t,i=ms,a=hs,o=hs,s=ms;for(;n!==ms;){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!==hs)throw Error(`invert: does not exist`);return Qo(i,t)}function ts(e,t){let n=(e.ORDER+hs)/vs,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function ns(e,t){let n=(e.ORDER-ys)/bs,r=e.mul(t,gs),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,gs),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 rs(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-hs,n=0;for(;t%gs===ms;)t/=gs,n++;let r=gs,i=us(e);for(;cs(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return ts;let a=i.pow(r,t),o=(t+hs)/gs;return function(e,r){if(e.is0(r))return r;if(cs(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=hs<<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 is(e){return e%vs===_s?ts:e%bs===ys?ns:rs(e)}function as(e){return Qr(e,xs.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function os(e,t,n){if(n<ms)throw Error(`invalid exponent, negatives unsupported`);if(n===ms)return e.ONE;if(n===hs)return t;let r=e.ONE,i=t;for(;n>ms;)n&hs&&(r=e.mul(r,i)),i=e.sqr(i),n>>=hs;return r}function ss(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 cs(e,t){let n=(e.ORDER-hs)/gs,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 ls(e,t){t!==void 0&&Xt(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function us(e,t,n=!1,r={}){if(e<=ms)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=ls(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:oi(i),ZERO:ms,ONE:hs,create:t=>Qo(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return ms<=t&&t<e},is0:e=>e===ms,isOdd:e=>(e&hs)===hs,neg:t=>Qo(-t,e),eql:(e,t)=>e===t,sqr:t=>Qo(t*t,e),add:(t,n)=>Qo(t+n,e),sub:(t,n)=>Qo(t-n,e),mul:(t,n)=>Qo(t*n,e),pow:(e,t)=>os(s,e,t),div:(t,n)=>Qo(t*es(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>es(t,e),sqrt:r.sqrt||(t=>(o||=is(e),o(s,t))),toBytes:e=>n?Ur(e,a):Hr(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Vr(e):Br(e)},invertBatch:e=>ss(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function ds(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function fs(e){let t=ds(e);return t+Math.ceil(t/2)}function ps(e,t,n=!1){let r=e.length,i=ds(t),a=fs(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Qo(n?Vr(e):Br(e),t-hs)+hs;return n?Ur(o,i):Hr(o,i)}var ms,hs,gs,_s,vs,ys,bs,xs,Ss=o((()=>{_n(),ui(),ms=BigInt(0),hs=BigInt(1),gs=BigInt(2),_s=BigInt(3),vs=BigInt(4),ys=BigInt(5),bs=BigInt(8),xs=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Cs(e,t){let n=t.negate();return e?n:t}function ws(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Ts(e,t){ws(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:oi(e),maxNumber:i,shiftBy:BigInt(e)}}function Es(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+=Ps);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 Ds(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 Os(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 ks(e){return Is.get(e)||1}function As(e,t){return{constTimeNegate:Cs,hasPrecomputes(e){return ks(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>Ns;)n&Ps&&(r=r.add(i)),i=i.double(),n>>=Ps;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Ts(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=Ts(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Es(i,e,s);i=t,c?o=o.add(Cs(u,r[d])):a=a.add(Cs(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Ts(n,t);for(let e=0;e<o.windows&&i!==Ns;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=Es(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=Fs.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&Fs.set(t,n(r))),r},wNAFCached(e,t,n){let r=ks(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=ks(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){ws(n,t),Is.set(e,n),Fs.delete(e)}}}function js(e,t,n,r){Ds(n,e),Os(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=Xr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=oi(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 Ms(e){return as(e.Fp),Qr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...ls(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Ns,Ps,Fs,Is,Ls=o((()=>{Ss(),ui(),Ns=BigInt(0),Ps=BigInt(1),Fs=new WeakMap,Is=new WeakMap}));function Rs(e){e.lowS!==void 0&&Pr(`lowS`,e.lowS),e.prehash!==void 0&&Pr(`prehash`,e.prehash)}function zs(e){let t=Ms(e);Qr(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 Bs(e,t){return Lr(Hr(e,t))}function Vs(e){let t=zs(e),{Fp:n}=t,r=us(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return Gr(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,Xs),Zs),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 Jr(e,j,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Mr(e)&&(e=Lr(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:Br(Wr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Qo(o,a)),Yr(`private key`,o,j,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=$r((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=$r(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=ss(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(Wr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return js(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,Xs),{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,Xs),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;Yr(`scalar`,e,Js,i);let a=h.ZERO;if(e===Js)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>Js||l>Js;)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;Yr(`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===Js||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 Pr(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Pr(`isCompressed`,e),Lr(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=As(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function Hs(e){let t=Ms(e);return Qr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function Us(e){let t=Hs(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Qo(e,r)}function l(e){return es(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=Vs({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=Gr;return Pr(`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=Br(i);if(!Jr(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)=>Br(e.slice(t,n));class _{constructor(e,t,n){Yr(`r`,e,j,r),Yr(`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=Wr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=qs.toSig(Wr(`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(Wr(`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+Bs(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 zr(this.toDERHex())}toDERHex(){return qs.hexFromSig(this)}toCompactRawBytes(){return zr(this.toCompactHex())}toCompactHex(){let e=i;return Bs(this.r,e)+Bs(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=fs(t.n);return ps(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=Wr(`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=Br(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=oi(a);function te(e){return Yr(`num < 2^`+a,e,Js,C),Hr(e,i)}function w(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=Wr(`msgHash`,e),Rs(i),f&&(e=Wr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[te(y),te(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(Wr(`extraEntropy`,e))}let x=Gr(...b),C=v;function w(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===Js)return;let a=c(n*c(C+i*y));if(a===Js)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:w}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=w(e,n,r),o=t;return Zr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=Wr(`msgHash`,n),r=Wr(`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`||Mr(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 qs.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 Ws(e,t){let n=e.ORDER,r=Js;for(let e=n-j;e%Ys===Js;e/=Ys)r+=j;let i=r,a=Ys<<i-j-j,o=a*Ys,s=(n-j)/o,c=(s-j)/Ys,l=o-j,u=a,d=e.pow(t,s),f=e.pow(t,(s+j)/Ys),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-Ys;n=Ys<<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%Zs===Xs){let n=(e.ORDER-Xs)/Zs,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 Gs(e,t){if(as(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=Ws(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=ss(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var Ks,qs,Js,j,Ys,Xs,Zs,Qs=o((()=>{Ls(),Ss(),ui(),Ks=class extends Error{constructor(e=``){super(e)}},qs={Err:Ks,_tlv:{encode:(e,t)=>{let{Err:n}=qs;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=Fr(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Fr(i.length/2|128):``;return Fr(e)+a+i+t},decode(e,t){let{Err:n}=qs,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}=qs;if(e<Js)throw new t(`integer: negative integers are not allowed`);let n=Fr(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}=qs;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 Br(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=qs,i=Wr(`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}=qs,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},Js=BigInt(0),j=BigInt(1),Ys=BigInt(2),Xs=BigInt(3),Zs=BigInt(4)}));function $s(e){return{hash:e,hmac:(t,...n)=>yn(e,t,un(...n)),randomBytes:pn}}function ec(e,t){let n=t=>Us({...e,...$s(t)});return{...n(t),create:n}}var tc=o((()=>{bn(),_n(),Qs()}));function nc(e,t){if(ic(e),ic(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 rc(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 ic(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function ac(e,t,n,r){Nr(e),Nr(t),ic(n),t.length>255&&(t=r(Gr(qr(`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=Gr(t,nc(t.length,1)),c=nc(0,a),l=nc(n,2),u=Array(o),d=r(Gr(c,e,l,nc(0,1),s));u[0]=r(Gr(d,nc(1,1),s));for(let e=1;e<=o;e++)u[e]=r(Gr(rc(d,u[e-1]),nc(e+1,1),s));return Gr(...u).slice(0,n)}function oc(e,t,n,r,i){if(Nr(e),Nr(t),ic(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(qr(`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(nc(n,2)).update(t).update(nc(t.length,1)).digest()}function sc(e,t,n){Qr(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;Nr(e),ic(t);let l=typeof c==`string`?qr(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=ac(e,l,f,o);else if(s===`xof`)p=oc(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]=Qo(uc(p.subarray(i,i+d)),r)}m[e]=t}return m}function cc(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]=ss(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function lc(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=sc(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(sc(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 uc,dc=o((()=>{Ss(),ui(),uc=Br})),fc=c({encodeToCurve:()=>Hc,hashToCurve:()=>Vc,schnorr:()=>Lc,secp256k1:()=>Oc,secp256k1_hasher:()=>Bc});function pc(e){let t=xc,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=$o($o($o(u,n,t)*u%t,n,t)*u%t,Tc,t)*l%t,f=$o(d,i,t)*d%t,p=$o(f,a,t)*f%t,m=$o(p,s,t)*p%t,h=$o($o($o($o($o($o(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Tc,t);if(!Dc.eql(Dc.sqr(h),e))throw Error(`Cannot find square root`);return h}function mc(e,...t){let n=kc[e];if(n===void 0){let t=Dr(Uint8Array.from(e,e=>e.charCodeAt(0)));n=Gr(t,t),kc[e]=n}return Dr(Gr(n,...t))}function hc(e){let t=Oc.utils.normPrivateKeyToScalar(e),n=Pc.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Nc(-t),bytes:Ac(n)}}function gc(e){Yr(`x`,e,wc,xc);let t=pc(Mc(Mc(e*e)*e+BigInt(7)));t%Tc!==Cc&&(t=Mc(-t));let n=new Pc(e,t,wc);return n.assertValidity(),n}function _c(...e){return Nc(Ic(mc(`BIP0340/challenge`,...e)))}function vc(e){return hc(e).bytes}function yc(e,t,n=pn(32)){let r=Wr(`message`,e),{bytes:i,scalar:a}=hc(t),o=Nc(Ic(mc(`BIP0340/nonce`,jc(a^Ic(mc(`BIP0340/aux`,Wr(`auxRand`,n,32)))),i,r)));if(o===Cc)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=hc(o),l=_c(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(jc(Nc(c+l*a)),32),!bc(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function bc(e,t,n){let r=Wr(`signature`,e,64),i=Wr(`message`,t),a=Wr(`publicKey`,n,32);try{let e=gc(Ic(a)),t=Ic(r.subarray(0,32));if(!Jr(t,wc,xc))return!1;let n=Ic(r.subarray(32,64));if(!Jr(n,wc,Sc))return!1;let o=Fc(e,n,Nc(-_c(jc(t),Ac(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var xc,Sc,Cc,wc,Tc,Ec,Dc,Oc,kc,Ac,jc,Mc,Nc,Pc,Fc,Ic,Lc,Rc,zc,Bc,Vc,Hc,Uc=o((()=>{Ar(),_n(),tc(),dc(),Ss(),ui(),Qs(),xc=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Sc=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Cc=BigInt(0),wc=BigInt(1),Tc=BigInt(2),Ec=(e,t)=>(e+t/Tc)/t,Dc=us(xc,void 0,void 0,{sqrt:pc}),Oc=ec({a:Cc,b:BigInt(7),Fp:Dc,n:Sc,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Sc,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-wc*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=Ec(a*e,t),c=Ec(-r*e,t),l=Qo(e-s*n-c*i,t),u=Qo(-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}}}},Dr),kc={},Ac=e=>e.toRawBytes(!0).slice(1),jc=e=>Hr(e,32),Mc=e=>Qo(e,xc),Nc=e=>Qo(e,Sc),Pc=Oc.ProjectivePoint,Fc=(e,t,n)=>Pc.BASE.multiplyAndAddUnsafe(e,t,n),Ic=Br,Lc={getPublicKey:vc,sign:yc,verify:bc,utils:{randomPrivateKey:Oc.utils.randomPrivateKey,lift_x:gc,pointToBytes:Ac,numberToBytesBE:Hr,bytesToNumberBE:Br,taggedHash:mc,mod:Qo}},Rc=cc(Dc,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),zc=Gs(Dc,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:Dc.create(BigInt(`-11`))}),Bc=lc(Oc.ProjectivePoint,e=>{let{x:t,y:n}=zc(Dc.create(e[0]));return Rc(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:Dc.ORDER,m:1,k:128,expand:`xmd`,hash:Dr}),Vc=Bc.hashToCurve,Hc=Bc.encodeToCurve}));Kt(),A(),ki();function Wc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new il({signature:e});if(e.r<0n||e.r>eo)throw new al({value:e.r});if(e.s<0n||e.s>eo)throw new ol({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new sl({value:e.yParity})}function Gc(e){return Kc(D(e))}function Kc(e){if(e.length!==130&&e.length!==132)throw new rl({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 tl(t)}catch{throw new sl({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function qc(e){if(e.r!==void 0&&e.s!==void 0)return Jc(e)}function Jc(e){let t=typeof e==`string`?Kc(e):e instanceof Uint8Array?Gc(e):typeof e.r==`string`?Xc(e):e.v?Yc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return Wc(t),t}function Yc(e){return{r:e.r,s:e.s,yParity:tl(e.v)}}function Xc(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=tl(t)),typeof n!=`number`)throw new sl({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Zc(e){let[t,n,r]=e;return Jc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function Qc(e){Wc(e);let t=e.r,n=e.s;return E(O(t,{size:32}),O(n,{size:32}),typeof e.yParity==`number`?O(nl(e.yParity),{size:1}):`0x`)}function $c(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 el(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Ri(O(t)),n===0n?`0x`:Ri(O(n))]}function tl(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new cl({value:e})}function nl(e){if(e===0)return 27;if(e===1)return 28;throw new sl({value:e})}var rl=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Li(ji(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},il=class extends T{constructor({signature:e}){super(`Signature \\`${Di(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},al=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`})}},ol=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`})}},sl=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`})}},cl=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 ll(e,t={}){return typeof e.chainId==`string`?ul(e):{...e,...t.signature}}function ul(e){let{address:t,chainId:n,nonce:r}=e,i=qc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function dl(e){return e.map(ul)}function fl(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:O(n),nonce:O(r),...$c(i)}}function pl(e){return e.map(fl)}wa();let ml=new TextEncoder,hl=new TextDecoder,gl=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),_l={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function vl(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]=gl[r>>18],i[t+1]=gl[r>>12&63],i[t+2]=gl[r>>6&63],i[t+3]=gl[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=hl.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function yl(e,t={}){return vl(ra(e),t)}function bl(e,t={}){return vl(ia(e),t)}function xl(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);ml.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(_l[r[e]]<<18)+(_l[r[e+1]]<<12)+(_l[r[e+2]]<<6)+_l[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 Sl(e){return pa(xl(e))}let Cl={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},wl={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Tl(e,t={}){if(!e)return null;let n=qc(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=dl(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=wl[e.type]??e.type),n&&(r.v=nl(n.yParity)),r}function El(e){return{address:e.address,amount:O(e.amount),index:O(e.index),validatorIndex:O(e.validatorIndex)}}var Dl=o((()=>{A()}));function Ol(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(El)}}}var kl=o((()=>{A(),Dl()}));wa(),Kt(),A();function Al(e,t={}){let{as:n=`Hex`}=t,r=Wl(e),i=Co(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}var jl=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`})}},Ml=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`})}},Nl=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`})}},Pl=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`})}},Fl=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`})}},Il=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`})}},Ll=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`})}},Rl=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},zl=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`})}},Bl=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`})}},Vl=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`})}},Hl=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 Wl(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 Wl.number(e);if(typeof e==`bigint`)throw new Ll;if(typeof e==`string`)return Wl.string(e);if(Array.isArray(e))return Wl.array(e);if(e instanceof Uint8Array)return Wl.byteString(e);if(e instanceof ArrayBuffer)return Wl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return Wl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return Wl.map(e);if(typeof e==`object`)return Wl.object(e);throw new Rl({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 zl({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 zl({number:e.toString(10)})}e.number=t;function n(e){let t=ia(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 Bl({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 Vl({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 Hl({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 Hl({size:i})}e.map=o})(Wl||={});function Gl(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Gl.readUnsignedInteger(e,r);case 1:return Gl.readNegativeInteger(e,r);case 2:return Gl.readByteString(e,r);case 3:return Gl.readTextString(e,r);case 4:return Gl.readArray(e,r);case 5:return Gl.readMap(e,r);case 6:throw new Pl({tag:r});case 7:return Gl.readSimpleOrFloat(e,r);default:throw new jl({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 Nl:new Ml({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 Fl({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 Fl({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return pa(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 Il({value:t});return}throw new Ml({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}})(Gl||={}),Kt();function Kl(e){let t=Pa(e),n=t.slice(1,33),r=t.slice(33,65);return Al(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}Uc(),wa(),A();function ql(e){let{privateKey:t}=e;return ja(Oc.ProjectivePoint.fromPrivateKey(ji(t).slice(2)))}function Jl(e){return Ga(Yl(e))}function Yl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return ja(new Oc.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(ji(t).substring(2)))}function Xl(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Oc.sign(ta(r),ta(i),{extraEntropy:typeof t==`boolean`?t:ji(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Zl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?Ka(t,Jl({payload:r,signature:a})):Oc.verify(a,ta(r),Pa(i),...n?[{prehash:!0,lowS:!0}]:[])}Ar(),tc(),dc(),Ss(),Qs();let Ql=us(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),$l=Ql.create(BigInt(`-3`)),eu=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),tu=ec({a:$l,b:eu,Fp:Ql,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Dr),nu=tu,ru=Gs(Ql,{A:$l,B:eu,Z:Ql.create(BigInt(`-10`))}),iu=lc(nu.ProjectivePoint,e=>ru(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:Ql.ORDER,m:1,k:128,expand:`xmd`,hash:Dr}),au=us(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),ou=au.create(BigInt(`-3`)),su=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),cu=ec({a:ou,b:su,Fp:au,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},kr),lu=Gs(au,{A:ou,B:su,Z:au.create(BigInt(`-12`))});lc(cu.ProjectivePoint,e=>lu(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:au.ORDER,m:1,k:192,expand:`xmd`,hash:kr});let uu=us(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),du=uu.create(BigInt(`-3`)),fu=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),pu=ec({a:du,b:fu,Fp:uu,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Or),mu=Gs(uu,{A:du,B:fu,Z:uu.create(BigInt(`-4`))});lc(pu.ProjectivePoint,e=>mu(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:uu.ORDER,m:1,k:256,expand:`xmd`,hash:Or});let hu=tu,gu=tu;iu.hashToCurve,iu.encodeToCurve,wa(),A();function _u(e){let{privateKey:t}=e;return ja(gu.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):D(t).slice(2)))}function vu(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=gu.sign(r instanceof Uint8Array?r:ra(r),i instanceof Uint8Array?i:ra(i),{extraEntropy:typeof t==`boolean`?t:ji(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function yu(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return gu.verify(i,n instanceof Uint8Array?n:ra(n),Fa(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var bu=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 xu(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Su(r.error);return r.result}function Su(e){let t=e;if(t instanceof Error&&!(`code`in t))return new Pu({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===Pu.code?new Pu(t):n===wu.code?new wu(t):n===Nu.code?new Nu(t):n===ju.code?new ju(t):n===ku.code?new ku(t):n===Mu.code?new Mu(t):n===Ou.code?new Ou(t):n===Fu.code?new Fu(t):n===Tu.code?new Tu(t):n===Eu.code?new Eu(t):n===Du.code?new Du(t):n===Au.code?new Au(t):new Pu({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Cu=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??``}},wu=class e extends Cu{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(wu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Tu=class e extends Cu{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(Tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Eu=class e extends Cu{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(Eu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Du=class e extends Cu{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(Du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Ou=class e extends Cu{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(Ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ku=class e extends Cu{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(ku,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Au=class e extends Cu{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(Au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var ju=class e extends Cu{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(ju,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var Mu=class e extends Cu{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(Mu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var Nu=class e extends Cu{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(Nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var Pu=class e extends Cu{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(Pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var Fu=class e extends Cu{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(Fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Kt();var Iu=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}},Lu=class extends Iu{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(Lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var Ru=class extends Iu{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(Ru,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var zu=class extends Iu{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(zu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var Bu=class extends Iu{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(Bu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var Vu=class extends Iu{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(Vu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var Hu=class extends Iu{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(Hu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var Uu=class extends Iu{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 Wu=class extends Iu{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(Wu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var Gu=class extends Iu{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(Gu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var Ku=class extends Iu{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(Ku,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var qu=class extends Iu{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(qu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var Ju=class extends Iu{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(Ju,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var Yu=class extends Iu{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(Yu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function Xu(){let e=new bu.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 Zu(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?xu(n):n}catch(e){throw Qu(e)}}}}function Qu(e){let t=Su(e);if(t instanceof Pu){if(!t.data)return t;let{code:e}=t.data;if(e===Bu.code)return new Bu(t);if(e===Vu.code)return new Vu(t);if(e===Lu.code)return new Lu(t);if(e===Ru.code)return new Ru(t);if(e===zu.code)return new zu(t);if(e===Hu.code)return new Hu(t);if(e===Ju.code)return new Ju(t);if(e===Yu.code)return new Yu(t);if(e===qu.code)return new qu(t);if(e===Ku.code)return new Ku(t);if(e===Gu.code)return new Gu(t);if(e===Wu.code)return new Wu(t);if(e===Uu.code)return new Uu(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 ed(e={}){let t=e.id??0;return{prepare(e){return td({id:t++,...e})},get id(){return t}}}function td(e){return{...e,jsonrpc:`2.0`}}function nd(){return null}A();function rd(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=pl(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=Cl[e.type]||e.type),e.value!==void 0&&(t.value=O(e.value)),t}Kt();let id={wei:0,gwei:9,szabo:12,finney:15,ether:18};function ad(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 od(e,t=`wei`){return ad(e,id.gwei-id[t])}Kt();var sd=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${od(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`})}},cd=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`})}},ld=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`})}},ud=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${od(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${od(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};wa(),Kt(),Uint8Array.from([105,171,180,181,160,222,75,198,42,42,32,31,141,37,186,233]);function dd(e){let t=hu.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}A();function fd(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=E(Da(Ni(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,Kl(t.publicKey))}function pd(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:yl(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}wa(),Kt(),A();function md(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:xl(e),type:`public-key`})):[{id:xl(t),type:`public-key`}]}:{},challenge:ra(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function hd(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=fd({flag:i,rpId:o,signCount:s}),u=pd({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Da(Ni(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:E(l,d)}}async function gd(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:md(n);try{let e=await t(r);if(!e)throw new _d;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=dd(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 _d({cause:e})}}var _d=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 vd(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=ra(s);if(u.length<37||a!==void 0&&!aa(u.slice(0,32),Da(Ni(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(xl(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:yu({hash:!0,payload:ea(u,Da(ia(c),{as:`Bytes`})),publicKey:i,signature:o})}let yd=hd;async function bd(e){return gd(e)}function xd(e){return vd(e)}wa();async function Sd(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=ja(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Cd(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,ta(t)),i=na(new Uint8Array(r)),a=ua(la(i,0,32)),o=ua(la(i,32,64));return o>hu.CURVE.n/2n&&(o=hu.CURVE.n-o),{r:a,s:o}}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 wd(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new nf(e.type);return`${e.name}(${Td(e.inputs,{includeName:t})})`}function Td(e,{includeName:t=!1}={}){return e?e.map(e=>Ed(e,{includeName:t})).join(t?`, `:`,`):``}function Ed(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Td(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Dd=o((()=>{rf()}));function N(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Od=o((()=>{}));function P(e){return N(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var kd=o((()=>{Od()})),Ad,jd=o((()=>{Ad=`2.47.6`}));function Md(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Md(e.cause,t):t?null:e}var Nd,F,I=o((()=>{jd(),Nd={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Ad}`},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=Nd.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Nd.version?[`Version: ${Nd.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=Ad}walk(e){return Md(this,e)}}})),Pd,Fd,Id,Ld,Rd,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd,qd,Jd,Yd,Xd,Zd,Qd,$d,ef,tf,nf,rf=o((()=>{Dd(),kd(),I(),Pd=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`})}},Fd=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`})}},Id=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: (${Td(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}},Ld=class extends F{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Rd=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`})}},zd=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`})}},Bd=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`})}},Vd=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`})}},Hd=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`})}},Ud=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}},Wd=class extends F{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Gd=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`})}},Kd=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`})}},qd=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`})}},Jd=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`})}},Yd=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${wd(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${wd(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Xd=class extends F{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},Zd=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: (${Td(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}},Qd=class extends F{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${wd(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},$d=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`})}},ef=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`})}},tf=class extends F{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},nf=class extends F{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),af,of,sf,cf=o((()=>{I(),af=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`})}},of=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`})}},sf=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 lf(e,{dir:t,size:n=32}={}){return typeof e==`string`?uf(e,{dir:t,size:n}):df(e,{dir:t,size:n})}function uf(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new of({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function df(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new of({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 ff=o((()=>{cf()})),pf,mf,hf,gf,_f,vf=o((()=>{I(),pf=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`})}},mf=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`})}},hf=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`})}},gf=class extends F{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},_f=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function yf(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 bf=o((()=>{}));function xf(e,{size:t}){if(P(e)>t)throw new _f({givenSize:P(e),maxSize:t})}function L(e,t={}){let{signed:n}=t;t.size&&xf(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 Sf(e,t={}){let n=e;if(t.size&&(xf(n,{size:t.size}),n=yf(n)),yf(n)===`0x00`)return!1;if(yf(n)===`0x01`)return!0;throw new hf(n)}function Cf(e,t={}){let n=L(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new pf({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var wf=o((()=>{vf(),kd(),bf()}));function Tf(e,t={}){return typeof e==`number`||typeof e==`bigint`?R(e,t):typeof e==`string`?Of(e,t):typeof e==`boolean`?Ef(e,t):Df(e,t)}function Ef(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(xf(n,{size:t.size}),lf(n,{size:t.size})):n}function Df(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=kf[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(xf(r,{size:t.size}),lf(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 pf({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?lf(s,{size:r}):s}function Of(e,t={}){return Df(Af.encode(e),t)}var kf,Af,z=o((()=>{vf(),ff(),wf(),kf=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Af=new TextEncoder}));function jf(e,t={}){return typeof e==`number`||typeof e==`bigint`?Ff(e,t):typeof e==`boolean`?Mf(e,t):N(e)?Pf(e,t):If(e,t)}function Mf(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(xf(n,{size:t.size}),lf(n,{size:t.size})):n}function Nf(e){if(e>=Rf.zero&&e<=Rf.nine)return e-Rf.zero;if(e>=Rf.A&&e<=Rf.F)return e-(Rf.A-10);if(e>=Rf.a&&e<=Rf.f)return e-(Rf.a-10)}function Pf(e,t={}){let n=e;t.size&&(xf(n,{size:t.size}),n=lf(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=Nf(r.charCodeAt(t++)),i=Nf(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 Ff(e,t){return Pf(R(e,t))}function If(e,t={}){let n=Lf.encode(e);return typeof t.size==`number`?(xf(n,{size:t.size}),lf(n,{dir:`right`,size:t.size})):n}var Lf,Rf,zf=o((()=>{I(),Od(),ff(),wf(),z(),Lf=new TextEncoder,Rf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Bf(e,t){let n=t||`hex`,r=mr(N(e,{strict:!1})?jf(e):e);return n===`bytes`?r:Tf(r)}var Vf=o((()=>{gr(),Od(),zf(),z()}));function Hf(e){return Uf(e)}var Uf,Wf=o((()=>{zf(),Vf(),Uf=e=>Bf(jf(e))}));function Gf(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 Kf=o((()=>{I()})),qf,Jf=o((()=>{Bt(),Kf(),qf=e=>Gf(typeof e==`string`?e:Ce(e))}));function Yf(e){return Hf(qf(e))}var Xf=o((()=>{Wf(),Jf()})),Zf,Qf=o((()=>{Xf(),Zf=Yf})),$f,ep=o((()=>{I(),$f=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`})}}})),tp,np=o((()=>{tp=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 rp(e,t){if(ap.has(`${e}.${t}`))return ap.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Bf(If(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 ap.set(`${e}.${t}`,a),a}function ip(e,t){if(!sp(e,{strict:!1}))throw new $f({address:e});return rp(e,t)}var ap,op=o((()=>{ep(),zf(),Vf(),np(),up(),ap=new tp(8192)}));function sp(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(lp.has(r))return lp.get(r);let i=cp.test(e)?e.toLowerCase()===e?!0:n?rp(e)===e:!0:!1;return lp.set(r,i),i}var cp,lp,up=o((()=>{np(),op(),cp=/^0x[a-fA-F0-9]{40}$/,lp=new tp(8192)}));function dp(e){return typeof e[0]==`string`?pp(e):fp(e)}function fp(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 pp(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var mp=o((()=>{}));function hp(e,t,n,{strict:r}={}){return N(e,{strict:!1})?yp(e,t,n,{strict:r}):vp(e,t,n,{strict:r})}function gp(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new af({offset:t,position:`start`,size:P(e)})}function _p(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new af({offset:n,position:`end`,size:P(e)})}function vp(e,t,n,{strict:r}={}){gp(e,t);let i=e.slice(t,n);return r&&_p(i,t,n),i}function yp(e,t,n,{strict:r}={}){gp(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&_p(i,t,n),i}var bp=o((()=>{cf(),Od(),kd()})),xp,Sp,Cp=o((()=>{xp=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Sp=/^(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 wp(e,t){if(e.length!==t.length)throw new Bd({expectedLength:e.length,givenLength:t.length});let n=Dp(Tp({params:e,values:t}));return n.length===0?`0x`:n}function Tp({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(Ep({param:e[r],value:t[r]}));return n}function Ep({param:e,value:t}){let n=Fp(e.type);if(n){let[r,i]=n;return kp(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return Pp(t,{param:e});if(e.type===`address`)return Op(t);if(e.type===`bool`)return jp(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Sp.exec(e.type)??[];return Mp(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Ap(t,{param:e});if(e.type===`string`)return Np(t);throw new $d(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Dp(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 dp([...n,...r])}function Op(e){if(!sp(e))throw new $f({address:e});return{dynamic:!1,encoded:uf(e.toLowerCase())}}function kp(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new tf(e);if(!r&&e.length!==t)throw new Rd({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=Ep({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Dp(a);if(r){let t=R(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?dp([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:dp(a.map(({encoded:e})=>e))}}function Ap(e,{param:t}){let[,n]=t.type.split(`bytes`),r=P(e);if(!n){let t=e;return r%32!=0&&(t=uf(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:dp([uf(R(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new zd({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:uf(e,{dir:`right`})}}function jp(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:uf(Ef(e))}}function Mp(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 pf({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 Np(e){let t=Of(e),n=Math.ceil(P(t)/32),r=[];for(let e=0;e<n;e++)r.push(uf(hp(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:dp([uf(R(P(t),{size:32})),...r])}}function Pp(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=Ep({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Dp(r):dp(r.map(({encoded:e})=>e))}}function Fp(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Ip=o((()=>{rf(),ep(),I(),vf(),up(),mp(),ff(),kd(),bp(),z(),Cp()})),Lp,Rp=o((()=>{bp(),Xf(),Lp=e=>hp(Yf(e),0,4)}));function zp(e){let{abi:t,args:n=[],name:r}=e,i=N(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Lp(e)===r:e.type===`event`?Zf(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?Bp(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Vp(e.inputs,o.inputs,n);if(t)throw new Yd({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Bp(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return sp(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`&&Bp(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=>Bp(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Vp(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 Vp(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`))&&sp(n[r],{strict:!1}))return o}}var Hp=o((()=>{rf(),Od(),up(),Qf(),Rp()}));function Up(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var Wp=o((()=>{}));function Gp(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=zp({abi:t,args:n,name:r});if(!e)throw new Kd(r,{docsPath:Kp});i=e}if(i.type!==`function`)throw new Kd(void 0,{docsPath:Kp});return{abi:[i],functionName:Lp(wd(i))}}var Kp,qp=o((()=>{rf(),Rp(),Dd(),Hp(),Kp=`/docs/contract/encodeFunctionData`}));function Jp(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Gp(e),i=n[0];return pp([r,(`inputs`in i&&i.inputs?wp(i.inputs,t??[]):void 0)??`0x`])}var Yp=o((()=>{mp(),Ip(),qp()})),Xp,Zp,Qp,$p=o((()=>{Xp={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.`},Zp={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Qp={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),em,tm,nm,rm=o((()=>{I(),em=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},tm=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},nm=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function im(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(am);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var am,om=o((()=>{rm(),am={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 nm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new tm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new em({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 em({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 sm(e,t={}){return t.size!==void 0&&xf(e,{size:t.size}),L(Df(e,t),t)}function cm(e,t={}){let n=e;if(t.size!==void 0&&(xf(n,{size:t.size}),n=yf(n)),n.length>1||n[0]>1)throw new mf(n);return!!n[0]}function lm(e,t={}){return t.size!==void 0&&xf(e,{size:t.size}),Cf(Df(e,t),t)}function um(e,t={}){let n=e;return t.size!==void 0&&(xf(n,{size:t.size}),n=yf(n,{dir:`right`})),new TextDecoder().decode(n)}var dm=o((()=>{vf(),bf(),wf(),z()}));function fm(e,t){let n=typeof t==`string`?Pf(t):t,r=im(n);if(P(n)===0&&e.length>0)throw new Ld;if(P(t)&&P(t)<32)throw new Id({data:typeof t==`string`?t:Df(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]=pm(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function pm(e,t,{staticPosition:n}){let r=Fp(t.type);if(r){let[i,a]=r;return hm(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return ym(e,t,{staticPosition:n});if(t.type===`address`)return mm(e);if(t.type===`bool`)return gm(e);if(t.type.startsWith(`bytes`))return _m(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return vm(e,t);if(t.type===`string`)return bm(e,{staticPosition:n});throw new ef(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function mm(e){return[rp(Df(vp(e.readBytes(32),-20))),32]}function hm(e,t,{length:n,staticPosition:r}){if(!n){let n=r+lm(e.readBytes(Cm)),i=n+Sm;e.setPosition(n);let a=lm(e.readBytes(Sm)),o=xm(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=pm(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(xm(t)){let i=r+lm(e.readBytes(Cm)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=pm(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]=pm(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function gm(e){return[cm(e.readBytes(32),{size:32}),32]}function _m(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=lm(e.readBytes(32));e.setPosition(n+t);let r=lm(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Df(i),32]}return[Df(e.readBytes(Number.parseInt(i,10),32)),32]}function vm(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?sm(i,{signed:n}):lm(i,{signed:n}),32]}function ym(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(xm(t)){let o=n+lm(e.readBytes(Cm));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=pm(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]=pm(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function bm(e,{staticPosition:t}){let n=t+lm(e.readBytes(32));e.setPosition(n);let r=lm(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=um(yf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function xm(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(xm);let n=Fp(e.type);return!!(n&&xm({...e,type:n[1]}))}var Sm,Cm,wm=o((()=>{rf(),op(),om(),kd(),bp(),bf(),dm(),zf(),z(),Ip(),Sm=32,Cm=32}));function Tm(e){let{abi:t,data:n,cause:r}=e,i=hp(n,0,4);if(i===`0x`)throw new Ld({cause:r});let a=[...t||[],Zp,Qp].find(e=>e.type===`error`&&i===Lp(wd(e)));if(!a)throw new Ud(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?fm(a.inputs,hp(n,4)):void 0,errorName:a.name}}var Em=o((()=>{$p(),rf(),bp(),Rp(),wm(),Dd()})),Dm,Om=o((()=>{Dm=(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 km({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`?Dm(t[n]):t[n]}`).join(`, `)})`}var Am=o((()=>{Om()})),jm,Mm,Nm=o((()=>{jm={gwei:9,wei:18},Mm={ether:-9,wei:9}}));function Pm(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 Fm=o((()=>{}));function Im(e,t=`wei`){return Pm(e,jm[t])}var Lm=o((()=>{Nm(),Fm()}));function Rm(e,t=`wei`){return Pm(e,Mm[t])}var zm=o((()=>{Nm(),Fm()}));function Bm(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Vm(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+=Bm(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Bm(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Hm,Um,Wm=o((()=>{I(),Hm=class extends F{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},Um=class extends F{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Gm(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 Km,qm,Jm,Ym,Xm,Zm,Qm=o((()=>{Lm(),zm(),I(),Km=class extends F{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},qm=class extends F{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Gm(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`})}},Jm=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}},Ym=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}},Xm=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`})}},Zm=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=Gm({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${Im(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Rm(o)} gwei`,maxFeePerGas:s!==void 0&&`${Rm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Rm(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}}})),$m,eh,th=o((()=>{$m=e=>e,eh=e=>e})),nh,rh,ih,ah,oh,sh,ch=o((()=>{Wp(),$p(),Em(),Dd(),Am(),Hp(),Lm(),zm(),rf(),I(),Wm(),Qm(),th(),nh=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=Gm({from:(t?Up(t):void 0)?.address,to:u,value:d!==void 0&&`${Im(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Rm(o)} gwei`,maxFeePerGas:s!==void 0&&`${Rm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Rm(c)} gwei`,nonce:l});f&&(p+=`\\n${Vm(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}},rh=class extends F{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=zp({abi:t,args:n,name:a}),c=s?km({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?wd(s,{includeName:!0}):void 0,u=Gm({address:r&&$m(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}},ih=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=Tm({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=Xp[e]}else{let e=n?wd(n,{includeName:!0}):void 0,t=n&&a?km({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 Ud&&(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}},ah=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})}},oh=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`})}},sh=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}}})),lh,uh,dh,fh=o((()=>{Om(),I(),th(),lh=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: ${eh(a)}`,e&&`Request body: ${Dm(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}},uh=class extends F{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${eh(n)}`,`Request body: ${Dm(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}},dh=class extends F{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${eh(t)}`,`Request body: ${Dm(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),ph,mh,hh,gh,_h,vh,yh,bh,xh,Sh,Ch,wh,Th,Eh,Dh,Oh,kh,Ah,jh,Mh,Nh,Ph,Fh,Ih,Lh,Rh,zh,Bh,Vh,Hh,Uh=o((()=>{I(),fh(),ph=-1,mh=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 uh?e.code:t??ph}},hh=class extends mh{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},gh=class e extends mh{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(gh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),_h=class e extends mh{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(_h,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),vh=class e extends mh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(vh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),yh=class e extends mh{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(yh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),bh=class e extends mh{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(bh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),xh=class e extends mh{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(xh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Sh=class e extends mh{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(Sh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Ch=class e extends mh{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(Ch,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),wh=class e extends mh{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(wh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Th=class e extends mh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(Th,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Eh=class e extends mh{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(Eh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Dh=class e extends mh{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Dh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Oh=class e extends hh{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(Oh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),kh=class e extends hh{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(kh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Ah=class e extends hh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Ah,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),jh=class e extends hh{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(jh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Mh=class e extends hh{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Mh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Nh=class e extends hh{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(Nh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Ph=class e extends hh{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(Ph,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Fh=class e extends hh{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(Fh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Ih=class e extends hh{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(Ih,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Lh=class e extends hh{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Lh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Rh=class e extends hh{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Rh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),zh=class e extends hh{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(zh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Bh=class e extends hh{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Bh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Vh=class e extends hh{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Vh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Hh=class extends mh{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));rf(),I(),ch(),fh(),Uh();function Wh(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof sh?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 rh(e instanceof Ld?new ah({functionName:a,cause:e}):[3,bh.code].includes(c)&&(l||u||d||f)||c===xh.code&&u===`execution reverted`&&l?new ih({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof uh?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}op(),Vf();function Gh(e){return rp(`0x${Bf(`0x${e.substring(4)}`).substring(26)}`)}Od(),kd(),wf(),z();async function Kh({hash:e,signature:t}){let n=N(e)?e:Tf(e),{secp256k1:r}=await Promise.resolve().then(()=>(Uc(),fc));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=qh(Number(a??i));return new r.Signature(L(e),L(n)).addRecoveryBit(o)}let e=N(t)?t:Tf(t);if(P(e)!==65)throw Error(`invalid signature length`);let n=qh(Cf(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function qh(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 Jh({hash:e,signature:t}){return Gh(await Kh({hash:e,signature:t}))}I(),om(),zf(),z();function Yh(e,t=`hex`){let n=Xh(e),r=im(new Uint8Array(n.length));return n.encode(r),t===`hex`?Df(r.bytes):r.bytes}function Xh(e){return Array.isArray(e)?Zh(e.map(e=>Xh(e))):Qh(e)}function Zh(e){let t=e.reduce((e,t)=>e+t.length,0),n=$h(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 Qh(e){let t=typeof e==`string`?Pf(e):e,n=$h(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 $h(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.`)}mp(),zf(),z(),Vf();function eg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Bf(pp([`0x05`,Yh([t?R(t):`0x`,i,n?R(n):`0x`])]));return r===`bytes`?Pf(a):a}async function tg(e){let{authorization:t,signature:n}=e;return Jh({hash:eg(t),signature:n??t})}Lm(),zm(),I(),Qm();var ng=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=Gm({from:t?.address,to:u,value:d!==void 0&&`${Im(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Rm(o)} gwei`,maxFeePerGas:s!==void 0&&`${Rm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Rm(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}},rg,ig,ag,og,sg,cg,lg,ug,dg,fg,pg,mg,hg=o((()=>{zm(),I(),rg=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(rg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(rg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),ig=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Rm(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(ig,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),ag=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Rm(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(ag,`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/}),og=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(og,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),sg=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(sg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),cg=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(cg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),lg=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(lg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),ug=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(ug,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),dg=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(dg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),fg=class extends F{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(fg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),pg=class extends F{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Rm(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Rm(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(pg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),mg=class extends F{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function gg(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof F?e.walk(e=>e?.code===rg.code):e;return r instanceof F?new rg({cause:e,message:r.details}):rg.nodeMessage.test(n)?new rg({cause:e,message:e.details}):ig.nodeMessage.test(n)?new ig({cause:e,maxFeePerGas:t?.maxFeePerGas}):ag.nodeMessage.test(n)?new ag({cause:e,maxFeePerGas:t?.maxFeePerGas}):og.nodeMessage.test(n)?new og({cause:e,nonce:t?.nonce}):sg.nodeMessage.test(n)?new sg({cause:e,nonce:t?.nonce}):cg.nodeMessage.test(n)?new cg({cause:e,nonce:t?.nonce}):lg.nodeMessage.test(n)?new lg({cause:e}):ug.nodeMessage.test(n)?new ug({cause:e,gas:t?.gas}):dg.nodeMessage.test(n)?new dg({cause:e,gas:t?.gas}):fg.nodeMessage.test(n)?new fg({cause:e}):pg.nodeMessage.test(n)?new pg({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new mg({cause:e})}var _g=o((()=>{I(),hg()}));hg(),_g();function vg(e,{docsPath:t,...n}){return new ng((()=>{let t=gg(e,n);return t instanceof mg?e:t})(),{docsPath:t,...n})}function yg(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 bg=o((()=>{}));function xg(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 Sg=o((()=>{}));function Cg(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=wg(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=>Df(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=Tg[e.type]),e.value!==void 0&&(n.value=R(e.value)),n}function wg(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 Tg,Eg,Dg=o((()=>{z(),Sg(),Tg={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Eg=xg(`transactionRequest`,Cg)}));function Og(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new sf({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new sf({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function kg(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=Og(r)),i!==void 0){if(o.state)throw new Um;o.stateDiff=Og(i)}return o}function Ag(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!sp(n,{strict:!1}))throw new $f({address:n});if(t[n])throw new Hm({address:n});t[n]=kg(r)}return t}var jg=o((()=>{ep(),cf(),Wm(),up(),z()})),Mg,Ng=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)),Mg=2n**256n-1n}));function Pg(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?Up(t):void 0;if(a&&!sp(a.address))throw new $f({address:a.address});if(i&&!sp(i))throw new $f({address:i});if(n&&n>Mg)throw new ig({maxFeePerGas:n});if(r&&n&&r>n)throw new pg({maxFeePerGas:n,maxPriorityFeePerGas:r})}var Fg=o((()=>{Wp(),Ng(),ep(),hg(),up()}));zm(),I();var Ig=class extends F{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},Lg=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},Rg=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Rm(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};I();var zg=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`})}};wf(),Sg();let Bg={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Vg(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Cf(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?Cf(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Bg[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=Ug(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 Hg=xg(`transaction`,Vg);function Ug(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 Wg(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:Vg(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 Gg(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 zg({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||Wg)(s,`getBlock`)}async function Kg(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}wf();async function qg(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,Gg,`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,Gg,`getBlock`)({}),M(e,Kg,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new Lg;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function Jg(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 Ig;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await M(e,Gg,`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 Lg;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await qg(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,Kg,`getGasPrice`)({}))}}wf(),z();async function Yg(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return Cf(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?R(r):n]},{dedupe:!!r}))}zf(),z();function Xg(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=>Pf(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Df(e))}zf(),z();function Zg(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=>Pf(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Pf(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=>Df(e))}Od(),zf(),z();function Qg(e,t){let n=t||`hex`,r=jr(N(e,{strict:!1})?jf(e):e);return n===`bytes`?r:Tf(r)}z();function $g(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Qg(t,`bytes`);return i.set([n],0),r===`bytes`?i:Df(i)}function e_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push($g({commitment:e,to:r,version:n}));return i}let t_=4096,n_=32*t_;n_*6-1-1*t_*6,I();var r_=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},i_=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},a_=class extends F{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},o_=class extends F{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};om(),kd(),zf(),z();function s_(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Pf(e.data):e.data,r=P(n);if(!r)throw new i_;if(r>761855)throw new r_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=im(new Uint8Array(n_)),t=0;for(;t<t_;){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=>Df(e.bytes))}function c_(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??s_({data:t,to:r}),a=e.commitments??Xg({blobs:i,kzg:n,to:r}),o=e.proofs??Zg({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}Qm();function l_(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 qm({transaction:e})}hg(),Qm(),_g();function u_(e,{docsPath:t,...n}){return new Zm((()=>{let t=gg(e,n);return t instanceof mg?e:t})(),{docsPath:t,...n})}wf();async function d_(e){return Cf(await e.request({method:`eth_chainId`},{dedupe:!0}))}Wp(),bg(),Dg(),Fg();async function f_(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=Up(n),r=a?a.id:await M(e,d_,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();Pg(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Cg)({...yg(y,{format:x}),account:n?Up(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||Vg)(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,Gg,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new Ig;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 u_(n,{...t,chain:e.chain})}}Wp(),np(),Fg();let p_=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],m_=new Map,h_=new tp(128);async function g_(e,t){let n=t;n.account??=e.account,n.parameters??=p_;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,d_,`getChainId`)({}),c):n.chainId)}let u=r&&Up(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||h_.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,f_,`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 h_.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`)})&&h_.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,Gg,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await M(e,Yg,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=Xg({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=e_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=c_({blobs:p,commitments:e,proofs:Zg({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=l_(n)}catch{let t=m_.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,m_.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 Jg(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new Rg({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new Lg;if(n.gasPrice===void 0){let{gasPrice:t}=await Jg(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,__,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),Pg(n),delete n.parameters,n}Wp(),I(),z(),bg(),Dg(),jg(),Fg();async function __(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?Up(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 tg({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 g_(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=Ag(b);Pg(t);let C=e.chain?.formatters?.transactionRequest?.format,te=(C||Cg)({...yg(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?[te,S??e.experimental_blockTag??`latest`,ee]:S?[te,S]:[te]}))}catch(n){throw vg(n,{...t,account:i,chain:e.chain})}}function v_(e,t){if(!sp(e,{strict:!1}))throw new $f({address:e});if(!sp(t,{strict:!1}))throw new $f({address:t});return e.toLowerCase()===t.toLowerCase()}var y_=o((()=>{ep(),up()}));function b_(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}:{}}}rf(),rm(),kd(),Qf(),wm(),Dd();let x_=`/docs/contract/decodeEventLog`;function S_(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Wd({docsPath:x_});let c=t.find(e=>e.type===`event`&&o===Zf(wd(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Gd(o,{docsPath:x_});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 Qd({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=C_({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=fm(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 Id||e instanceof tm?new Zd({abiItem:c,data:n,params:g,size:P(n)}):e}else if(a)throw new Zd({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function C_({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(fm([e],t)||[])[0]}y_(),zf(),Vf(),Qf();function w_(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:Zf(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?b_(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=S_({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=S_({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)||!T_({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function T_(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`?v_(t,n):e.type===`string`||e.type===`bytes`?Bf(jf(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 E_(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=zp({abi:t,args:n,name:r});if(!e)throw new Kd(r,{docsPath:D_});a=e}if(a.type!==`function`)throw new Kd(void 0,{docsPath:D_});if(!a.outputs)throw new qd(a.name,{docsPath:D_});let o=fm(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var D_,O_=o((()=>{rf(),wm(),Hp(),D_=`/docs/contract/decodeFunctionResult`})),k_,A_,j_,M_,N_,P_=o((()=>{k_=[{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`}],A_=[{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`}]}],j_=[{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`}],[...j_],[...j_],M_=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],N_=[{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`}]})),F_=o((()=>{})),I_,L_,R_,z_,B_=o((()=>{I_=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,L_=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,R_=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,z_=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),V_,H_,U_,W_,G_,K_=o((()=>{I(),V_=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`})}},H_=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`})}},U_=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`})}},W_=class extends F{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},G_=class extends F{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function q_(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 Pd({docsPath:J_});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Fd({docsPath:J_});return pp([r,wp(i.inputs,n)])}var J_,Y_=o((()=>{rf(),mp(),Ip(),J_=`/docs/contract/encodeDeployData`}));function X_({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new V_({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new V_({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Z_=o((()=>{K_()}));function Q_(e,{docsPath:t,...n}){return new nh((()=>{let t=gg(e,n);return t instanceof mg?e:t})(),{docsPath:t,...n})}var $_=o((()=>{ch(),hg(),_g()}));function ev(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var tv=o((()=>{}));function nv({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=()=>rv.delete(t),s=()=>c().map(({args:e})=>e),c=()=>rv.get(t)||[],l=e=>rv.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=ev();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 rv,iv=o((()=>{tv(),rv=new Map})),av,ov,sv,cv=o((()=>{Om(),I(),th(),av=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=>` ${eh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ov=class extends F{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${eh(t)}`,`Response: ${Dm(e)}`],name:`OffchainLookupResponseMalformedError`})}},sv=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 lv(e){let{abi:t,data:n}=e,r=hp(n,0,4),i=t.find(e=>e.type===`function`&&r===Lp(wd(e)));if(!i)throw new Jd(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?fm(i.inputs,hp(n,4)):void 0}}var uv=o((()=>{rf(),bp(),Rp(),wm(),Dd()}));function dv(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=zp({abi:t,args:r,name:n});if(!e)throw new Hd(n,{docsPath:fv});i=e}if(i.type!==`error`)throw new Hd(void 0,{docsPath:fv});let a=Lp(wd(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new Vd(i.name,{docsPath:fv});o=wp(i.inputs,r)}return pp([a,o])}var fv,pv=o((()=>{rf(),mp(),Rp(),Ip(),Dd(),Hp(),fv=`/docs/contract/encodeErrorResult`}));function mv(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=zp({abi:t,name:n});if(!e)throw new Kd(n,{docsPath:hv});i=e}if(i.type!==`function`)throw new Kd(void 0,{docsPath:hv});if(!i.outputs)throw new qd(i.name,{docsPath:hv});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new tf(r)})();return wp(i.outputs,a)}var hv,gv=o((()=>{rf(),Ip(),Hp(),hv=`/docs/contract/encodeFunctionResult`}));async function _v(e){let{data:t,ccipRequest:n}=e,{args:[r]}=lv({abi:A_,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await _v({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=vv(e)}})),mv({abi:A_,functionName:`query`,result:[i,a]})}function vv(e){return e.name===`HttpRequestError`&&e.status?dv({abi:A_,errorName:`HttpError`,args:[e.status,e.shortMessage]}):dv({abi:[Zp],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var yv=o((()=>{P_(),$p(),uv(),pv(),gv()})),bv=c({ccipRequest:()=>Sv,offchainLookup:()=>xv,offchainLookupAbiItem:()=>wv,offchainLookupSignature:()=>Cv});async function xv(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=Tm({data:r,abi:[wv]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:Sv;try{if(!v_(i,o))throw new sv({sender:o,to:i});let{data:r}=await Ev(e,{blockNumber:t,blockTag:n,data:dp([l,wp([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await _v({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new av({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function Sv({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 lh({body:s,details:i?.error?Dm(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!N(i)){r=new ov({result:i,url:a});continue}return i}catch(e){r=new lh({body:s,details:e.message,url:a})}}throw r}var Cv,wv,Tv=o((()=>{Mv(),cv(),fh(),Em(),Ip(),y_(),mp(),Od(),yv(),Om(),Cv=`0x556f1830`,wv={name:`OffchainLookup`,type:`error`,inputs:[{name:`sender`,type:`address`},{name:`urls`,type:`string[]`},{name:`callData`,type:`bytes`},{name:`callbackFunction`,type:`bytes4`},{name:`extraData`,type:`bytes`}]}}));async function Ev(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?Up(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 te=u&&d,w=f&&p&&b&&d,ne=te||w,re=te?kv({code:u,data:d}):w?Av({data:d,factory:f,factoryData:p,to:b}):d;try{Pg(t);let n=(typeof a==`bigint`?R(a):void 0)||o,u=l?Ol(l):void 0,d=Ag(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Cg)({...yg(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&&Dv({request:p})&&!d&&!u)try{return await Ov(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof W_)&&!(e instanceof V_))throw e}let te=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),w=await e.request({method:`eth_call`,params:te});return w===`0x`?{data:void 0}:{data:w}}catch(n){let r=jv(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Tv(),bv));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 oh({factory:f}):Q_(n,{...t,account:C,chain:e.chain})}}function Dv({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 Ov(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 X_({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new W_})(),u=(typeof a==`bigint`?R(a):void 0)||o,{schedule:d}=nv({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=Jp({abi:k_,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:kv({code:z_,data:r})}:{to:l,data:r}},u]});return E_({abi:k_,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new sh({data:f});return f===`0x`?{data:void 0}:{data:f}}function kv(e){let{code:t,data:n}=e;return q_({abi:It([`constructor(bytes, bytes)`]),bytecode:I_,args:[t,n]})}function Av(e){let{data:t,factory:n,factoryData:r,to:i}=e;return q_({abi:It([`constructor(address, bytes, address, bytes)`]),bytecode:L_,args:[i,t,n,r]})}function jv(e){if(!(e instanceof F))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Mv=o((()=>{Bt(),kl(),Wp(),P_(),F_(),B_(),I(),K_(),ch(),O_(),Y_(),Yp(),Z_(),z(),$_(),bg(),Dg(),iv(),jg(),Fg()}));O_(),Yp(),Mv();async function Nv(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Jp({abi:n,args:i,functionName:a});try{let{data:t}=await M(e,Ev,`call`)({...o,data:s,to:r});return E_({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw Wh(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let Pv=new Map,Fv=new Map,Iv=0;function Lv(e,t,n){let r=++Iv,i=()=>Pv.get(e)||[],a=()=>{let t=i();Pv.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Fv.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(Pv.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`&&Fv.set(e,l),o}async function Rv(e){return new Promise(t=>setTimeout(t,e))}function zv(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Rv(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Rv(r),s())};s()})(),a}I();var Bv=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`})}},Vv=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};K_();function Hv({chain:e,currentChainId:t}){if(!e)throw new U_;if(t!==e.id)throw new H_({chain:e,currentChainId:t})}async function Uv(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}Wp(),I(),mp(),bg(),Dg(),np(),Fg();let Wv=new tp(128);async function Gv(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 Bv({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?Up(n):null;try{Pg(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await tg({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,d_,`getChainId`)({}),r&&Hv({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Cg)({...yg(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?dp([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Wv.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=>(Wv.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Wv.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await M(e,g_,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?dp([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...p_,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await M(e,Uv,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Vv({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Vv({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Vv?e:u_(e,{...t,account:y,chain:t.chain||void 0})}}Wp(),Yp();async function B(e,t){return B.internal(e,Gv,`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 Bv({docsPath:`/docs/contract/writeContract`});let u=a?Up(a):null,d=Jp({abi:i,args:s,functionName:c});try{return await M(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw Wh(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(B||={}),I();var Kv=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 qv(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 Rv(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()})}wf(),Sg();let Jv={\"0x0\":`reverted`,\"0x1\":`success`};function Yv(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=>b_(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Cf(e.transactionIndex):null,status:e.status?Jv[e.status]:null,type:e.type?Bg[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Xv=xg(`transactionReceipt`,Yv);Wp(),I(),Uh(),Yp(),mp(),wf(),z();let Zv=R(0,{size:32});async function Qv(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?Up(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?Jp({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?dp([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 Ph(new F(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new Bh(new F(e,{details:e}))}let t=[];for(let n of d){let i=Gv(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:dp([...n.map(e=>e.status===`fulfilled`?e.value:Zv),R(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw u_(n,{...t,account:l,chain:t.chain})}}bp(),bf(),wf();async function $v(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=yf(yp(t,-64,-32)),r=yp(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>Zv.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:Cf(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?Cf(i):void 0,receipts:a?.map(e=>({...e,blockNumber:L(e.blockNumber),gasUsed:L(e.gasUsed),status:Jv[e.status]}))??[],statusCode:l,status:c,version:o}}I(),tv(),Om();async function ey(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=Dm([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=ev(),p,m=Lv(l,{resolve:d,reject:f},t=>{let s=zv(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await qv(async()=>{let t=await M(e,$v,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Kv(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 ty({id:n}))},s):void 0,await u}var ty=class extends F{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let ny=256,ry;function iy(e=11){if(!ry||ny+e>256*2){ry=``,ny=0;for(let e=0;e<256;e++)ry+=(256+Math.random()*256|0).toString(16).substring(1)}return ry.substring(ny,ny+++e)}Wp();function ay(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?Up(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:iy(),...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 oy(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}Ng(),ep(),I(),K_(),hg(),up(),kd(),bp(),wf();function sy(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!sp(n))throw new $f({address:n});if(t<0)throw new G_({chainId:t})}ly(e)}function cy(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new i_;for(let e of t){let t=P(e),n=Cf(hp(e,0,1));if(t!==32)throw new a_({hash:e,size:t});if(n!==1)throw new o_({hash:e,version:n})}}ly(e)}function ly(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new G_({chainId:t});if(i&&!sp(i))throw new $f({address:i});if(r&&r>Mg)throw new ig({maxFeePerGas:r});if(n&&r&&n>r)throw new pg({maxFeePerGas:r,maxPriorityFeePerGas:n})}function uy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new G_({chainId:t});if(a&&!sp(a))throw new $f({address:a});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>Mg)throw new ig({maxFeePerGas:r})}function dy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!sp(a))throw new $f({address:a});if(t!==void 0&&t<=0)throw new G_({chainId:t});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>Mg)throw new ig({maxFeePerGas:r})}ep(),Qm(),up();function fy(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 Xm({storageKey:i[e]});if(!sp(r,{strict:!1}))throw new $f({address:r});t.push([r,i])}return t}Qm(),mp(),bf(),z();function py(e,t){let n=l_(e);return n===`eip1559`?gy(e,t):n===`eip2930`?_y(e,t):n===`eip4844`?hy(e,t):n===`eip7702`?my(e,t):vy(e,t)}function my(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;sy(e);let f=fy(u),p=by(n);return pp([`0x04`,Yh([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,...yy(e,t)])])}function hy(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;cy(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=>Df(e)),n=e.kzg,r=Xg({blobs:t,kzg:n});f===void 0&&(f=e_({commitments:r})),p===void 0&&(p=c_({blobs:t,commitments:r,proofs:Zg({blobs:t,commitments:r,kzg:n})}))}let m=fy(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??[],...yy(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 pp([`0x03`,Yh(p?[h,g,_,v]:h)])}function gy(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;ly(e);let d=fy(l);return pp([`0x02`,Yh([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,...yy(e,t)])])}function _y(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;uy(e);let u=fy(c);return pp([`0x01`,Yh([R(n),a?R(a):`0x`,l?R(l):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`,u,...yy(e,t)])])}function vy(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;dy(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 Km({v:t.v});return e})(),r=yf(t.r),i=yf(t.s);l=[...l,R(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,R(n),`0x`,`0x`]);return Yh(l)}function yy(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=yf(n.r),o=yf(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 by(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?Tf(e):`0x`,a,r?Tf(r):`0x`,...yy({},i)])}return t}op(),y_();async function xy({address:e,authorization:t,signature:n}){return v_(ip(e),await tg({authorization:t,signature:n}))}np();let Sy=new tp(8192);function Cy(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Sy.get(n))return Sy.get(n);let r=e().finally(()=>Sy.delete(n));return Sy.set(n,r),r}I(),fh(),Uh(),z(),Om();function wy(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 Th(Error(`method not supported`),{method:l});return Cy(()=>qv(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case gh.code:throw new gh(t);case _h.code:throw new _h(t);case vh.code:throw new vh(t,{method:n.method});case yh.code:throw new yh(t);case bh.code:throw new bh(t);case xh.code:throw new xh(t);case Sh.code:throw new Sh(t);case Ch.code:throw new Ch(t);case wh.code:throw new wh(t);case Th.code:throw new Th(t,{method:n.method});case Eh.code:throw new Eh(t);case Dh.code:throw new Dh(t);case Oh.code:throw new Oh(t);case kh.code:throw new kh(t);case Ah.code:throw new Ah(t);case jh.code:throw new jh(t);case Mh.code:throw new Mh(t);case Nh.code:throw new Nh(t);case Ph.code:throw new Ph(t);case Fh.code:throw new Fh(t);case Ih.code:throw new Ih(t);case Lh.code:throw new Lh(t);case Rh.code:throw new Rh(t);case zh.code:throw new zh(t);case Bh.code:throw new Bh(t);case 5e3:throw new Oh(t);case Vh.code:throw new Vh(t);default:throw e instanceof F?e:new Hh(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof lh){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})=>Ty(e)}),{enabled:i,id:i?Of(`${c}.${Dm(n)}`):void 0})}}function Ty(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===Eh.code||e.code===bh.code:e instanceof lh&&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 Ey(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 Dy(){return{}}I(),vf(),om(),zf(),z();function Oy(e,t=`hex`){return ky(im((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new gf(e);return Pf(e)}return e})(),{recursiveReadLimit:1/0}),t)}function ky(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Df(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Ay(e,n,128),i=e.readBytes(r);return t===`hex`?Df(i):i}return jy(e,Ay(e,n,192),t)}function Ay(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 jy(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(ky(e,n));return i}Od(),kd();function My(e){return N(e)&&P(e)===32}function Ny(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 Py(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Fy=Py();fh(),Om();function Iy(e,t={}){let{url:n,headers:r}=Ly(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 Ny(async({signal:e})=>{let t={...l,body:Dm(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Fy.take(),...e})):{jsonrpc:`2.0`,id:i.id??Fy.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 dh({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 lh({body:i,details:Dm(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof lh||e instanceof dh?e:new lh({body:i,cause:e,url:n})}}}}function Ly(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}}}mp(),kd(),z();function Ry(e){let t=typeof e==`string`?Of(e):typeof e.raw==`string`?e.raw:Df(e.raw);return dp([Of(`\u0019Ethereum Signed Message:\n${P(t)}`),t])}Vf();function zy(e,t){return Bf(Ry(e),t)}Om(),I();var By=class extends F{constructor({domain:e}){super(`Invalid domain \"${Dm(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Vy=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`.\"]})}},Hy=class extends F{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};rf(),ep(),up(),kd(),z(),Cp(),Om();function Uy(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 Dm({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Wy(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(Sp);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`&&!sp(o))throw new $f({address:o});let c=r.match(xp);if(c){let[e,t]=c;if(t&&P(o)!==Number.parseInt(t,10))throw new Xd({expectedSize:Number.parseInt(t,10),givenSize:P(o)})}let l=i[r];l&&(Ky(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new By({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Vy({primaryType:r,types:i})}function Gy({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 Ky(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Hy({type:e})}Ip(),mp(),z(),Vf();function qy(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Gy({domain:t}),...e.types};Wy({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Jy({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Yy({data:n,primaryType:r,types:i})),Bf(dp(a))}function Jy({domain:e,types:t}){return Yy({data:e,primaryType:`EIP712Domain`,types:t})}function Yy({data:e,primaryType:t,types:n}){return Bf(Xy({data:e,primaryType:t,types:n}))}function Xy({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Zy({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=eb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return wp(r,i)}function Zy({primaryType:e,types:t}){return Bf(Tf(Qy({primaryType:e,types:t})))}function Qy({primaryType:e,types:t}){let n=``,r=$y({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 $y({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])$y({primaryType:e.type,types:t},n);return n}function eb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Bf(Xy({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Bf(r)];if(n===`string`)return[{type:`bytes32`},Bf(Tf(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>eb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Bf(wp(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}Kt(),A();let tb=Ao(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function nb(e){if(typeof e==`string`){if(k(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new ab(e)}else Wc(e.authorization)}function rb(e){nb(e);let t=Vi(k(e,-64,-32)),n=k(e,-t-64,-64),r=k(e,0,-t-64),[i,a,o]=Do(tb,n);return{authorization:ll({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 ib(e){try{return nb(e),!0}catch{return!1}}var ab=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`})}};Qm(),bp(),wf();function ob(e){let t=yp(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`&&Cf(t)>=192)return`legacy`;throw new Jm({serializedType:t})}ep(),Qm(),up(),Od(),ff(),bf(),wf();function sb(e){let t=ob(e);return t===`eip1559`?ub(e):t===`eip2930`?db(e):t===`eip4844`?lb(e):t===`eip7702`?cb(e):fb(e)}function cb(e){let t=pb(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Ym({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:Cf(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:Cf(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=mb(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=hb(d)),sy(h),{...t.length===13?gb(t):void 0,...h}}function lb(e){let t=pb(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 Ym({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:Cf(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:Cf(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=mb(p)),y&&b&&x&&(S.sidecars=c_({blobs:y,commitments:b,proofs:x})),cy(S),{...r.length===14?gb(r):void 0,...S}}function ub(e){let t=pb(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Ym({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:Cf(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:Cf(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=mb(u)),ly(m),{...t.length===12?gb(t):void 0,...m}}function db(e){let t=pb(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Ym({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:Cf(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:Cf(r)),N(s)&&s!==`0x`&&(p.value=L(s)),N(i)&&i!==`0x`&&(p.gasPrice=L(i)),l.length!==0&&l!==`0x`&&(p.accessList=mb(l)),uy(p),{...t.length===11?gb(t):void 0,...p}}function fb(e){let t=Oy(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Ym({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:Cf(n)),N(o)&&o!==`0x`&&(d.value=L(o)),N(r)&&r!==`0x`&&(d.gasPrice=L(r)),dy(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 Km({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function pb(e){return Oy(`0x${e.slice(4)}`,`hex`)}function mb(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!sp(r,{strict:!1}))throw new $f({address:r});t.push({address:r,storageKeys:i.map(e=>My(e)?e:yf(e))})}return t}function hb(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:Cf(r),nonce:a===`0x`?0:Cf(a),...gb([o,s,c])})}return t}function gb(e){let t=e.slice(-3),n=t[0]===`0x`||L(t[0])===0n?27n:28n;return{r:uf(t[1],{size:32}),s:uf(t[2],{size:32}),v:n,yParity:n===27n?0:1}}I();var _b=class extends F{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function vb(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new _b({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}`)}P_(),B_(),rf(),I(),ch(),O_(),Yp(),Z_();async function yb(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 X_({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=Jp({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=Wh(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,Nv,`readContract`)({...f===null?{code:z_}:{address:f},abi:k_,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 Ld;if(!a)throw new sh({data:r});let e=E_({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=Wh(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 _}Kt(),A();function bb(e){if(k(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new Cb(e)}function xb(e){let{data:t,signature:n,to:r}=e;return E(Oo(Ao(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function Sb(e){try{return bb(e),!0}catch{return!1}}var Cb=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(),wf(),zf();function wb({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 Oc.Signature(L(e),L(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Pf(o)}P_(),B_(),ch(),Y_(),Yp(),op(),y_(),mp(),Od(),wf(),z(),Mv();async function Tb(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?wb(e):Df(e)})();try{if(s===`eoa`)try{if(v_(ip(n),await Jh({hash:i,signature:c})))return!0}catch{}return ib(c)?await Eb(e,{...t,multicallAddress:o,signature:c}):await Db(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(v_(ip(n),await Jh({hash:i,signature:c})))return!0}catch{}if(e instanceof kb)return!1;throw e}}async function Eb(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=rb(t.signature);if(await oy(e,{address:n,blockNumber:r,blockTag:i})===pp([`0xef0100`,s.address]))return await Ob(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 xy({address:n,authorization:d}))throw new kb;let f=await M(e,Nv,`readContract`)({...o?{address:o}:{code:z_},authorizationList:[d],abi:k_,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Jp({abi:M_,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new kb}async function Db(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||Sb(o)?o:xb({data:i,signature:o,to:r}))(),u=s?{to:s,data:Jp({abi:N_,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:q_({abi:N_,args:[n,a,l],bytecode:R_}),...c},{data:d}=await M(e,Ev,`call`)(u).catch(e=>{throw e instanceof nh?new kb:e});if(Sf(d??`0x0`))return!0;throw new kb}async function Ob(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await M(e,Nv,`readContract`)({address:n,abi:M_,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof rh?new kb:e})).startsWith(`0x1626ba7e`))return!0;throw new kb}var kb=class extends Error{};async function Ab(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await M(e,Qv,`sendCalls`)(t);return await M(e,ey,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}Wp(),z(),Dg(),Fg();async function jb(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Bv({docsPath:`/docs/actions/wallet/signTransaction`});let a=Up(n);Pg({account:a,...t});let o=await M(e,d_,`getChainId`)({});r!==null&&Hv({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Cg;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})}Wp();async function Mb(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Bv({docsPath:`/docs/actions/wallet/signTypedData`});let o=Up(n),s={EIP712Domain:Gy({domain:r}),...t.types};if(Wy({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Uy({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function Nb({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=iy();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:wy(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Pb(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>Nb({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}I();var Fb=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`})}};fh(),iv();function Ib(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 Fb;let b=Iy(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return Nb({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=nv({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 uh({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Object.freeze({status:`aborted`});function V(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 Lb=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Rb=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};let zb={};function Bb(e){return e&&Object.assign(zb,e),zb}function Vb(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 Hb(e,t){return typeof t==`bigint`?t.toString():t}function Ub(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Wb(e){return e==null}function Gb(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Kb=Symbol(`evaluating`);function H(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Kb)return r===void 0&&(r=Kb,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let qb=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Jb(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Yb(e){if(Jb(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Jb(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Xb=new Set([`string`,`number`,`symbol`]),Zb=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Qb(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function $b(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function ex(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 tx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function nx(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 rx(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function ix(e){return typeof e==`string`?e:e?.message}function ax(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=ix(e.inst?._zod.def?.error?.(e))??ix(t?.error?.(e))??ix(n.customError?.(e))??ix(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function ox(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function sx(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let cx=(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,Hb,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},lx=V(`$ZodError`,cx),ux=V(`$ZodError`,cx,{Parent:Error}),dx=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 Lb;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>ax(e,a,Bb())));throw qb(t,i?.callee),t}return o.value},fx=dx(ux),px=(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=>ax(e,a,Bb())));throw qb(t,i?.callee),t}return o.value})(ux),mx=(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 Lb;return a.issues.length?{success:!1,error:new(e??lx)(a.issues.map(e=>ax(e,i,Bb())))}:{success:!0,data:a.value}})(ux),hx=(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=>ax(e,i,Bb())))}:{success:!0,data:a.value}})(ux),gx=(e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return dx(e)(t,n,i)})(ux),_x=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},vx=/^-?\\d+n?$/,yx=/^-?\\d+(?:\\.\\d+)?$/,bx=/^(?:true|false)$/i,xx=V(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Sx=V(`$ZodCheckMaxLength`,(e,t)=>{var n;xx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Wb(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=ox(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Cx=V(`$ZodCheckMinLength`,(e,t)=>{var n;xx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Wb(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=ox(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),wx=V(`$ZodCheckStringFormat`,(e,t)=>{var n,r;xx.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=()=>{})}),Tx=V(`$ZodCheckRegex`,(e,t)=>{wx.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})}}),Ex={major:4,minor:3,patch:6},U=V(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ex;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=nx(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 Lb;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=nx(e,t))});else{if(e.issues.length===t)continue;r||=nx(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(nx(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Lb;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 Lb;return o.then(e=>t(e,r,a))}return t(o,r,a)}}H(e,`~standard`,()=>({validate:t=>{try{let n=mx(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return hx(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Dx=V(`$ZodString`,(e,t)=>{U.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??_x(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}}),Ox=V(`$ZodNumber`,(e,t)=>{U.init(e,t),e._zod.pattern=e._zod.bag.pattern??yx,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}}),kx=V(`$ZodBoolean`,(e,t)=>{U.init(e,t),e._zod.pattern=bx,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}}),Ax=V(`$ZodBigInt`,(e,t)=>{U.init(e,t),e._zod.pattern=vx,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}}),jx=V(`$ZodAny`,(e,t)=>{U.init(e,t),e._zod.parse=e=>e}),Mx=V(`$ZodUnknown`,(e,t)=>{U.init(e,t),e._zod.parse=e=>e}),Nx=V(`$ZodVoid`,(e,t)=>{U.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 Px(e,t,n){e.issues.length&&t.issues.push(...rx(n,e.issues)),t.value[n]=e.value}let Fx=V(`$ZodArray`,(e,t)=>{U.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=>Px(t,n,e))):Px(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Ix(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...rx(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function Lx(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=tx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Rx(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=>Ix(e,n,i,t,u))):Ix(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 zx=V(`$ZodObject`,(e,t)=>{if(U.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=Ub(()=>Lx(t));H(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=Jb,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=>Ix(n,t,e,s,r))):Ix(i,t,e,s,r)}return i?Rx(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function Bx(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=>!nx(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=>ax(e,r,Bb())))}),t)}let Vx=V(`$ZodUnion`,(e,t)=>{U.init(e,t),H(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),H(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),H(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),H(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=>Gb(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=>Bx(t,i,e,a)):Bx(s,i,e,a)}}),Hx=V(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Vx.init(e,t);let n=e._zod.parse;H(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=Ub(()=>{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(!Jb(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)}}),Ux=V(`$ZodTuple`,(e,t)=>{U.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=[...n].reverse().findIndex(e=>e._zod.optin!==`optional`),c=s===-1?0:n.length-s;if(!t.rest){let t=a.length>n.length,i=a.length<c-1;if(t||i)return r.issues.push({...t?{code:`too_big`,maximum:n.length,inclusive:!0}:{code:`too_small`,minimum:n.length},input:a,inst:e,origin:`array`}),r}let l=-1;for(let e of n){if(l++,l>=a.length&&l>=c)continue;let t=e._zod.run({value:a[l],issues:[]},i);t instanceof Promise?o.push(t.then(e=>Wx(e,r,l))):Wx(t,r,l)}if(t.rest){let e=a.slice(n.length);for(let n of e){l++;let e=t.rest._zod.run({value:n,issues:[]},i);e instanceof Promise?o.push(e.then(e=>Wx(e,r,l))):Wx(e,r,l)}}return o.length?Promise.all(o).then(()=>r):r}});function Wx(e,t,n){e.issues.length&&t.issues.push(...rx(n,e.issues)),t.value[n]=e.value}let Gx=V(`$ZodRecord`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Yb(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(...rx(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...rx(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`&&yx.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=>ax(e,r,Bb())),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}}),Kx=V(`$ZodEnum`,(e,t)=>{U.init(e,t);let n=Vb(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Xb.has(typeof e)).map(e=>typeof e==`string`?Qb(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}}),qx=V(`$ZodLiteral`,(e,t)=>{if(U.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`?Qb(e):e?Qb(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}}),Jx=V(`$ZodTransform`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Rb(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 Lb;return n.value=i,n}});function Yx(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let Xx=V(`$ZodOptional`,(e,t)=>{U.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,H(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),H(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Gb(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=>Yx(t,e.value)):Yx(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Zx=V(`$ZodNullable`,(e,t)=>{U.init(e,t),H(e._zod,`optin`,()=>t.innerType._zod.optin),H(e._zod,`optout`,()=>t.innerType._zod.optout),H(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Gb(e.source)}|null)$`):void 0}),H(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)}),Qx=V(`$ZodPipe`,(e,t)=>{U.init(e,t),H(e._zod,`values`,()=>t.in._zod.values),H(e._zod,`optin`,()=>t.in._zod.optin),H(e._zod,`optout`,()=>t.out._zod.optout),H(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=>$x(e,t.in,n)):$x(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>$x(e,t.out,n)):$x(r,t.out,n)}});function $x(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let eS=V(`$ZodCodec`,(e,t)=>{U.init(e,t),H(e._zod,`values`,()=>t.in._zod.values),H(e._zod,`optin`,()=>t.in._zod.optin),H(e._zod,`optout`,()=>t.out._zod.optout),H(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=>tS(e,t,n)):tS(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>tS(e,t,n)):tS(r,t,n)}}});function tS(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=>nS(e,r,t.out,n)):nS(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>nS(e,r,t.in,n)):nS(e,r,t.in,n)}}function nS(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let rS=V(`$ZodReadonly`,(e,t)=>{U.init(e,t),H(e._zod,`propValues`,()=>t.innerType._zod.propValues),H(e._zod,`values`,()=>t.innerType._zod.values),H(e._zod,`optin`,()=>t.innerType?._zod?.optin),H(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(iS):iS(r)}});function iS(e){return e.value=Object.freeze(e.value),e}let aS=V(`$ZodTemplateLiteral`,(e,t)=>{U.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||Zb.has(typeof e))n.push(Qb(`${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)}),oS=V(`$ZodCustom`,(e,t)=>{xx.init(e,t),U.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=>sS(t,n,r,e));sS(i,n,r,e)}});function sS(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(sx(e))}}var cS,lS=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function uS(){return new lS}(cS=globalThis).__zod_globalRegistry??(cS.__zod_globalRegistry=uS()),globalThis.__zod_globalRegistry;function dS(e,t){return new e({type:`string`,...ex(t)})}function fS(e,t){return new e({type:`number`,checks:[],...ex(t)})}function pS(e,t){return new e({type:`boolean`,...ex(t)})}function mS(e,t){return new e({type:`bigint`,...ex(t)})}function hS(e){return new e({type:`any`})}function gS(e){return new e({type:`unknown`})}function _S(e,t){return new e({type:`void`,...ex(t)})}function vS(e,t){return new Sx({check:`max_length`,...ex(t),maximum:e})}function yS(e,t){return new Cx({check:`min_length`,...ex(t),minimum:e})}function bS(e,t){return new Tx({check:`string_format`,format:`regex`,...ex(t),pattern:e})}function xS(e,t,n){let r=ex(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function SS(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...ex(n)})}let CS=V(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);U.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>fx(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>mx(e,t,n),e.parseAsync=async(t,n)=>px(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>hx(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)=>$b(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),wS=V(`ZodMiniString`,(e,t)=>{Dx.init(e,t),CS.init(e,t)});function W(e){return dS(wS,e)}let TS=V(`ZodMiniNumber`,(e,t)=>{Ox.init(e,t),CS.init(e,t)});function ES(e){return fS(TS,e)}let DS=V(`ZodMiniBoolean`,(e,t)=>{kx.init(e,t),CS.init(e,t)});function OS(e){return pS(DS,e)}let kS=V(`ZodMiniBigInt`,(e,t)=>{Ax.init(e,t),CS.init(e,t)});function AS(e){return mS(kS,e)}let jS=V(`ZodMiniAny`,(e,t)=>{jx.init(e,t),CS.init(e,t)});function MS(){return hS(jS)}let NS=V(`ZodMiniUnknown`,(e,t)=>{Mx.init(e,t),CS.init(e,t)});function PS(){return gS(NS)}let FS=V(`ZodMiniVoid`,(e,t)=>{Nx.init(e,t),CS.init(e,t)});function IS(e){return _S(FS,e)}let LS=V(`ZodMiniArray`,(e,t)=>{Fx.init(e,t),CS.init(e,t)});function RS(e,t){return new LS({type:`array`,element:e,...ex(t)})}let zS=V(`ZodMiniObject`,(e,t)=>{zx.init(e,t),CS.init(e,t),H(e,`shape`,()=>t.shape)});function G(e,t){return new zS({type:`object`,shape:e??{},...ex(t)})}let BS=V(`ZodMiniUnion`,(e,t)=>{Vx.init(e,t),CS.init(e,t)});function VS(e,t){return new BS({type:`union`,options:e,...ex(t)})}let HS=V(`ZodMiniDiscriminatedUnion`,(e,t)=>{Hx.init(e,t),CS.init(e,t)});function US(e,t,n){return new HS({type:`union`,options:t,discriminator:e,...ex(n)})}let WS=V(`ZodMiniTuple`,(e,t)=>{Ux.init(e,t),CS.init(e,t)});function GS(e,t,n){let r=t instanceof U;return new WS({type:`tuple`,items:e,rest:r?t:null,...ex(r?n:t)})}let KS=V(`ZodMiniRecord`,(e,t)=>{Gx.init(e,t),CS.init(e,t)});function qS(e,t,n){return new KS({type:`record`,keyType:e,valueType:t,...ex(n)})}let JS=V(`ZodMiniEnum`,(e,t)=>{Kx.init(e,t),CS.init(e,t),e.options=Object.values(t.entries)});function YS(e,t){return new JS({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...ex(t)})}let XS=V(`ZodMiniLiteral`,(e,t)=>{qx.init(e,t),CS.init(e,t)});function K(e,t){return new XS({type:`literal`,values:Array.isArray(e)?e:[e],...ex(t)})}let ZS=V(`ZodMiniTransform`,(e,t)=>{Jx.init(e,t),CS.init(e,t)});function QS(e){return new ZS({type:`transform`,transform:e})}let $S=V(`ZodMiniOptional`,(e,t)=>{Xx.init(e,t),CS.init(e,t)});function q(e){return new $S({type:`optional`,innerType:e})}let eC=V(`ZodMiniNullable`,(e,t)=>{Zx.init(e,t),CS.init(e,t)});function tC(e){return new eC({type:`nullable`,innerType:e})}function nC(e){return q(tC(e))}let rC=V(`ZodMiniPipe`,(e,t)=>{Qx.init(e,t),CS.init(e,t)});function iC(e,t){return new rC({type:`pipe`,in:e,out:t})}let aC=V(`ZodMiniCodec`,(e,t)=>{rC.init(e,t),eS.init(e,t)});function oC(e,t,n){return new aC({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let sC=V(`ZodMiniReadonly`,(e,t)=>{rS.init(e,t),CS.init(e,t)});function J(e){return new sC({type:`readonly`,innerType:e})}let cC=V(`ZodMiniTemplateLiteral`,(e,t)=>{aS.init(e,t),CS.init(e,t)});function lC(e,t){return new cC({type:`template_literal`,parts:e,...ex(t)})}let uC=V(`ZodMiniCustom`,(e,t)=>{oS.init(e,t),CS.init(e,t)});function dC(e,t){return xS(uC,e??(()=>!0),t)}function fC(e,t={}){return SS(uC,e,t)}function pC(e){return e}function mC(e){return e}let Y=()=>lC([`0x`,W()],`Expected address`),hC=()=>oC(VS([X(),AS()]),AS(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:zi(e),encode:e=>O(e)}),X=()=>lC([`0x`,W()],`Expected hex value`),gC=()=>oC(VS([X(),ES()]),ES(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Vi(e),encode:e=>O(e)}),_C=G({address:Y(),blockHash:X(),blockNumber:hC(),data:X(),logIndex:gC(),removed:OS(),topics:J(RS(X())),transactionHash:X(),transactionIndex:gC()}),vC=G({blobGasPrice:q(hC()),blobGasUsed:q(hC()),blockHash:X(),blockNumber:hC(),contractAddress:tC(Y()),cumulativeGasUsed:hC(),effectiveGasPrice:hC(),feePayer:q(Y()),feeToken:q(Y()),from:Y(),gasUsed:hC(),logs:RS(_C),logsBloom:X(),root:q(X()),status:oC(X(),YS([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:tC(Y()),transactionHash:X(),transactionIndex:gC(),type:X()}),yC=dC(),bC=VS([K(`secp256k1`),K(`p256`),K(`webAuthn`)]),xC=G({address:Y(),chainId:hC(),expiry:nC(gC()),keyId:Y(),keyType:bC,limits:q(J(RS(G({token:Y(),limit:hC()})))),signature:yC}),SC=G({data:q(X()),to:q(Y()),value:q(hC())}),CC=G({accessList:q(RS(G({address:Y(),storageKeys:RS(X())}))),calls:q(J(RS(SC))),chainId:q(gC()),data:q(X()),feePayer:q(VS([OS(),W()])),feeToken:q(Y()),from:q(Y()),gas:q(hC()),keyAuthorization:q(xC),maxFeePerGas:q(hC()),maxPriorityFeePerGas:q(hC()),nonce:q(gC()),nonceKey:q(hC()),to:q(Y()),validAfter:q(gC()),validBefore:q(gC()),value:q(hC())});var wC;(function(e){e.schema=pC({method:K(`eth_accounts`),params:void 0,returns:J(RS(Y()))})})(wC||={});var TC;(function(e){e.schema=pC({method:K(`eth_chainId`),params:void 0,returns:X()})})(TC||={});var EC;(function(e){e.schema=pC({method:K(`eth_requestAccounts`),params:void 0,returns:J(RS(Y()))})})(EC||={});var DC;(function(e){e.schema=pC({method:K(`eth_sendTransaction`),params:J(GS([CC])),returns:X()})})(DC||={});var OC;(function(e){e.schema=pC({method:K(`eth_fillTransaction`),params:J(GS([CC])),returns:MS()})})(OC||={});var kC;(function(e){e.schema=pC({method:K(`eth_signTransaction`),params:J(GS([CC])),returns:X()})})(kC||={});var AC;(function(e){e.schema=pC({method:K(`eth_sendTransactionSync`),params:J(GS([CC])),returns:vC})})(AC||={});var jC;(function(e){e.schema=pC({method:K(`eth_signTypedData_v4`),params:J(GS([Y(),W()])),returns:X()})})(jC||={});var MC;(function(e){e.schema=pC({method:K(`personal_sign`),params:J(GS([X(),Y()])),returns:X()})})(MC||={});let NC=q(G({feePayer:q(VS([OS(),W()])),sync:q(OS())}));var PC;(function(e){e.schema=pC({method:K(`wallet_sendCalls`),params:q(J(GS([G({atomicRequired:q(OS()),calls:J(RS(SC)),capabilities:NC,chainId:q(gC()),from:q(Y()),version:q(W())})]))),returns:G({atomic:q(OS()),capabilities:NC,chainId:q(gC()),id:W(),receipts:q(RS(vC)),status:q(ES()),version:q(W())})})})(PC||={});var FC;(function(e){e.schema=pC({method:K(`wallet_getBalances`),params:q(J(GS([G({account:q(Y()),chainId:q(gC()),tokens:q(J(RS(Y())))})]))),returns:J(RS(G({address:Y(),balance:hC(),decimals:ES(),display:W(),name:W(),symbol:W()})))})})(FC||={});var IC;(function(e){e.schema=pC({method:K(`wallet_getCapabilities`),params:q(J(VS([GS([Y()]),GS([Y(),J(RS(X()))])]))),returns:qS(X(),G({accessKeys:q(G({status:VS([K(`supported`),K(`unsupported`)])})),atomic:G({status:VS([K(`supported`),K(`ready`),K(`unsupported`)])}),feePayer:q(G({status:VS([K(`supported`),K(`unsupported`)])}))}))})})(IC||={});var LC;(function(e){e.parameters=G({address:q(Y()),expiry:ES(),keyType:q(bC),limits:q(J(RS(G({token:Y(),limit:hC()})))),publicKey:q(X())});let t=G({keyAuthorization:xC,rootAddress:Y()});e.schema=pC({method:K(`wallet_authorizeAccessKey`),params:J(GS([e.parameters])),returns:t})})(LC||={});var RC;(function(e){e.parameters=G({address:q(Y()),expiry:ES(),keyType:q(bC),limits:J(RS(G({token:Y(),limit:hC()}))),publicKey:q(X())})})(RC||={});var zC;(function(e){e.schema=pC({method:K(`wallet_revokeAccessKey`),params:J(GS([G({address:Y(),accessKeyAddress:Y()})])),returns:void 0})})(zC||={});var BC;(function(e){e.authorizeAccessKey=q(LC.parameters),e.capabilities={request:q(VS([G({digest:q(X()),authorizeAccessKey:e.authorizeAccessKey,method:K(`register`),name:q(W()),userId:q(W())}),G({digest:q(X()),credentialId:q(W()),authorizeAccessKey:e.authorizeAccessKey,method:q(K(`login`)),selectAccount:q(OS())})])),result:G({keyAuthorization:q(xC),signature:q(X())})},e.schema=pC({method:K(`wallet_connect`),params:q(J(GS([G({capabilities:e.capabilities.request,chainId:q(gC()),version:q(W())})]))),returns:G({accounts:J(RS(G({address:Y(),capabilities:e.capabilities.result})))})})})(BC||={});var VC;(function(e){let t=q(RC.parameters);e.parameters=G({capabilities:q(VS([G({digest:q(X()),authorizeAccessKey:t,method:K(`register`),name:q(W()),userId:q(W())}),G({digest:q(X()),credentialId:q(W()),authorizeAccessKey:t,method:q(K(`login`)),selectAccount:q(OS())})])),chainId:q(gC()),version:q(W())})})(VC||={});var HC;(function(e){e.schema=pC({method:K(`wallet_disconnect`),params:void 0,returns:void 0})})(HC||={});var UC;(function(e){e.schema=pC({method:K(`wallet_getCallsStatus`),params:q(J(GS([W()]))),returns:G({atomic:OS(),chainId:gC(),id:W(),receipts:q(RS(vC)),status:ES(),version:W()})})})(UC||={});var WC;(function(e){e.schema=pC({method:K(`wallet_switchEthereumChain`),params:J(GS([G({chainId:gC()})])),returns:void 0})})(WC||={});var GC;(function(e){e.schema=pC({method:K(`wallet_deposit`),params:J(GS([G({address:q(Y()),chainId:q(gC()),token:q(Y()),value:q(W())})])),returns:IS()})})(GC||={}),RC.parameters,VC.parameters;let KC=mC([wC.schema,TC.schema,OC.schema,EC.schema,DC.schema,AC.schema,kC.schema,jC.schema,MC.schema,LC.schema,BC.schema,GC.schema,HC.schema,FC.schema,UC.schema,IC.schema,zC.schema,PC.schema,WC.schema]),qC=nd();function JC(e){return e.params?G({method:e.method,params:e.params}):G({method:e.method})}let YC=US(`method`,KC.map(JC));function XC(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)}function ZC(e){let t=Sl(e);return JSON.parse(t)}function QC(e){return bl(Ti(e),{pad:!1,url:!0})}function $C(){return W().check(bS(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function ew(){return W().check(bS(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function tw(){return W().check(bS(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function nw(){return W().check(bS(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let rw=G({description:q(W()),digest:q(W().check(bS(/^sha-256=/,`Invalid digest format`))),expires:q(ew()),id:W(),intent:W(),method:W(),opaque:q(qS(W(),W())),realm:W(),request:qS(W(),PS())});function iw(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=l?_w({...e,expires:u,...i&&{opaque:i}},{secretKey:l}):e.id;return rw.parse({id:d,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i&&{opaque:i}})}function aw(e,t){let n=ow(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=sw(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 iw({...a,request:ZC(r),...i&&{meta:ZC(i)}},t)}function ow(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(!uw(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 sw(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]=cw(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function cw(e,t){if(e[t]===`\"`)return lw(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function lw(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 uw(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 dw(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return aw(n,t)}function fw(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return dw(e.headers,t)}function pw(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return mw(e.headers,t)}function mw(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return hw(n,t)}function hw(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 aw(e.slice(r,a).replace(/,\\s*$/,``),t)})}function gw(e){return[e.realm,e.method,e.intent,QC(e.request),e.expires??``,e.digest??``,e.opaque?QC(e.opaque):``].join(`|`)}function _w(e,t){let n=gw(e);return vl(Ea(ia(t.secretKey),ia(n),{as:`Bytes`}),{url:!0,pad:!1})}function vw(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=ww(n)}return t}function yw(e,t){let n=vw(e),r=Aw(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[ww(e)]??1,index:t}));return{definition:r,entries:i,header:xw(i),keys:n}}function bw(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)=>Ow(e,t))}function xw(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${Pw(n)}`}).join(`, `)}function Sw(e,t){return e.map((e,n)=>{let r=Tw(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 Cw(e,t,n){let r=new Map;for(let e of t){let t=ww(e);r.has(t)||r.set(t,e)}let i=Sw(e.filter(e=>r.has(ww(e))),n)[0];if(i)return{challenge:i,method:r.get(ww(i))}}function ww(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function Tw(e,t){let n;for(let r of t){if(!Ew(e,r))continue;let t={...r,specificity:Dw(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 Ew(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function Dw(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function Ow(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}`);Fw(r,`method`),Fw(i,`intent`);let a=1;for(let t of kw(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=Mw(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function kw(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function Aw(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>ww(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]=jw(t,`payment preference \"${e}\"`)}return a}function jw(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return Nw(e,t)}function Mw(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 Nw(Number(e),t)}function Nw(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 Pw(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function Fw(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let Iw=Symbol.for(`mppx.fetch.wrapper`),Lw;function Rw(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??yw(i),s=Ww(r),c=async(e,t)=>{let r=Uw(e,t?.headers),c=r.has(`Accept-Payment`),l=qw(r,o),u=Hw(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=pw(d),g=Cw(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,y=(a?await a(_,{createCredential:async e=>Kw(_,v,e??f)}):void 0)??await Kw(_,v,f);return Gw(y),s(u.input,{...m,headers:Vw(u.headers,y)})};return c[Iw]=s,c}function zw(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);Lw||=globalThis.fetch,globalThis.fetch=Rw({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(Xw()?`same-origin`:`always`),fetch:globalThis.fetch})}function Bw(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 Vw(e,t){let n=Bw(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function Hw(e,t,n,r,i,a){let o=!!r&&!i&&Jw(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 Uw(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function Ww(e){let t=e;for(;t[Iw];)t=t[Iw];return t}function Gw(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 Kw(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 qw(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:bw(n),header:n}}catch{return t}}function Jw(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=Zw(e);return t===`same-origin`?Xw()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>Yw(n,e))}function Yw(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 Xw(){return globalThis.location!==void 0}function Zw(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,Xw()?globalThis.location.href:void 0)}var Qw=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},$w=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function eT(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new Qw;try{let e=Sl(t[1]),n=JSON.parse(e);return{challenge:rw.parse({...n.challenge,request:ZC(n.challenge.request)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new $w}}function tT(e){let t={challenge:{...e.challenge,request:QC(e.challenge.request)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${bl(JSON.stringify(t),{pad:!1,url:!0})}`}function nT(e){return e}function rT(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}Kt(),A(),ki();let iT=`0x01`,aT=`0x02`,oT=`0x03`,sT=`0x04`,cT=`0x7777777777777777777777777777777777777777777777777777777777777777`;function lT(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:lT({...e,signature:t.inner}):Ga(uT(e))}function uT(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Yl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return uT({payload:t,signature:n.inner})}}function dT(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?k(e,0,-Li(cT)):e;if(Li(t)===65){let e=Kc(t);return Wc(e),{signature:e,type:`secp256k1`}}let n=k(t,0,1),r=k(t,1),i=Li(r);if(n===iT){if(i!==129)throw new yT({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:zi(k(r,64,96)),y:zi(k(r,96,128))},prehash:Vi(k(r,128,129))!==0,signature:{r:zi(k(r,0,32)),s:zi(k(r,32,64))},type:`p256`}}if(n===aT){if(i<128)throw new yT({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=Hi(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 yT({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:zi(k(r,e+64,e+96)),y:zi(k(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:zi(k(r,e,e+32)),s:zi(k(r,e+32,e+64))},type:`webAuthn`}}if(n===oT||n===sT)return{userAddress:k(r,0,20),inner:dT(k(r,20)),type:`keychain`,version:n===sT?`v2`:`v1`};throw new yT({reason:`Unknown signature type identifier: ${n}. Expected ${iT} (P256), ${aT} (WebAuthn), ${oT} (Keychain V1), or ${sT} (Keychain V2)`,serialized:t})}function fT(e,t){if(typeof e==`string`)return dT(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=mT(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:Ga(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:Ga(Yl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function pT(e){if(e.type===`secp256k1`)return{signature:Xc(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:zi(e.pubKeyX),y:zi(e.pubKeyY)},signature:{r:zi(e.r),s:zi(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Li(t),r,i;for(let e=37;e<n;e++){let n=Hi(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 yT({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:zi(e.pubKeyX),y:zi(e.pubKeyY)},signature:{r:zi(e.r),s:zi(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:pT(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new vT({envelope:e})}function mT(e){if(typeof e!=`object`||!e)throw new vT({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 vT({envelope:e})}function hT(e,t={}){let n=mT(e);if(n===`secp256k1`)return E(Qc(e.signature),t.magic?cT:`0x`);if(n===`p256`){let n=e;return E(iT,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?cT:`0x`)}if(n===`webAuthn`){let n=e;return E(aT,E(n.metadata.authenticatorData,Ni(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?cT:`0x`)}if(n===`keychain`){let n=e;return E(n.version===`v1`?oT:sT,n.userAddress,hT(n.inner),t.magic?cT:`0x`)}throw new vT({envelope:e})}function gT(e){let t=mT(e);if(t===`secp256k1`)return{...$c(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,Ni(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:gT(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new vT({envelope:e})}function _T(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return Ga(t.publicKey)})();if(!r)return!1;let i=fT(e);if(i.type===`secp256k1`)return r?Zl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return Ka(Ga(i.publicKey),r)?yu({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return Ka(Ga(i.publicKey),r)?xd({challenge:ji(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new bT(`Unable to verify signature envelope of type \"${i.type}\".`)}var vT=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Di(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},yT=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`})}},bT=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};Kt(),A();function xT(e){return e.startsWith(`tempo`)?ST(e).address:e}function ST(e){if(!e.startsWith(`tempox`))throw new CT({address:e});let t=e.slice(6);return Ai(t,{strict:!0}),{address:Ua(t)}}var CT=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 wT(e,t={}){if(typeof e.chainId==`string`)return TT(e);let n={...e,address:xT(e.address)};return t.signature?{...n,signature:t.signature}:n}function TT(e){let{address:t,chainId:n,nonce:r}=e,i=pT(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function ET(e){return e.map(e=>TT(e))}function DT(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=dT(i)),wT(a)}function OT(e){let t=[];for(let n of e)t.push(DT(n));return t}function kT(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:O(n),nonce:O(r),signature:gT(i)}}function AT(e){return e.map(e=>kT(e))}function jT(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?hT(e.signature):void 0;return[n?O(n):`0x`,t,r?O(r):`0x`,...i?[i]:[]]}function MT(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(jT(n));return t}A();function NT(e,t={}){if(`keyId`in e)return PT(e);let n=e,r={...n,address:xT(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:xT(e.token)}))}:{}};return t.signature?{...r,signature:fT(t.signature)}:r}function PT(e){let{chainId:t,keyId:n,expiry:r=0,limits:i,keyType:a}=e,o=pT(e.signature);return{address:n,chainId:t===`0x`?0n:zi(t),expiry:Number(r),limits:i?.map(e=>({token:e.token,limit:BigInt(e.limit)})),signature:o,type:a}}function FT(e){let[t,n]=e,[r,i,a,o,s]=t,c=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),l={address:a,expiry:o===void 0?void 0:UT(o),type:c,chainId:r===`0x`?0n:zi(r),...o===void 0?{}:{expiry:UT(o)},...s===void 0?{}:{limits:s.map(([e,t])=>({token:e,limit:HT(t)}))}};return n&&(l.signature=dT(n)),NT(l)}function IT(e){return LT(e)}function LT(e){let[t]=zT(e);return Ta(qo(t))}function RT(e){let{address:t,chainId:n,expiry:r,limits:i,type:a,signature:o}=e;return{chainId:n===0n?`0x`:O(n),expiry:typeof r==`number`?O(r):null,limits:i?.map(({token:e,limit:t})=>({token:e,limit:O(t)})),keyId:xT(t),signature:gT(o),keyType:a}}function zT(e){let{address:t,chainId:n,expiry:r,limits:i}=e,a=e.signature?hT(e.signature):void 0,o=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),s=i?.map(e=>[e.token,BT(e.limit)]);return[[BT(n),o,t,typeof r==`number`||s?VT(r??0):void 0,s].filter(Boolean),...a?[a]:[]]}function BT(e){return e===0n?`0x`:O(e)}function VT(e){return e===0?`0x`:O(e)}function HT(e){return e===`0x`?0n:BigInt(e)}function UT(e){return e===`0x`?0:Vi(e)}A();let WT=`0x20c0`;function GT(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):KT(e)}function KT(e){let t=xT(e);if(!t.toLowerCase().startsWith(WT))throw Error(`invalid tip20 address.`);return zi(k(t,6))}function Z(e){if(typeof e==`string`){let t=xT(e);return Ha(t),t}return E(WT,O(e,{size:18}))}A();let qT={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function JT(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ta(Ni(qT[e]??e))}let YT={...Cl,tempo:`0x76`},XT={...wl,\"0x76\":`tempo`};function ZT(e,t={}){if(!e)return null;let n=Tl(e);return n.type=XT[e.type],e.aaAuthorizationList&&(n.authorizationList=ET(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=pT(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=PT(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=Xc(e.feePayerSignature),n.feePayerSignature.v=nl(n.feePayerSignature.yParity)),n}A();function QT(e){let t=rd({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=AT(e.authorizationList)),e.calls&&(t.calls=e.calls.map(e=>({to:e.to?xT(e.to):e.to,value:e.value?O(e.value):`0x`,data:e.data??`0x`}))),e.feeToken!==void 0&&(t.feeToken=Z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=RT(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 Ii(6);if(typeof e.nonceKey==`bigint`)return O(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==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=YT.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}Kt(),A();let $T=`tempo`;function eE(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new sE;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new cE({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&Ha(e.to,{strict:!1});if(n<=0)throw new cd({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new sd({feeCap:r});if(i&&r&&i>r)throw new ud({maxFeePerGas:r,maxPriorityFeePerGas:i})}function tE(e){let t=Vo(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 ld({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:$T});let y={chainId:Number(n),type:$T};Ui(a)&&a!==`0x`&&(y.gas=BigInt(a)),Ui(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),Ui(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),Ui(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),Ui(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),Ui(u)&&u!==`0x`&&(y.validBefore=Number(u)),Ui(d)&&d!==`0x`&&(y.validAfter=Number(d)),Ui(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=Ro(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=OT(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||qa(p)?(y.feePayerSignature=null,qa(p)&&(y.from=p)):y.feePayerSignature=Zc(p)),_&&(y.keyAuthorization=FT(_));let b=v?dT(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=lT({payload:iE(nE(y)),signature:b,root:!0})}catch{}return eE(y),y}function nE(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?tE(e):e;return i.from&&=xT(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:xT(e.to)}:{}})),eE(i),{...i,...r?{signature:fT(r)}:{},...n?{feePayerSignature:Jc(n)}:{},type:`tempo`}}function rE(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;eE(e);let h=zo(n),g=t.signature||e.signature,_=MT(r),v=i.map(e=>[e.to?xT(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=fT(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return Ga(t.publicKey);if(t.type===`secp256k1`)return Jl({payload:iE(nE(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?el(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?[zT(c)]:[],...g?[hT(fT(g))]:[]];return E(t.format===`feePayer`?`0x78`:`0x76`,qo(x))}function iE(e,t={}){let n=aE(e,{presign:!0});return t.from?Ta(E(`0x04`,n,xT(t.from))):n}function aE(e,t={}){return Ta(rE({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function oE(e,t){let n=xT(t.sender);return Ta(rE({...e,signature:void 0},{sender:n,format:`feePayer`}))}var sE=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},cE=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 lE(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:l_(e)}function uE(e){try{return lE(e)===`tempo`}catch{return!1}}function dE(e){let t=k(e,0,1);return t===`0x76`||t===`0x78`?pE(e):sb(e)}async function fE(e,t){if(!uE(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 py(e,{r:O(n,{size:32}),s:O(r,{size:32}),yParity:i})}return py(e,t)}if(lE(e)===`tempo`)return mE(e,t);throw Error(`Unsupported transaction type`)}function pE(e){let{feePayerSignature:t,nonce:n,...r}=tE(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 mE(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return fT({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=nE(c,{signature:n}),r=oE(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Jl({payload:iE(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return rE(t,{feePayerSignature:Jc(await e.feePayer.sign({hash:r}))})}return i===!0?n?rE(c,{format:`feePayer`,sender:e.from,signature:n}):rE(c,{feePayerSignature:null}):rE({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}A(),Wp(),Dg();function hE(e){if(!uE(e))return Vg(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=ZT(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:YT[i.type],type:i.type}}function gE(e){return Yv(e)}function _E(e,t){let n=e,r=n.account?Up(n.account):void 0;if(!uE(n))return Cg(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=QT({...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`?Up(n.feePayer):n.feePayer}:{}}}let vE=new Map;async function yE(e){vE.set(e,(vE.get(e)??0)+1),await Promise.resolve();let t=(vE.get(e)??0)>1;return queueMicrotask(()=>{let t=vE.get(e)??0;t<=1?vE.delete(e):vE.set(e,t-1)}),t}Ng(),Dg();let bE={blockTime:1e3,extendSchema:Dy(),formatters:{transaction:Hg({exclude:[`aaAuthorizationList`],format:hE}),transactionReceipt:Xv({format:gE}),transactionRequest:Eg({format:_E})},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 yE(e):!1})()?(n.nonceKey=Mg,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)=>fE(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=dT(i);if(a.type!==`keychain`){let i=await oy(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return _T(a,{address:n,payload:r})}}return await M(e,Tb,`verifyHash`)({...t,chain:null})}},xE=Ey({...bE,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`]}}}),SE=Ey({...bE,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),CE=Ey({...bE,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:[]}],wE=[{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:[]}],TE=[{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(),Wp(),Vf();function EE(e){let{access:t}=e;return t?PE(e):NE(e)}function DE(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=_u({privateKey:e});return EE({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=yd({...t,challenge:n,rpId:r,origin:i});return hT({metadata:a,signature:vu({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function OE(e,t={}){let{access:n,internal_version:r}=t,i=_u({privateKey:e});return EE({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return hT({signature:vu({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function kE(e,t={}){let{access:n,internal_version:r}=t;return EE({access:n,internal_version:r,keyType:`secp256k1`,publicKey:ql({privateKey:e}),async sign(t){let{hash:n}=t;return Qc(Xl({payload:n,privateKey:e}))}})}function AE(e,t={}){let{id:n}=e,r=Na(e.publicKey);return EE({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await bd({...t,challenge:e,credentialId:n});return hT({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function jE(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return EE({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return hT({signature:await Cd({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function ME(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??Ga(e.publicKey),o=Fa(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Bf(E(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?hT(fT({userAddress:n,inner:fT(o),type:`keychain`,version:i})):t===`secp256k1`?o:E(o,cT)}return{address:Ua(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=fT(await s({hash:eg({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:zy(t)})},async signTransaction(e,t){let{serializer:n=fE}=t??{};return await n(e,fT(await s({hash:Bf(await n(e))})))},async signTypedData(e){return await s({hash:qy(e)})},publicKey:o,source:r,type:`local`}}function NE(e){let t=ME(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return NT({address:o,chainId:r,expiry:i,limits:a,signature:fT(await t.sign({hash:IT({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function PE(e){let{access:t}=e,{address:n}=Up(t);return{...ME({...e,parentAddress:n}),accessKeyAddress:Ga(e.publicKey),source:`accessKey`}}let FE=`0xdec0000000000000000000000000000000000000`;function $(e){return{...e,data:Jp(e),to:e.address}}A(),Wp();async function IE(e,t){return IE.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return $({address:FE,abi:wE,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(IE||={});async function LE(e,t){return LE.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:FE,abi:wE,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=w_({abi:wE,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(LE||={});async function RE(e,t){return RE.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:FE,abi:wE,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=w_({abi:wE,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(RE||={});async function zE(e,t){return zE.inner(B,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return $({address:FE,abi:wE,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=w_({abi:wE,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(zE||={});async function BE(e,t){let{account:n=e.account,token:r,...i}=t,a=n?Up(n).address:void 0;if(!a)throw Error(`account is required.`);return Nv(e,{...i,...BE.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:FE,abi:wE,args:[t,n],functionName:`balanceOf`})}e.call=t})(BE||={});async function VE(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Nv(e,{...a,...VE.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return $({address:FE,abi:wE,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(VE||={});async function HE(e,t){let{orderId:n,...r}=t;return Nv(e,{...r,...HE.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return $({address:FE,abi:wE,args:[t],functionName:`getOrder`})}e.call=t})(HE||={});async function UE(e,t){let{base:n,quote:r,...i}=t;return Nv(e,{...i,...UE.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return $({address:FE,abi:wE,args:[XE(t,n)],functionName:`books`})}e.call=t})(UE||={});async function WE(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Nv(e,{...a,...WE.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:FE,abi:wE,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(WE||={});async function GE(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Nv(e,{...a,...GE.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return $({address:FE,abi:wE,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(GE||={});async function KE(e,t){return KE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return $({address:FE,abi:wE,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=w_({abi:wE,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(KE||={});async function qE(e,t){return qE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return $({address:FE,abi:wE,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=w_({abi:wE,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})(qE||={});async function JE(e,t){return JE.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return $({address:FE,abi:wE,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(JE||={});async function YE(e,t){return YE.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return $({address:FE,abi:wE,functionName:`withdraw`,args:[t,n]})}e.call=n})(YE||={});function XE(e,t){return Ta(E(e,t))}A(),Wp(),Yp();async function ZE(e,t){let{token:n,...r}=t;return ZE.inner(B,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(ZE||={});async function QE(e,t){return QE.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(QE||={});async function $E(e,t){return $E.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Pi(n,32)]}:{functionName:`burn`,args:[t]};return $({address:Z(r),abi:Q,...i})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})($E||={});async function eD(e,t){return eD.inner(B,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return $({address:Z(t),abi:Q,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(eD||={});async function tD(e,t){return tD.inner(B,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?Up(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=Ii(32)}=e;return $({address:`0x20fc000000000000000000000000000000000000`,abi:TE,args:[t,n,r,Z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=w_({abi:TE,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(tD||={});async function nD(e,t){let{account:n=e.account}=t,r=n?Up(n).address:void 0;if(!r)throw Error(`account is required.`);return Nv(e,{...t,...nD.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})(nD||={});async function rD(e,t){let{account:n=e.account,...r}=t,i=n?Up(n).address:void 0;if(!i)throw Error(`account is required.`);return Nv(e,{...r,...rD.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})(rD||={});async function iD(e,t){let{token:n,...r}=t,i=Z(n),a=Q;return GT(n)===KT(`0x20c0000000000000000000000000000000000000`)?yb(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})):yb(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 aD(e,t){return Nv(e,{...t,...aD.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`getRoleAdmin`,args:[JT(t)]})}e.call=t})(aD||={});async function oD(e,t){let{account:n=e.account}=t,r=n?Up(n).address:void 0;if(!r)throw Error(`account is required.`);return Nv(e,{...t,...oD.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,JT(n)]})}e.call=t})(oD||={});async function sD(e,t){return sD.inner(Gv,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:Jp(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=JT(r);return $({address:Z(t),abi:Q,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=w_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(sD||={});async function cD(e,t){return cD.inner(B,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Pi(r,32)]}:{functionName:`mint`,args:[t,n]};return $({address:Z(i),abi:Q,...a})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(cD||={});async function lD(e,t){return lD.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(lD||={});async function uD(e,t){return uD.inner(Gv,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:Jp(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=JT(n);return $({address:Z(t),abi:Q,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=w_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(uD||={});async function dD(e,t){return dD.inner(Gv,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:Jp(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=JT(r);return $({address:Z(t),abi:Q,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=w_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(dD||={});async function fD(e,t){return fD.inner(B,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return $({address:Z(t),abi:Q,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(fD||={});async function pD(e,t){return pD.inner(B,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=JT(n),a=JT(r);return $({address:Z(t),abi:Q,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(pD||={});async function mD(e,t){return mD.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Pi(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Pi(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]=w_({abi:Q,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(mD||={});async function hD(e,t){return hD.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(hD||={});async function gD(e,t){return gD.inner(B,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return $({address:Z(t),abi:Q,functionName:`setNextQuoteToken`,args:[Z(n)]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(gD||={});async function _D(e,t){return _D.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=w_({abi:Q,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(_D||={});function vD(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return Nb({key:vD.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(dE(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:vD.type})}}function yD(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 Up(r)}}function bD(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=ay({chain:i.chain,transport:vD(Ib(e),Ib(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?vD(Ib(a),Ib(n)):Ib(a);return ay({chain:{...t,id:r},transport:o})}}let xD=k(Ta(ia(`mpp`),{as:`Hex`}),0,4);function SD(e){return Bi(k(Ta(ia(e),{as:`Hex`}),0,10))}function CD(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(Bi(xD),0),i[4]=1,i.set(SD(t),5),n&&i.set(SD(n),15),i.set(wD(r),25),D(i)}function wD(e){return Bi(k(Ta(ia(e),{as:`Hex`}),0,7))}function TD(e,t){return e.toLowerCase()===t.toLowerCase()}let ED={mainnet:4217,testnet:42431},DD={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};ED.mainnet,DD.usdc,ED.testnet,DD.pathUsd;let OD={[ED.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[ED.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},kD={[ED.mainnet]:`https://rpc.tempo.xyz`,[ED.testnet]:`https://rpc.moderato.tempo.xyz`},AD=[DD.pathUsd,DD.usdc];async function jD(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!TD(e,i)),c=await Promise.allSettled([Nv(e,rD.call({account:n,token:i})),...s.map(t=>Nv(e,rD.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 VE(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[ZE.call({token:l,spender:FE,amount:e}),IE.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new ND({currency:i})}}function MD(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>TD(e,t)))]:t,slippage:e.slippage??1}:!1}var ND=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function PD(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 FD={Proof:[{name:`challengeId`,type:`string`}]};function ID(e){return{name:`MPP`,version:`1`,chainId:e}}function LD(e){return{challengeId:e}}function RD(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let zD=[`push`,`pull`],BD=G({amount:$C(),memo:q(tw()),recipient:iC(W(),QS(e=>e))}),VD=nT({name:`tempo`,intent:`charge`,schema:{credential:{payload:US(`type`,[G({hash:tw(),type:K(`hash`)}),G({signature:nw(),type:K(`transaction`)}),G({signature:nw(),type:K(`proof`)})])},request:iC(G({amount:$C(),chainId:q(ES()),currency:W(),decimals:ES(),description:q(W()),externalId:q(W()),feePayer:q(iC(VS([OS(),dC()]),QS(e=>typeof e==`object`?!0:e))),memo:q(tw()),recipient:q(W()),splits:q(RS(BD).check(yS(1),vS(10))),supportedModes:q(RS(YS(zD)).check(yS(1)))}).check(fC(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=vb(e,t),i=n.reduce((e,n)=>e+vb(n.amount,t),0n);return n.every(e=>vb(e.amount,t)>0n)&&i<r},`Invalid splits`)),QS(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:vb(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:vb(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),HD=nT({name:`tempo`,intent:`session`,schema:{credential:{payload:US(`action`,[G({action:K(`open`),authorizedSigner:q(W()),channelId:tw(),cumulativeAmount:$C(),signature:nw(),transaction:nw(),type:K(`transaction`)}),G({action:K(`topUp`),additionalDeposit:$C(),channelId:tw(),transaction:nw(),type:K(`transaction`)}),G({action:K(`voucher`),channelId:tw(),cumulativeAmount:$C(),signature:nw()}),G({action:K(`close`),channelId:tw(),cumulativeAmount:$C(),signature:nw()})])},request:iC(G({amount:$C(),chainId:q(ES()),channelId:q(tw()),currency:W(),decimals:ES(),escrowContract:q(W()),feePayer:q(iC(VS([OS(),dC()]),QS(e=>typeof e==`object`?!0:e))),minVoucherDelta:q($C()),recipient:q(W()),suggestedDeposit:q($C()),unitType:W()}).check(fC(({amount:e,decimals:t})=>vb(e,t)>0n,`Session amount must be greater than 0`)),QS(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:vb(e,r).toString(),...s?{suggestedDeposit:vb(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:vb(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function UD(e={}){let{clientId:t}=e,n=bD({chain:xE,getClient:e.getClient,rpcUrl:kD}),r=yD({account:e.account});return rT(VD,{context:G({account:q(dC()),autoSwap:q(dC()),mode:q(YS(zD))}),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 tT({challenge:i,payload:{signature:await Mb(s,{account:c,domain:ID(o),types:FD,primaryType:`Proof`,message:LD(i.id)}),type:`proof`},source:RD({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:CD({challengeId:i.id,clientId:t,serverId:i.realm}),g=PD({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>mD.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=MD(a?.autoSwap??e.autoSwap,AD),v=[...(_?await jD(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 Ab(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return tT({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await g_(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,tT({challenge:i,payload:{signature:await jb(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function WD(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let GD={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function KD(e,t,n,r,i,a){let o=await Mb(e,{account:t,domain:WD(r,i),types:GD,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=fT(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return Qc(e.inner.signature)}catch{}return o}function qD(e){return Ta(Oo(Ao([`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 JD=[{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 YD(e,t,n){return Nv(e,{address:t,abi:JD,functionName:`getChannel`,args:[n]})}zp({abi:JD,name:`open`}),zp({abi:JD,name:`topUp`});function XD(e,t,n){let r=e.request.methodDetails?.escrowContract??n??OD[t];if(!r)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return r}function ZD(e,t,n,r){return tT({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function QD(e,t,n,r,i,a,o){let s=await KD(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function $D(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=Ii(32),f=qD({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Jp({abi:Q,functionName:`approve`,args:[r,o]}),m=Jp({abi:JD,functionName:`open`,args:[i,a,o,d,u]}),h=await g_(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await jb(e,h),_=await KD(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 eO(e,t,n,r){try{let i=await YD(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 tO=G({account:q(dC()),action:q(YS([`open`,`topUp`,`voucher`,`close`])),channelId:q(W()),cumulativeAmount:q($C()),cumulativeAmountRaw:q(W()),transaction:q(W()),authorizedSigner:q(W()),additionalDeposit:q($C()),additionalDepositRaw:q(W()),depositRaw:q(W())});function nO(e={}){let{decimals:t=6}=e,n=bD({chain:xE,getClient:e.getClient,rpcUrl:kD}),r=yD({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:vb(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 XD(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(S!==void 0&&a!==void 0)return S<a?S:a;if(S!==void 0)return S;if(a!==void 0)return a;if(e.deposit!==void 0)return vb(e.deposit,t);throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),te=u(v,y,_),w=s.get(te);if(!w){let e=p?.channelId??m?.channelId;if(e){let n=await eO(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?vb(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(te,n),c.set(n.channelId,te),o.set(n.channelId,_),w=n,l(w)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(w?.opened)w.cumulativeAmount+=b,ne=await QD(g,f,w.channelId,w.cumulativeAmount,_,h,C),l(w);else{let e=await $D(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(te,e.entry),c.set(e.entry.channelId,te),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return ZD(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?vb(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?vb(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 KD(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 QD(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 KD(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 ZD(e,S,u,r)}return rT(HD,{context:tO,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 rO(e){let t=Sl(e);return JSON.parse(t)}function iO(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 aO(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function oO(){return JSON.stringify({mpp:`payment-close-request`})}function sO(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`&&cO(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`&&lO(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&cO(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function cO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function lO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let uO={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function dO(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:vb(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,_=nO({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=Rw({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;let t=BigInt(e.spent);s=s>t?s:t}function b(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function x(){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 S(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function ee(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function C(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function w(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function ne(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function re(e){let t=e.headers.get(`Payment-Receipt`),n=t?rO(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ie(e,t){return o=e,re(await v(e,t))}function ae(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=uO.CLOSED,r=null}if(e===`open`&&(i=uO.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available — call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ie,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ie(e,{...s,headers:{...Bw(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=iO(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);ne(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),x=new URL(v.toString());x.protocol===`ws:`&&(x.protocol=`http:`),x.protocol===`wss:`&&(x.protocol=`https:`),o=x.toString();let w=await t(x,m?{signal:m}:void 0);if(w.status!==402)throw Error(`Expected a 402 payment challenge from ${x}, received ${w.status} instead.`);let re=pw(w).find(e=>e.method===_.name&&e.intent===_.intent);if(!re)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=re;let ie=await _.createCredential({challenge:re,context:{}});d=null,c=re,h=0n,g=BigInt(re.request.amount);let oe=eT(ie);l=oe.payload.channelId;let se=new n(v,f);u=se;let ce=ae(se),le=e=>{C(Error(e)),te(Error(e)),(se.readyState===uO.CONNECTING||se.readyState===uO.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===re.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===re&&(c=null),l===oe.payload.channelId&&(l=null),p=null,C(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=sO(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),ee(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:C(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{ne(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:re,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(aO(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),S(n.data);break}}),m&&m.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(aO(ie)),await b(),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===uO.OPEN){let t=d??await(async()=>(u.send(oO()),x()))(),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=b(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(aO(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:w(e,n)}});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=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?rO(m):void 0}}}function fO(e={}){return[UD(e),nO(e)]}(function(e){e.charge=UD,e.session=dO})(fO||={});function pO(e){return e}function mO(){return pO({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return pw(e)},getChallenge(e){return fw(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function hO(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=mO()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=yw(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=Rw(l);return n&&zw(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=Cw(r,o,gO(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,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 gO(e,t){return t?typeof t==`string`?bw(t):t:e}function _O(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 vO(e={}){let{account:t}=e,n=await Sd();return{accessKey:jE(n,t?{access:t}:void 0),keyPair:n}}function yO(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 bO(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 xO(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o=i?{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,privateKey:i}:r?{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,keyPair:r}:{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits};a.setState(e=>({accessKeys:[o,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function SO(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 Ru({message:`Account \"${n}\" not found.`}):new Bu({message:`No active account.`});if(t){let e=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(e)if(e.expiry&&e.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(t=>t!==e)});else return CO(e)}return wO(l,{signable:r})}function CO(e){if(`keyPair`in e&&e.keyPair)return jE(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return kE(e.privateKey,{access:e.access});case`p256`:return OE(e.privateKey,{access:e.access})}throw new Ru({message:`External access key cannot be hydrated for signing.`})}function wO(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 Ru({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return kE(e.privateKey);case`p256`:return OE(e.privateKey);case`webCrypto`:return jE(e.keyPair);case`webAuthn`:return AE(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return DE(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new Ru({message:`Unknown key type.`})}}function TO(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function EO(e={}){let{dialog:t=b()?ne():w(),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`}=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.`),TO({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,o=ed();function s(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 Lu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new Lu({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 c=Zu({async request(e){let t=o.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),s(t.id)}},{schema:qC});async function l(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await vO();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function u(e,t,n){xO({address:e,keyAuthorization:PT(t),keyPair:n,store:i})}async function d(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=_O(n,{store:i});try{let e=await t(n,r??void 0);return bO(n,{store:i}),e}catch{yO(n,{store:i});return}}let f=t({host:n,store:i}),p=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);f?.syncRequests(t),t.length===0&&f?.close()});return{cleanup(){p(),f?.destroy()},actions:{async createAccount(e,t){let n=await l(e.authorizeAccessKey),{accounts:r}=await c.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:gx(BC.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&u(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 l(e?.authorizeAccessKey),{accounts:r}=await c.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:gx(BC.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&u(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 c.request(t)},async signTransaction(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=await g_(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await c.request({...t,params:[gx(CC,e)]}):n},async signTypedData(e,t){return await c.request(t)},async sendTransaction(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await g_(o,{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await c.request({...t,params:[gx(CC,e)]}):n},async sendTransactionSync(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await g_(o,{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await c.request({...t,params:[gx(CC,e)]}):n},async authorizeAccessKey(t,n){let r=await l(t),i=await c.request({...n,params:[gx(BC.authorizeAccessKey,r.request)]});return r&&u(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await c.request(t)},async deposit(e,t){return await c.request(t)},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let DO=new Map;function OO(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1)return typeof r==`string`?r: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=DO.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Ib(),r=i?kO(i,t):t;u=ay({chain:e,transport:o?AO(r,o,s):r,pollingInterval:1e3}),DO.set(l,u)}return u}function kO(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function AO(e,t,n){return r=>{let i=e(r),a=Ib(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=dE(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 jO(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(jO.cache.get(n))return jO.cache.get(n);let r=e().finally(()=>jO.cache.delete(n));return jO.cache.set(n,r),r}jO.cache=new Map;function MO(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function NO(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=MO(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let PO;function FO(){return PO||=NO(`keyval-store`,`keyval`),PO}function IO(e,t=FO()){return t(`readonly`,t=>MO(t.get(e)))}function LO(e,t,n=FO()){return n(`readwrite`,n=>(n.put(t,e),MO(n.transaction)))}function RO(e,t=FO()){return t(`readwrite`,t=>(t.delete(e),MO(t.transaction)))}function zO(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 BO(e={}){let t=typeof indexedDB<`u`?NO(`tempo`,`store`):void 0;return zO({async getItem(e){let n=await IO(e,t);return n===null?null:n},async setItem(e,n){await LO(e,n,t)},async removeItem(e){await RO(e,t)}},e)}function VO(e={}){let t=new Map;return zO({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let HO=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 UO(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 WO=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return WO(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return WO(t)(e)}}}},GO=(e,t)=>(n,r,i)=>{let a={storage:UO(()=>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 WO(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},KO=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},qO=(e=>e?KO(e):KO);function JO(e){let{chainId:t,persistCredentials:n=!0,storage:r=typeof window<`u`?BO({key:`tempo`}):VO({key:`tempo`})}=e;return qO(HO(GO(()=>({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:e.accounts,activeAccount:e.activeAccount,...n?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:r,version:0})))}async function YO(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function XO(e,t){let n=mx(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new zu({message:`Unsupported method \"${t?.method}\".`}):new Iu(-32602,`Invalid params: ${ZO(n.error.issues)}`)}return{...t,_decoded:n.data}}function ZO(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?ZO([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let QO=new Set;function $O(e={}){let{adapter:t=EO(),chains:n=[xE,CE],persistCredentials:r,testnet:i,storage:a=typeof window<`u`?BO():VO()}=e,o=(()=>{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}})(),s=JO({chainId:(i?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,persistCredentials:r,storage:a}),c=(e={})=>SO({...e,store:s}),l;function u(e={}){let{chainId:t,feePayer:r}=e;return OO(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:o?.precedence}})(),store:s})}let d=t({getAccount:c,getClient:u,storage:a,store:s}),{actions:f}=d,p=Xu();s.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>p.emit(`accountsChanged`,s.getState().accounts.map(e=>e.address))),s.subscribe(e=>e.chainId,e=>p.emit(`chainChanged`,O(e))),s.subscribe(e=>e.accounts.length>0,e=>{e?p.emit(`connect`,{chainId:O(s.getState().chainId)}):p.emit(`disconnect`,new Bu)});function m(){if(s.getState().accounts.length===0)throw new Bu({message:`No accounts connected.`})}function h(e){if(!d.persistAccounts)return e;let t=[...e];for(let e of s.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function g(e){let t=(()=>{if(typeof e==`string`)return e;if(e!==!1)return o?.url})();if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let _=Object.assign(Zu({...p,async request({method:t,params:r}){return await YO(s),jO(async()=>{let i;try{i=XO(YC,{method:t,params:r})}catch(e){if(!(e instanceof zu))throw e;return await OO(void 0,{chains:n,store:s}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=s.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(s.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await f.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return s.setState({accounts:h(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{m();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 f.sendTransaction({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=g(t.feePayer),a=e=>{let t=u({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 c({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=_O(e,{store:s});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...RT(n)}});return bO(e,{store:s}),r}catch{return yO(e,{store:s}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{m();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 f.signTransaction({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_sendTransactionSync`:{m();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 f.sendTransactionSync({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_signTypedData_v4`:{m();let[e,t]=i._decoded.params;return await f.signTypedData({address:e,data:t},i)}case`personal_sign`:{m();let[e,t]=i._decoded.params;return await f.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{m();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,c=g(t?.feePayer??(o?!0:void 0)),l={calls:e,chainId:n,from:r,...c?{feePayer:c}:{}};if(!a){let e=E(await f.sendTransaction(l,{method:`eth_sendTransaction`,params:[gx(CC,l)]}),Pi(O(s.getState().chainId),32),tk);return{capabilities:{sync:a},id:e}}let u=await f.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[gx(CC,l)]}),d=u.transactionHash,p=O(s.getState().chainId),h=E(d,Pi(p,32),tk);return{atomic:!0,capabilities:{sync:a},chainId:p,id:h,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}=s.getState(),a=e?.account??t[r]?.address;if(!a)throw new Bu({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new Nu({message:\"`tokens` is required.\"});let c=OO(e?.chainId,{chains:n,store:s});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([rD(c,{account:a,token:e}),iD(c,{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(tk.slice(2)))throw Error(\"`id` not supported\");Ai(e);let t=k(e,0,32),r=O(Number(k(e,32,64))),a=await OO(Number(r),{chains:n,store:s}).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}=s.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new Ru({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(O(e.id))):n,c={};for(let e of a)c[O(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...o?{feePayer:{status:`supported`}}:{}};return c}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&s.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,signature:c}=await(async()=>n?.method===`register`?await f.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId},i):await f.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i))();s.setState({accounts:h(o),activeAccount:0});let l=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===l?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...c&&n?.digest?{signature:c}:{}}:{}}))}}case`wallet_disconnect`:await f.disconnect?.(),s.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!f.authorizeAccessKey)throw new zu({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await f.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(m(),!f.revokeAccessKey)throw new zu({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await f.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!f.deposit)throw new zu({message:\"`deposit` not supported by adapter.\"});return await f.deposit(i._decoded.params[0],i);case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new Wu({message:`Chain ${e} not configured.`});await f.switchChain?.({chainId:e}),s.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Di({method:t,params:r})})}},{schema:qC}),{chains:n,getAccount:c,getClient(e={}){let{chainId:t,feePayer:r}=e;return OO(t,{chains:n,feePayer:r,provider:l,store:s})},store:s});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;QO.has(e)||(QO.add(e),XC({info:{icon:t.icon??ek,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:_}))}return e.mpp&&hO({methods:[fO({getClient:({chainId:e})=>{let t=_.getClient({chainId:e}),n=_.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),l=_,_}let ek=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,tk=Ta(Ni(`TEMPO_5792`)),nk={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},rk={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},ik={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var ak=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let ok={accent:new ak(`accent`),background:new ak(`background`),border:new ak(`border`),foreground:new ak(`foreground`),muted:new ak(`muted`),negative:new ak(`negative`),positive:new ak(`positive`),surface:new ak(`surface`),fontFamily:new ak(`font-family`),fontSizeBase:new ak(`font-size-base`),radius:new ak(`radius`),spacingUnit:new ak(`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: ${ok.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 sk(e){let t=new URL(location.href);t.searchParams.set(rk.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 ck(e){let t=document.getElementById(nk.data),n=Ei(t.textContent),r=t.getAttribute(ik.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(ik.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(ik.challengeId),o=a?(i.removeAttribute(ik.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(nk.error)?.remove();return}let t=document.getElementById(nk.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=nk.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:sk,vars:ok}}let lk=ck(`tempo`),uk=String.raw,dk=document.createElement(`style`);dk.textContent=uk`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${lk.vars.spacingUnit} * 8);\n }\n button {\n background: ${lk.vars.accent};\n border-radius: ${lk.vars.radius};\n color: ${lk.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${lk.vars.spacingUnit} * 4) calc(${lk.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`,lk.root.append(dk);let fk=$O({testnet:lk.challenge.request.methodDetails?.chainId===CE.id||lk.challenge.request.methodDetails?.chainId===SE.id}),pk=document.createElement(`button`);pk.innerHTML=`${lk.text.pay===`Pay`?`Continue with`:lk.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>`,pk.onclick=async()=>{try{lk.error(),pk.disabled=!0;let e=await(async()=>{let e=await fk.request({method:`eth_accounts`});return e.length>0?e.at(0):(await fk.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await fO({account:e,getClient:e=>{let t=e.chainId??lk.challenge.request.methodDetails?.chainId;return ay({chain:[...fk?.chains??[],CE,SE].find(e=>e.id===t),transport:Pb(fk)})}})[0].createCredential({challenge:lk.challenge,context:{}});await lk.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;lk.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{pk.disabled=!1}},lk.root.appendChild(pk)})();</script>";
3
3
  //# sourceMappingURL=html.gen.js.map