@gardenfi/core 2.1.3-beta.9 → 2.1.4-beta.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.
- package/dist/ccip-CKqT4Tlw.cjs +1 -0
- package/dist/ccip-xjRviAuM.js +232 -0
- package/dist/index-B2LvYYOn.js +19626 -0
- package/dist/index-CS-x0JEZ.cjs +71 -0
- package/dist/index.cjs +1 -34
- package/dist/index.js +26 -13983
- package/dist/secp256k1-BQpu7aiB.cjs +1 -0
- package/dist/secp256k1-BZp0pd1Z.js +1287 -0
- package/dist/src/index.d.ts +1 -1
- package/dist/src/lib/constants.d.ts +5 -1
- package/dist/src/lib/evm/abi/nativeHTLC.d.ts +310 -0
- package/dist/src/lib/evm/relay/evmRelay.d.ts +3 -0
- package/dist/src/lib/starknet/checkAllowanceAndApprove.d.ts +4 -3
- package/dist/src/lib/starknet/htlc/starknetHTLC.d.ts +3 -2
- package/dist/src/lib/starknet/relay/starknetRelay.d.ts +5 -2
- package/dist/src/lib/switchOrAddNetwork.d.ts +2 -2
- package/dist/src/lib/utils.d.ts +2 -2
- package/package.json +4 -5
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";var Kl=Object.defineProperty;var Yl=(e,t,r)=>t in e?Kl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Wr=(e,t,r)=>Yl(e,typeof t!="symbol"?t+"":t,r);const ge=require("@gardenfi/orderbook"),z=require("@gardenfi/utils"),ln=require("@catalogfi/wallets"),tf=require("varuint-bitcoin"),Xl=require("tiny-secp256k1"),rf=require("bitcoinjs-lib"),Jl=require("bignumber.js"),Oe=require("starknet");function Ra(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const Tc=Ra(tf),Or=Ra(Xl),ce=Ra(rf);var nf=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},lo=(e,t,r)=>(nf(e,t,"read from private field"),r?r.call(e):t.get(e)),ho=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},po=(e,t,r,n)=>(nf(e,t,"write to private field"),t.set(e,r),r);const Ql=e=>new Promise(t=>setTimeout(t,e));class Zl{constructor(t,r){this.maxRetries=Math.max(t,0),this.delay=r}async retry(t){let r=0,n;for(;r<this.maxRetries+1;)try{return await t()}catch(i){r++,n=i,await Ql(this.delay*r)}throw n}}const eh=e=>{try{return JSON.parse(e)}catch{return e}};class Dt{static async _postWithFallback(t,r){let n="";for(const i of t)try{const s=await fetch(i,{method:"POST",...r});if(s.status>=500){n=await(s.text()||s.json());continue}return await this.parse(s)}catch(s){n=kc(s);continue}throw new Error(n||"All APIs failed")}static async postWithFallback(t,r){return await Ki(r).retry(()=>this._postWithFallback(t,r))}static async _getWithFallback(t,r){let n="";for(const i of t)try{const s=await fetch(i,r);if(s.status>=500){n=await(s.text()||s.json());continue}return await this.parse(s)}catch(s){n=kc(s);continue}throw new Error(n||"All APIs failed")}static async getWithFallback(t,r){return await Ki(r).retry(()=>this._getWithFallback(t,r))}static async _get(t,r){return await this.parse(await fetch(t,r))}static async get(t,r){return await Ki(r).retry(()=>this._get(t,r))}static async _post(t,r){return await this.parse(await fetch(t,{method:"POST",...r}))}static async post(t,r){return await Ki(r).retry(()=>this._post(t,r))}static async parse(t){const r=await t.text();if(t.status>=200&&t.status<300)return eh(r);throw new Error(r)}}function kc(e){return(e==null?void 0:e.message)||(e==null?void 0:e.toString())||"unknown error"}const Ki=e=>new Zl((e==null?void 0:e.retryCount)??2,(e==null?void 0:e.retryDelay)??1e3),nn=e=>e.startsWith("0x")?e:`0x${e}`,kr=e=>e.startsWith("0x")?e.slice(2):e;var cs,us,fs;let ea=class{constructor(t,r,n=void 0){ho(this,cs,void 0),ho(this,us,void 0),ho(this,fs,void 0),po(this,cs,t),po(this,fs,n),po(this,us,r)}get ok(){return lo(this,cs)}get error(){return lo(this,fs)}get val(){return lo(this,us)}};cs=new WeakMap,us=new WeakMap,fs=new WeakMap;const ie=e=>new ea(!0,e),G=(e,...t)=>{if(typeof e=="string"&&t&&t.length>0){let r=[e,...t].map(n=>{if(n){if(n instanceof Error)return n.message;if(typeof n=="string")return n;if(n!=null&&n.toString)return n.toString()}});return new ea(!1,null,r.filter(n=>n!==void 0).join(" "))}return new ea(!1,null,e)};var Ce=(e=>(e.Idle="Idle",e.Initiate="Initiate",e.Redeem="Redeem",e.Refund="Refund",e))(Ce||{});const th="1.0.8";let yt=class ta extends Error{constructor(t,r={}){var o;const n=r.cause instanceof ta?r.cause.details:(o=r.cause)!=null&&o.message?r.cause.message:r.details,i=r.cause instanceof ta&&r.cause.docsPath||r.docsPath,s=[t||"An error occurred.","",...r.metaMessages?[...r.metaMessages,""]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...n?[`Details: ${n}`]:[],`Version: abitype@${th}`].join(`
|
|
2
|
+
`);super(s),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"}),r.cause&&(this.cause=r.cause),this.details=n,this.docsPath=i,this.metaMessages=r.metaMessages,this.shortMessage=t}};function Jt(e,t){const r=e.exec(t);return r==null?void 0:r.groups}const sf=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,of=/^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)?$/,af=/^\(.+?\).*?$/,Ic=/^tuple(?<array>(\[(\d*)\])*)$/;function ra(e){let t=e.type;if(Ic.test(e.type)&&"components"in e){t="(";const r=e.components.length;for(let i=0;i<r;i++){const s=e.components[i];t+=ra(s),i<r-1&&(t+=", ")}const n=Jt(Ic,e.type);return t+=`)${(n==null?void 0:n.array)??""}`,ra({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function Bn(e){let t="";const r=e.length;for(let n=0;n<r;n++){const i=e[n];t+=ra(i),n!==r-1&&(t+=", ")}return t}function rh(e){var t;return e.type==="function"?`function ${e.name}(${Bn(e.inputs)})${e.stateMutability&&e.stateMutability!=="nonpayable"?` ${e.stateMutability}`:""}${(t=e.outputs)!=null&&t.length?` returns (${Bn(e.outputs)})`:""}`:e.type==="event"?`event ${e.name}(${Bn(e.inputs)})`:e.type==="error"?`error ${e.name}(${Bn(e.inputs)})`:e.type==="constructor"?`constructor(${Bn(e.inputs)})${e.stateMutability==="payable"?" payable":""}`:e.type==="fallback"?`fallback() external${e.stateMutability==="payable"?" payable":""}`:"receive() external payable"}const cf=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function nh(e){return cf.test(e)}function ih(e){return Jt(cf,e)}const uf=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function sh(e){return uf.test(e)}function oh(e){return Jt(uf,e)}const ff=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function ah(e){return ff.test(e)}function ch(e){return Jt(ff,e)}const df=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function lf(e){return df.test(e)}function uh(e){return Jt(df,e)}const hf=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function fh(e){return hf.test(e)}function dh(e){return Jt(hf,e)}const pf=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function lh(e){return pf.test(e)}function hh(e){return Jt(pf,e)}const ph=/^receive\(\) external payable$/;function yh(e){return ph.test(e)}const mh=new Set(["indexed"]),na=new Set(["calldata","memory","storage"]);class bh extends yt{constructor({type:t}){super("Unknown type.",{metaMessages:[`Type "${t}" 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"})}}class gh extends yt{constructor({type:t}){super("Unknown type.",{metaMessages:[`Type "${t}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class wh extends yt{constructor({param:t}){super("Invalid ABI parameter.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class _h extends yt{constructor({param:t,name:r}){super("Invalid ABI parameter.",{details:t,metaMessages:[`"${r}" 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"})}}class vh extends yt{constructor({param:t,type:r,modifier:n}){super("Invalid ABI parameter.",{details:t,metaMessages:[`Modifier "${n}" not allowed${r?` in "${r}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class Eh extends yt{constructor({param:t,type:r,modifier:n}){super("Invalid ABI parameter.",{details:t,metaMessages:[`Modifier "${n}" not allowed${r?` in "${r}" 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"})}}class xh extends yt{constructor({abiParameter:t}){super("Invalid ABI parameter.",{details:JSON.stringify(t,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class En extends yt{constructor({signature:t,type:r}){super(`Invalid ${r} signature.`,{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class Ah extends yt{constructor({signature:t}){super("Unknown signature.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class Sh extends yt{constructor({signature:t}){super("Invalid struct signature.",{details:t,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class Ph extends yt{constructor({type:t}){super("Circular reference detected.",{metaMessages:[`Struct "${t}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class Th extends yt{constructor({current:t,depth:r}){super("Unbalanced parentheses.",{metaMessages:[`"${t.trim()}" has too many ${r>0?"opening":"closing"} parentheses.`],details:`Depth "${r}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}function kh(e,t,r){let n="";if(r)for(const i of Object.entries(r)){if(!i)continue;let s="";for(const o of i[1])s+=`[${o.type}${o.name?`:${o.name}`:""}]`;n+=`(${i[0]}{${s}})`}return t?`${t}:${e}${n}`:e}const yo=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 Ih(e,t={}){if(ah(e))return Bh(e,t);if(sh(e))return Ch(e,t);if(nh(e))return Oh(e,t);if(fh(e))return Rh(e,t);if(lh(e))return Nh(e);if(yh(e))return{type:"receive",stateMutability:"payable"};throw new Ah({signature:e})}function Bh(e,t={}){const r=ch(e);if(!r)throw new En({signature:e,type:"function"});const n=gt(r.parameters),i=[],s=n.length;for(let a=0;a<s;a++)i.push(Rr(n[a],{modifiers:na,structs:t,type:"function"}));const o=[];if(r.returns){const a=gt(r.returns),c=a.length;for(let f=0;f<c;f++)o.push(Rr(a[f],{modifiers:na,structs:t,type:"function"}))}return{name:r.name,type:"function",stateMutability:r.stateMutability??"nonpayable",inputs:i,outputs:o}}function Ch(e,t={}){const r=oh(e);if(!r)throw new En({signature:e,type:"event"});const n=gt(r.parameters),i=[],s=n.length;for(let o=0;o<s;o++)i.push(Rr(n[o],{modifiers:mh,structs:t,type:"event"}));return{name:r.name,type:"event",inputs:i}}function Oh(e,t={}){const r=ih(e);if(!r)throw new En({signature:e,type:"error"});const n=gt(r.parameters),i=[],s=n.length;for(let o=0;o<s;o++)i.push(Rr(n[o],{structs:t,type:"error"}));return{name:r.name,type:"error",inputs:i}}function Rh(e,t={}){const r=dh(e);if(!r)throw new En({signature:e,type:"constructor"});const n=gt(r.parameters),i=[],s=n.length;for(let o=0;o<s;o++)i.push(Rr(n[o],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:r.stateMutability??"nonpayable",inputs:i}}function Nh(e){const t=hh(e);if(!t)throw new En({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}const Uh=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Lh=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Fh=/^u?int$/;function Rr(e,t){var h,y;const r=kh(e,t==null?void 0:t.type,t==null?void 0:t.structs);if(yo.has(r))return yo.get(r);const n=af.test(e),i=Jt(n?Lh:Uh,e);if(!i)throw new wh({param:e});if(i.name&&$h(i.name))throw new _h({param:e,name:i.name});const s=i.name?{name:i.name}:{},o=i.modifier==="indexed"?{indexed:!0}:{},a=(t==null?void 0:t.structs)??{};let c,f={};if(n){c="tuple";const p=gt(i.type),g=[],_=p.length;for(let x=0;x<_;x++)g.push(Rr(p[x],{structs:a}));f={components:g}}else if(i.type in a)c="tuple",f={components:a[i.type]};else if(Fh.test(i.type))c=`${i.type}256`;else if(c=i.type,(t==null?void 0:t.type)!=="struct"&&!yf(c))throw new gh({type:c});if(i.modifier){if(!((y=(h=t==null?void 0:t.modifiers)==null?void 0:h.has)!=null&&y.call(h,i.modifier)))throw new vh({param:e,type:t==null?void 0:t.type,modifier:i.modifier});if(na.has(i.modifier)&&!Hh(c,!!i.array))throw new Eh({param:e,type:t==null?void 0:t.type,modifier:i.modifier})}const l={type:`${c}${i.array??""}`,...s,...o,...f};return yo.set(r,l),l}function gt(e,t=[],r="",n=0){const i=e.trim().length;for(let s=0;s<i;s++){const o=e[s],a=e.slice(s+1);switch(o){case",":return n===0?gt(a,[...t,r.trim()]):gt(a,t,`${r}${o}`,n);case"(":return gt(a,t,`${r}${o}`,n+1);case")":return gt(a,t,`${r}${o}`,n-1);default:return gt(a,t,`${r}${o}`,n)}}if(r==="")return t;if(n!==0)throw new Th({current:r,depth:n});return t.push(r.trim()),t}function yf(e){return e==="address"||e==="bool"||e==="function"||e==="string"||sf.test(e)||of.test(e)}const Mh=/^(?: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 $h(e){return e==="address"||e==="bool"||e==="function"||e==="string"||e==="tuple"||sf.test(e)||of.test(e)||Mh.test(e)}function Hh(e,t){return t||e==="bytes"||e==="string"||e==="tuple"}function Dh(e){const t={},r=e.length;for(let o=0;o<r;o++){const a=e[o];if(!lf(a))continue;const c=uh(a);if(!c)throw new En({signature:a,type:"struct"});const f=c.properties.split(";"),l=[],h=f.length;for(let y=0;y<h;y++){const g=f[y].trim();if(!g)continue;const _=Rr(g,{type:"struct"});l.push(_)}if(!l.length)throw new Sh({signature:a});t[c.name]=l}const n={},i=Object.entries(t),s=i.length;for(let o=0;o<s;o++){const[a,c]=i[o];n[a]=mf(c,t)}return n}const jh=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function mf(e,t,r=new Set){const n=[],i=e.length;for(let s=0;s<i;s++){const o=e[s];if(af.test(o.type))n.push(o);else{const c=Jt(jh,o.type);if(!(c!=null&&c.type))throw new xh({abiParameter:o});const{array:f,type:l}=c;if(l in t){if(r.has(l))throw new Ph({type:l});n.push({...o,type:`tuple${f??""}`,components:mf(t[l]??[],t,new Set([...r,l]))})}else if(yf(l))n.push(o);else throw new bh({type:l})}}return n}function bf(e){const t=Dh(e),r=[],n=e.length;for(let i=0;i<n;i++){const s=e[i];lf(s)||r.push(Ih(s,t))}return r}function oe(e,t,r){const n=e[t.name];if(typeof n=="function")return n;const i=e[r];return typeof i=="function"?i:s=>t(e,s)}function It(e,{includeName:t=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new r0(e.type);return`${e.name}(${Bs(e.inputs,{includeName:t})})`}function Bs(e,{includeName:t=!1}={}){return e?e.map(r=>Gh(r,{includeName:t})).join(t?", ":","):""}function Gh(e,{includeName:t}){return e.type.startsWith("tuple")?`(${Bs(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:"")}function qt(e,{strict:t=!0}={}){return!e||typeof e!="string"?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")}function Ie(e){return qt(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const gf="2.28.0";let Cn={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:r})=>t?`${e??"https://viem.sh"}${t}${r?`#${r}`:""}`:void 0,version:`viem@${gf}`};class F extends Error{constructor(t,r={}){var a;const n=(()=>{var c;return r.cause instanceof F?r.cause.details:(c=r.cause)!=null&&c.message?r.cause.message:r.details})(),i=r.cause instanceof F&&r.cause.docsPath||r.docsPath,s=(a=Cn.getDocsUrl)==null?void 0:a.call(Cn,{...r,docsPath:i}),o=[t||"An error occurred.","",...r.metaMessages?[...r.metaMessages,""]:[],...s?[`Docs: ${s}`]:[],...n?[`Details: ${n}`]:[],...Cn.version?[`Version: ${Cn.version}`]:[]].join(`
|
|
3
|
+
`);super(o,r.cause?{cause:r.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=n,this.docsPath=i,this.metaMessages=r.metaMessages,this.name=r.name??this.name,this.shortMessage=t,this.version=gf}walk(t){return wf(this,t)}}function wf(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause!==void 0?wf(e.cause,t):t?null:e}class zh extends F{constructor({docsPath:t}){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(`
|
|
4
|
+
`),{docsPath:t,name:"AbiConstructorNotFoundError"})}}class Bc extends F{constructor({docsPath:t}){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(`
|
|
5
|
+
`),{docsPath:t,name:"AbiConstructorParamsNotFoundError"})}}class _f extends F{constructor({data:t,params:r,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`
|
|
6
|
+
`),{metaMessages:[`Params: (${Bs(r,{includeName:!0})})`,`Data: ${t} (${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=t,this.params=r,this.size=n}}class Na extends F{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}}class qh extends F{constructor({expectedLength:t,givenLength:r,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${t}`,`Given length: ${r}`].join(`
|
|
7
|
+
`),{name:"AbiEncodingArrayLengthMismatchError"})}}class Vh extends F{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${Ie(r)}) does not match expected size (bytes${t}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class Wh extends F{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${r}`].join(`
|
|
8
|
+
`),{name:"AbiEncodingLengthMismatchError"})}}class Kh extends F{constructor(t,{docsPath:r}){super([`Arguments (\`args\`) were provided to "${t}", but "${t}" 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(`
|
|
9
|
+
`),{docsPath:r,name:"AbiErrorInputsNotFoundError"})}}class Yh extends F{constructor(t,{docsPath:r}={}){super([`Error ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(`
|
|
10
|
+
`),{docsPath:r,name:"AbiErrorNotFoundError"})}}class vf extends F{constructor(t,{docsPath:r}){super([`Encoded error signature "${t}" 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://openchain.xyz/signatures?query=${t}.`].join(`
|
|
11
|
+
`),{docsPath:r,name:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=t}}class Xh extends F{constructor({docsPath:t}){super("Cannot extract event signature from empty topics.",{docsPath:t,name:"AbiEventSignatureEmptyTopicsError"})}}class Ef extends F{constructor(t,{docsPath:r}){super([`Encoded event signature "${t}" 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://openchain.xyz/signatures?query=${t}.`].join(`
|
|
12
|
+
`),{docsPath:r,name:"AbiEventSignatureNotFoundError"})}}class Cc extends F{constructor(t,{docsPath:r}={}){super([`Event ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join(`
|
|
13
|
+
`),{docsPath:r,name:"AbiEventNotFoundError"})}}class ei extends F{constructor(t,{docsPath:r}={}){super([`Function ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
|
|
14
|
+
`),{docsPath:r,name:"AbiFunctionNotFoundError"})}}class xf extends F{constructor(t,{docsPath:r}){super([`Function "${t}" 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(`
|
|
15
|
+
`),{docsPath:r,name:"AbiFunctionOutputsNotFoundError"})}}class Jh extends F{constructor(t,{docsPath:r}){super([`Encoded function signature "${t}" 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://openchain.xyz/signatures?query=${t}.`].join(`
|
|
16
|
+
`),{docsPath:r,name:"AbiFunctionSignatureNotFoundError"})}}class Qh extends F{constructor(t,r){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${t.type}\` in \`${It(t.abiItem)}\`, and`,`\`${r.type}\` in \`${It(r.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}class Zh extends F{constructor({expectedSize:t,givenSize:r}){super(`Expected bytes${t}, got bytes${r}.`,{name:"BytesSizeMismatchError"})}}class _s extends F{constructor({abiItem:t,data:r,params:n,size:i}){super([`Data size of ${i} bytes is too small for non-indexed event parameters.`].join(`
|
|
17
|
+
`),{metaMessages:[`Params: (${Bs(n,{includeName:!0})})`,`Data: ${r} (${i} 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=t,this.data=r,this.params=n,this.size=i}}class Ua extends F{constructor({abiItem:t,param:r}){super([`Expected a topic for indexed event parameter${r.name?` "${r.name}"`:""} on event "${It(t,{includeName:!0})}".`].join(`
|
|
18
|
+
`),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t}}class e0 extends F{constructor(t,{docsPath:r}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
|
|
19
|
+
`),{docsPath:r,name:"InvalidAbiEncodingType"})}}class t0 extends F{constructor(t,{docsPath:r}){super([`Type "${t}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
|
|
20
|
+
`),{docsPath:r,name:"InvalidAbiDecodingType"})}}class Af extends F{constructor(t){super([`Value "${t}" is not a valid array.`].join(`
|
|
21
|
+
`),{name:"InvalidArrayError"})}}class r0 extends F{constructor(t){super([`"${t}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
|
|
22
|
+
`),{name:"InvalidDefinitionTypeError"})}}class n0 extends F{constructor(t){super(`Filter type "${t}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}class Sf extends F{constructor({offset:t,position:r,size:n}){super(`Slice ${r==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${n}).`,{name:"SliceOffsetOutOfBoundsError"})}}class Pf extends F{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${t}) exceeds padding size (${r}).`,{name:"SizeExceedsPaddingSizeError"})}}class Oc extends F{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${r} ${n} long, but is ${t} ${n} long.`,{name:"InvalidBytesLengthError"})}}function xn(e,{dir:t,size:r=32}={}){return typeof e=="string"?hr(e,{dir:t,size:r}):i0(e,{dir:t,size:r})}function hr(e,{dir:t,size:r=32}={}){if(r===null)return e;const n=e.replace("0x","");if(n.length>r*2)throw new Pf({size:Math.ceil(n.length/2),targetSize:r,type:"hex"});return`0x${n[t==="right"?"padEnd":"padStart"](r*2,"0")}`}function i0(e,{dir:t,size:r=32}={}){if(r===null)return e;if(e.length>r)throw new Pf({size:e.length,targetSize:r,type:"bytes"});const n=new Uint8Array(r);for(let i=0;i<r;i++){const s=t==="right";n[s?i:r-i-1]=e[s?i:e.length-i-1]}return n}class Tf extends F{constructor({max:t,min:r,signed:n,size:i,value:s}){super(`Number "${s}" is not in safe ${i?`${i*8}-bit ${n?"signed":"unsigned"} `:""}integer range ${t?`(${r} to ${t})`:`(above ${r})`}`,{name:"IntegerOutOfRangeError"})}}class s0 extends F{constructor(t){super(`Bytes value "${t}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class o0 extends F{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed ${r} bytes. Given size: ${t} bytes.`,{name:"SizeOverflowError"})}}function Nr(e,{dir:t="left"}={}){let r=typeof e=="string"?e.replace("0x",""):e,n=0;for(let i=0;i<r.length-1&&r[t==="left"?i:r.length-i-1].toString()==="0";i++)n++;return r=t==="left"?r.slice(n):r.slice(0,r.length-n),typeof e=="string"?(r.length===1&&t==="right"&&(r=`${r}0`),`0x${r.length%2===1?`0${r}`:r}`):r}function Bt(e,{size:t}){if(Ie(e)>t)throw new o0({givenSize:Ie(e),maxSize:t})}function pt(e,t={}){const{signed:r}=t;t.size&&Bt(e,{size:t.size});const n=BigInt(e);if(!r)return n;const i=(e.length-2)/2,s=(1n<<BigInt(i)*8n-1n)-1n;return n<=s?n:n-BigInt(`0x${"f".padStart(i*2,"f")}`)-1n}function Vt(e,t={}){return Number(pt(e,t))}const a0=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function J(e,t={}){return typeof e=="number"||typeof e=="bigint"?Q(e,t):typeof e=="string"?Cs(e,t):typeof e=="boolean"?kf(e,t):Ze(e,t)}function kf(e,t={}){const r=`0x${Number(e)}`;return typeof t.size=="number"?(Bt(r,{size:t.size}),xn(r,{size:t.size})):r}function Ze(e,t={}){let r="";for(let i=0;i<e.length;i++)r+=a0[e[i]];const n=`0x${r}`;return typeof t.size=="number"?(Bt(n,{size:t.size}),xn(n,{dir:"right",size:t.size})):n}function Q(e,t={}){const{signed:r,size:n}=t,i=BigInt(e);let s;n?r?s=(1n<<BigInt(n)*8n-1n)-1n:s=2n**(BigInt(n)*8n)-1n:typeof e=="number"&&(s=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof s=="bigint"&&r?-s-1n:0;if(s&&i>s||i<o){const c=typeof e=="bigint"?"n":"";throw new Tf({max:s?`${s}${c}`:void 0,min:`${o}${c}`,signed:r,size:n,value:`${e}${c}`})}const a=`0x${(r&&i<0?(1n<<BigInt(n*8))+BigInt(i):i).toString(16)}`;return n?xn(a,{size:n}):a}const c0=new TextEncoder;function Cs(e,t={}){const r=c0.encode(e);return Ze(r,t)}const u0=new TextEncoder;function Ci(e,t={}){return typeof e=="number"||typeof e=="bigint"?d0(e,t):typeof e=="boolean"?f0(e,t):qt(e)?Wt(e,t):If(e,t)}function f0(e,t={}){const r=new Uint8Array(1);return r[0]=Number(e),typeof t.size=="number"?(Bt(r,{size:t.size}),xn(r,{size:t.size})):r}const Nt={zero:48,nine:57,A:65,F:70,a:97,f:102};function Rc(e){if(e>=Nt.zero&&e<=Nt.nine)return e-Nt.zero;if(e>=Nt.A&&e<=Nt.F)return e-(Nt.A-10);if(e>=Nt.a&&e<=Nt.f)return e-(Nt.a-10)}function Wt(e,t={}){let r=e;t.size&&(Bt(r,{size:t.size}),r=xn(r,{dir:"right",size:t.size}));let n=r.slice(2);n.length%2&&(n=`0${n}`);const i=n.length/2,s=new Uint8Array(i);for(let o=0,a=0;o<i;o++){const c=Rc(n.charCodeAt(a++)),f=Rc(n.charCodeAt(a++));if(c===void 0||f===void 0)throw new F(`Invalid byte sequence ("${n[a-2]}${n[a-1]}" in "${n}").`);s[o]=c*16+f}return s}function d0(e,t){const r=Q(e,t);return Wt(r)}function If(e,t={}){const r=u0.encode(e);return typeof t.size=="number"?(Bt(r,{size:t.size}),xn(r,{dir:"right",size:t.size})):r}function vs(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function l0(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Oi(e,...t){if(!l0(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function h0(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");vs(e.outputLen),vs(e.blockLen)}function ti(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Bf(e,t){Oi(e);const r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}const Yi=BigInt(2**32-1),Nc=BigInt(32);function p0(e,t=!1){return t?{h:Number(e&Yi),l:Number(e>>Nc&Yi)}:{h:Number(e>>Nc&Yi)|0,l:Number(e&Yi)|0}}function y0(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){const{h:s,l:o}=p0(e[i],t);[r[i],n[i]]=[s,o]}return[r,n]}const m0=(e,t,r)=>e<<r|t>>>32-r,b0=(e,t,r)=>t<<r|e>>>32-r,g0=(e,t,r)=>t<<r-32|e>>>64-r,w0=(e,t,r)=>e<<r-32|t>>>64-r,Kr=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function _0(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function mo(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function _t(e,t){return e<<32-t|e>>>t}const Uc=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function v0(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Lc(e){for(let t=0;t<e.length;t++)e[t]=v0(e[t])}typeof Uint8Array.from([]).toHex=="function"&&Uint8Array.fromHex;function E0(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function Os(e){return typeof e=="string"&&(e=E0(e)),Oi(e),e}function x0(...e){let t=0;for(let n=0;n<e.length;n++){const i=e[n];Oi(i),t+=i.length}const r=new Uint8Array(t);for(let n=0,i=0;n<e.length;n++){const s=e[n];r.set(s,i),i+=s.length}return r}let La=class{clone(){return this._cloneInto()}};function Cf(e){const t=n=>e().update(Os(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function A0(e=32){if(Kr&&typeof Kr.getRandomValues=="function")return Kr.getRandomValues(new Uint8Array(e));if(Kr&&typeof Kr.randomBytes=="function")return Uint8Array.from(Kr.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}const Of=[],Rf=[],Nf=[],S0=BigInt(0),On=BigInt(1),P0=BigInt(2),T0=BigInt(7),k0=BigInt(256),I0=BigInt(113);for(let e=0,t=On,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],Of.push(2*(5*n+r)),Rf.push((e+1)*(e+2)/2%64);let i=S0;for(let s=0;s<7;s++)t=(t<<On^(t>>T0)*I0)%k0,t&P0&&(i^=On<<(On<<BigInt(s))-On);Nf.push(i)}const[B0,C0]=y0(Nf,!0),Fc=(e,t,r)=>r>32?g0(e,t,r):m0(e,t,r),Mc=(e,t,r)=>r>32?w0(e,t,r):b0(e,t,r);function O0(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let o=0;o<10;o++)r[o]=e[o]^e[o+10]^e[o+20]^e[o+30]^e[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,c=(o+2)%10,f=r[c],l=r[c+1],h=Fc(f,l,1)^r[a],y=Mc(f,l,1)^r[a+1];for(let p=0;p<50;p+=10)e[o+p]^=h,e[o+p+1]^=y}let i=e[2],s=e[3];for(let o=0;o<24;o++){const a=Rf[o],c=Fc(i,s,a),f=Mc(i,s,a),l=Of[o];i=e[l],s=e[l+1],e[l]=c,e[l+1]=f}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)r[a]=e[o+a];for(let a=0;a<10;a++)e[o+a]^=~r[(a+2)%10]&r[(a+4)%10]}e[0]^=B0[n],e[1]^=C0[n]}r.fill(0)}class Fa extends La{constructor(t,r,n,i=!1,s=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=i,this.rounds=s,vs(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=_0(this.state)}keccak(){Uc||Lc(this.state32),O0(this.state32,this.rounds),Uc||Lc(this.state32),this.posOut=0,this.pos=0}update(t){ti(this);const{blockLen:r,state:n}=this;t=Os(t);const i=t.length;for(let s=0;s<i;){const o=Math.min(r-this.pos,i-s);for(let a=0;a<o;a++)n[this.pos++]^=t[s++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:t,suffix:r,pos:n,blockLen:i}=this;t[n]^=r,r&128&&n===i-1&&this.keccak(),t[i-1]^=128,this.keccak()}writeInto(t){ti(this,!1),Oi(t),this.finish();const r=this.state,{blockLen:n}=this;for(let i=0,s=t.length;i<s;){this.posOut>=n&&this.keccak();const o=Math.min(n-this.posOut,s-i);t.set(r.subarray(this.posOut,this.posOut+o),i),this.posOut+=o,i+=o}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return vs(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(Bf(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:r,suffix:n,outputLen:i,rounds:s,enableXOF:o}=this;return t||(t=new Fa(r,n,i,o,s)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=s,t.suffix=n,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}}const R0=(e,t,r)=>Cf(()=>new Fa(t,e,r)),N0=R0(1,136,256/8);function An(e,t){const r=t||"hex",n=N0(qt(e,{strict:!1})?Ci(e):e);return r==="bytes"?n:J(n)}const U0=e=>An(Ci(e));function L0(e){return U0(e)}function F0(e){let t=!0,r="",n=0,i="",s=!1;for(let o=0;o<e.length;o++){const a=e[o];if(["(",")",","].includes(a)&&(t=!0),a==="("&&n++,a===")"&&n--,!!t){if(n===0){if(a===" "&&["event","function",""].includes(i))i="";else if(i+=a,a===")"){s=!0;break}continue}if(a===" "){e[o-1]!==","&&r!==","&&r!==",("&&(r="",t=!1);continue}i+=a,r+=a}}if(!s)throw new F("Unable to normalize signature.");return i}const M0=e=>{const t=typeof e=="string"?e:rh(e);return F0(t)};function Uf(e){return L0(M0(e))}const Rs=Uf;class et extends F{constructor({address:t}){super(`Address "${t}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}class Ns extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){const n=this.keys().next().value;n&&this.delete(n)}return this}}const bo=new Ns(8192);function Ri(e,t){if(bo.has(`${e}.${t}`))return bo.get(`${e}.${t}`);const r=e.substring(2).toLowerCase(),n=An(If(r),"bytes"),i=r.split("");for(let o=0;o<40;o+=2)n[o>>1]>>4>=8&&i[o]&&(i[o]=i[o].toUpperCase()),(n[o>>1]&15)>=8&&i[o+1]&&(i[o+1]=i[o+1].toUpperCase());const s=`0x${i.join("")}`;return bo.set(`${e}.${t}`,s),s}function $0(e,t){if(!Ue(e,{strict:!1}))throw new et({address:e});return Ri(e,t)}const H0=/^0x[a-fA-F0-9]{40}$/,go=new Ns(8192);function Ue(e,t){const{strict:r=!0}=t??{},n=`${e}.${r}`;if(go.has(n))return go.get(n);const i=H0.test(e)?e.toLowerCase()===e?!0:r?Ri(e)===e:!0:!1;return go.set(n,i),i}function Ur(e){return typeof e[0]=="string"?Ct(e):D0(e)}function D0(e){let t=0;for(const i of e)t+=i.length;const r=new Uint8Array(t);let n=0;for(const i of e)r.set(i,n),n+=i.length;return r}function Ct(e){return`0x${e.reduce((t,r)=>t+r.replace("0x",""),"")}`}function hn(e,t,r,{strict:n}={}){return qt(e,{strict:!1})?j0(e,t,r,{strict:n}):Mf(e,t,r,{strict:n})}function Lf(e,t){if(typeof t=="number"&&t>0&&t>Ie(e)-1)throw new Sf({offset:t,position:"start",size:Ie(e)})}function Ff(e,t,r){if(typeof t=="number"&&typeof r=="number"&&Ie(e)!==r-t)throw new Sf({offset:r,position:"end",size:Ie(e)})}function Mf(e,t,r,{strict:n}={}){Lf(e,t);const i=e.slice(t,r);return n&&Ff(i,t,r),i}function j0(e,t,r,{strict:n}={}){Lf(e,t);const i=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return n&&Ff(i,t,r),i}const G0=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,$f=/^(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 Us(e,t){if(e.length!==t.length)throw new Wh({expectedLength:e.length,givenLength:t.length});const r=z0({params:e,values:t}),n=$a(r);return n.length===0?"0x":n}function z0({params:e,values:t}){const r=[];for(let n=0;n<e.length;n++)r.push(Ma({param:e[n],value:t[n]}));return r}function Ma({param:e,value:t}){const r=Ha(e.type);if(r){const[n,i]=r;return V0(t,{length:n,param:{...e,type:i}})}if(e.type==="tuple")return J0(t,{param:e});if(e.type==="address")return q0(t);if(e.type==="bool")return K0(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){const n=e.type.startsWith("int"),[,,i="256"]=$f.exec(e.type)??[];return Y0(t,{signed:n,size:Number(i)})}if(e.type.startsWith("bytes"))return W0(t,{param:e});if(e.type==="string")return X0(t);throw new e0(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function $a(e){let t=0;for(let s=0;s<e.length;s++){const{dynamic:o,encoded:a}=e[s];o?t+=32:t+=Ie(a)}const r=[],n=[];let i=0;for(let s=0;s<e.length;s++){const{dynamic:o,encoded:a}=e[s];o?(r.push(Q(t+i,{size:32})),n.push(a),i+=Ie(a)):r.push(a)}return Ur([...r,...n])}function q0(e){if(!Ue(e))throw new et({address:e});return{dynamic:!1,encoded:hr(e.toLowerCase())}}function V0(e,{length:t,param:r}){const n=t===null;if(!Array.isArray(e))throw new Af(e);if(!n&&e.length!==t)throw new qh({expectedLength:t,givenLength:e.length,type:`${r.type}[${t}]`});let i=!1;const s=[];for(let o=0;o<e.length;o++){const a=Ma({param:r,value:e[o]});a.dynamic&&(i=!0),s.push(a)}if(n||i){const o=$a(s);if(n){const a=Q(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?Ur([a,o]):a}}if(i)return{dynamic:!0,encoded:o}}return{dynamic:!1,encoded:Ur(s.map(({encoded:o})=>o))}}function W0(e,{param:t}){const[,r]=t.type.split("bytes"),n=Ie(e);if(!r){let i=e;return n%32!==0&&(i=hr(i,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:Ur([hr(Q(n,{size:32})),i])}}if(n!==Number.parseInt(r))throw new Vh({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:hr(e,{dir:"right"})}}function K0(e){if(typeof e!="boolean")throw new F(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:hr(kf(e))}}function Y0(e,{signed:t,size:r=256}){if(typeof r=="number"){const n=2n**(BigInt(r)-(t?1n:0n))-1n,i=t?-n-1n:0n;if(e>n||e<i)throw new Tf({max:n.toString(),min:i.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:Q(e,{size:32,signed:t})}}function X0(e){const t=Cs(e),r=Math.ceil(Ie(t)/32),n=[];for(let i=0;i<r;i++)n.push(hr(hn(t,i*32,(i+1)*32),{dir:"right"}));return{dynamic:!0,encoded:Ur([hr(Q(Ie(t),{size:32})),...n])}}function J0(e,{param:t}){let r=!1;const n=[];for(let i=0;i<t.components.length;i++){const s=t.components[i],o=Array.isArray(e)?i:s.name,a=Ma({param:s,value:e[o]});n.push(a),a.dynamic&&(r=!0)}return{dynamic:r,encoded:r?$a(n):Ur(n.map(({encoded:i})=>i))}}function Ha(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}const Ls=e=>hn(Uf(e),0,4);function Sn(e){const{abi:t,args:r=[],name:n}=e,i=qt(n,{strict:!1}),s=t.filter(a=>i?a.type==="function"?Ls(a)===n:a.type==="event"?Rs(a)===n:!1:"name"in a&&a.name===n);if(s.length===0)return;if(s.length===1)return s[0];let o;for(const a of s){if(!("inputs"in a))continue;if(!r||r.length===0){if(!a.inputs||a.inputs.length===0)return a;continue}if(!a.inputs||a.inputs.length===0||a.inputs.length!==r.length)continue;if(r.every((f,l)=>{const h="inputs"in a&&a.inputs[l];return h?ia(f,h):!1})){if(o&&"inputs"in o&&o.inputs){const f=Hf(a.inputs,o.inputs,r);if(f)throw new Qh({abiItem:a,type:f[0]},{abiItem:o,type:f[1]})}o=a}}return o||s[0]}function ia(e,t){const r=typeof e,n=t.type;switch(n){case"address":return Ue(e,{strict:!1});case"bool":return r==="boolean";case"function":return r==="string";case"string":return r==="string";default:return n==="tuple"&&"components"in t?Object.values(t.components).every((i,s)=>ia(Object.values(e)[s],i)):/^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(n)?r==="number"||r==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(n)?r==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(n)?Array.isArray(e)&&e.every(i=>ia(i,{...t,type:n.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function Hf(e,t,r){for(const n in e){const i=e[n],s=t[n];if(i.type==="tuple"&&s.type==="tuple"&&"components"in i&&"components"in s)return Hf(i.components,s.components,r[n]);const o=[i.type,s.type];if(o.includes("address")&&o.includes("bytes20")?!0:o.includes("address")&&o.includes("string")?Ue(r[n],{strict:!1}):o.includes("address")&&o.includes("bytes")?Ue(r[n],{strict:!1}):!1)return o}}const $c="/docs/contract/encodeEventTopics";function Da(e){var c;const{abi:t,eventName:r,args:n}=e;let i=t[0];if(r){const f=Sn({abi:t,name:r});if(!f)throw new Cc(r,{docsPath:$c});i=f}if(i.type!=="event")throw new Cc(void 0,{docsPath:$c});const s=It(i),o=Rs(s);let a=[];if(n&&"inputs"in i){const f=(c=i.inputs)==null?void 0:c.filter(h=>"indexed"in h&&h.indexed),l=Array.isArray(n)?n:Object.values(n).length>0?(f==null?void 0:f.map(h=>n[h.name]))??[]:[];l.length>0&&(a=(f==null?void 0:f.map((h,y)=>Array.isArray(l[y])?l[y].map((p,g)=>Hc({param:h,value:l[y][g]})):typeof l[y]<"u"&&l[y]!==null?Hc({param:h,value:l[y]}):null))??[])}return[o,...a]}function Hc({param:e,value:t}){if(e.type==="string"||e.type==="bytes")return An(Ci(t));if(e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/))throw new n0(e.type);return Us([e],[t])}function Q0(e,{method:t}){var n,i;const r={};return e.transport.type==="fallback"&&((i=(n=e.transport).onResponse)==null||i.call(n,({method:s,response:o,status:a,transport:c})=>{a==="success"&&t===s&&(r[o]=c.request)})),s=>r[s]||e.request}async function Df(e,t){const{address:r,abi:n,args:i,eventName:s,fromBlock:o,strict:a,toBlock:c}=t,f=Q0(e,{method:"eth_newFilter"}),l=s?Da({abi:n,args:i,eventName:s}):void 0,h=await e.request({method:"eth_newFilter",params:[{address:r,fromBlock:typeof o=="bigint"?Q(o):o,toBlock:typeof c=="bigint"?Q(c):c,topics:l}]});return{abi:n,args:i,eventName:s,id:h,request:f(h),strict:!!a,type:"event"}}function Le(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}const Dc="/docs/contract/encodeFunctionData";function Z0(e){const{abi:t,args:r,functionName:n}=e;let i=t[0];if(n){const s=Sn({abi:t,args:r,name:n});if(!s)throw new ei(n,{docsPath:Dc});i=s}if(i.type!=="function")throw new ei(void 0,{docsPath:Dc});return{abi:[i],functionName:Ls(It(i))}}function Pn(e){const{args:t}=e,{abi:r,functionName:n}=(()=>{var a;return e.abi.length===1&&((a=e.functionName)!=null&&a.startsWith("0x"))?e:Z0(e)})(),i=r[0],s=n,o="inputs"in i&&i.inputs?Us(i.inputs,t??[]):void 0;return Ct([s,o??"0x"])}const ep={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."},jf={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},tp={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};class jc extends F{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class Gf extends F{constructor({length:t,position:r}){super(`Position \`${r}\` is out of bounds (\`0 < position < ${t}\`).`,{name:"PositionOutOfBoundsError"})}}class rp extends F{constructor({count:t,limit:r}){super(`Recursive read limit of \`${r}\` exceeded (recursive read count: \`${t}\`).`,{name:"RecursiveReadLimitExceededError"})}}const np={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new rp({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Gf({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new jc({offset:e});const 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 jc({offset:e});const t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){const r=t??this.position;return this.assertPosition(r+e-1),this.bytes.subarray(r,r+e)},inspectUint8(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){const t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){const t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){const 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();const e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();const r=this.inspectBytes(e);return this.position+=t??e,r},readUint8(){this.assertReadLimit(),this._touch();const e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();const e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();const e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();const e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){const t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function ja(e,{recursiveReadLimit:t=8192}={}){const r=Object.create(np);return r.bytes=e,r.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),r.positionReadCount=new Map,r.recursiveReadLimit=t,r}function ip(e,t={}){typeof t.size<"u"&&Bt(e,{size:t.size});const r=Ze(e,t);return pt(r,t)}function sp(e,t={}){let r=e;if(typeof t.size<"u"&&(Bt(r,{size:t.size}),r=Nr(r)),r.length>1||r[0]>1)throw new s0(r);return!!r[0]}function jt(e,t={}){typeof t.size<"u"&&Bt(e,{size:t.size});const r=Ze(e,t);return Vt(r,t)}function op(e,t={}){let r=e;return typeof t.size<"u"&&(Bt(r,{size:t.size}),r=Nr(r,{dir:"right"})),new TextDecoder().decode(r)}function Ni(e,t){const r=typeof t=="string"?Wt(t):t,n=ja(r);if(Ie(r)===0&&e.length>0)throw new Na;if(Ie(t)&&Ie(t)<32)throw new _f({data:typeof t=="string"?t:Ze(t),params:e,size:Ie(t)});let i=0;const s=[];for(let o=0;o<e.length;++o){const a=e[o];n.setPosition(i);const[c,f]=sn(n,a,{staticPosition:0});i+=f,s.push(c)}return s}function sn(e,t,{staticPosition:r}){const n=Ha(t.type);if(n){const[i,s]=n;return cp(e,{...t,type:s},{length:i,staticPosition:r})}if(t.type==="tuple")return lp(e,t,{staticPosition:r});if(t.type==="address")return ap(e);if(t.type==="bool")return up(e);if(t.type.startsWith("bytes"))return fp(e,t,{staticPosition:r});if(t.type.startsWith("uint")||t.type.startsWith("int"))return dp(e,t);if(t.type==="string")return hp(e,{staticPosition:r});throw new t0(t.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const Gc=32,sa=32;function ap(e){const t=e.readBytes(32);return[Ri(Ze(Mf(t,-20))),32]}function cp(e,t,{length:r,staticPosition:n}){if(!r){const o=jt(e.readBytes(sa)),a=n+o,c=a+Gc;e.setPosition(a);const f=jt(e.readBytes(Gc)),l=ri(t);let h=0;const y=[];for(let p=0;p<f;++p){e.setPosition(c+(l?p*32:h));const[g,_]=sn(e,t,{staticPosition:c});h+=_,y.push(g)}return e.setPosition(n+32),[y,32]}if(ri(t)){const o=jt(e.readBytes(sa)),a=n+o,c=[];for(let f=0;f<r;++f){e.setPosition(a+f*32);const[l]=sn(e,t,{staticPosition:a});c.push(l)}return e.setPosition(n+32),[c,32]}let i=0;const s=[];for(let o=0;o<r;++o){const[a,c]=sn(e,t,{staticPosition:n+i});i+=c,s.push(a)}return[s,i]}function up(e){return[sp(e.readBytes(32),{size:32}),32]}function fp(e,t,{staticPosition:r}){const[n,i]=t.type.split("bytes");if(!i){const o=jt(e.readBytes(32));e.setPosition(r+o);const a=jt(e.readBytes(32));if(a===0)return e.setPosition(r+32),["0x",32];const c=e.readBytes(a);return e.setPosition(r+32),[Ze(c),32]}return[Ze(e.readBytes(Number.parseInt(i),32)),32]}function dp(e,t){const r=t.type.startsWith("int"),n=Number.parseInt(t.type.split("int")[1]||"256"),i=e.readBytes(32);return[n>48?ip(i,{signed:r}):jt(i,{signed:r}),32]}function lp(e,t,{staticPosition:r}){const n=t.components.length===0||t.components.some(({name:o})=>!o),i=n?[]:{};let s=0;if(ri(t)){const o=jt(e.readBytes(sa)),a=r+o;for(let c=0;c<t.components.length;++c){const f=t.components[c];e.setPosition(a+s);const[l,h]=sn(e,f,{staticPosition:a});s+=h,i[n?c:f==null?void 0:f.name]=l}return e.setPosition(r+32),[i,32]}for(let o=0;o<t.components.length;++o){const a=t.components[o],[c,f]=sn(e,a,{staticPosition:r});i[n?o:a==null?void 0:a.name]=c,s+=f}return[i,s]}function hp(e,{staticPosition:t}){const r=jt(e.readBytes(32)),n=t+r;e.setPosition(n);const i=jt(e.readBytes(32));if(i===0)return e.setPosition(t+32),["",32];const s=e.readBytes(i,32),o=op(Nr(s));return e.setPosition(t+32),[o,32]}function ri(e){var n;const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return(n=e.components)==null?void 0:n.some(ri);const r=Ha(e.type);return!!(r&&ri({...e,type:r[1]}))}function zf(e){const{abi:t,data:r}=e,n=hn(r,0,4);if(n==="0x")throw new Na;const s=[...t||[],jf,tp].find(o=>o.type==="error"&&n===Ls(It(o)));if(!s)throw new vf(n,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:s,args:"inputs"in s&&s.inputs&&s.inputs.length>0?Ni(s.inputs,hn(r,4)):void 0,errorName:s.name}}const rt=(e,t,r)=>JSON.stringify(e,(n,i)=>typeof i=="bigint"?i.toString():i,r);function qf({abiItem:e,args:t,includeFunctionName:r=!0,includeName:n=!1}){if("name"in e&&"inputs"in e&&e.inputs)return`${r?e.name:""}(${e.inputs.map((i,s)=>`${n&&i.name?`${i.name}: `:""}${typeof t[s]=="object"?rt(t[s]):t[s]}`).join(", ")})`}const pp={gwei:9,wei:18},yp={ether:-9,wei:9};function Vf(e,t){let r=e.toString();const n=r.startsWith("-");n&&(r=r.slice(1)),r=r.padStart(t,"0");let[i,s]=[r.slice(0,r.length-t),r.slice(r.length-t)];return s=s.replace(/(0+)$/,""),`${n?"-":""}${i||"0"}${s?`.${s}`:""}`}function Ga(e,t="wei"){return Vf(e,pp[t])}function nt(e,t="wei"){return Vf(e,yp[t])}class mp extends F{constructor({address:t}){super(`State for account "${t}" is set multiple times.`,{name:"AccountStateConflictError"})}}class bp extends F{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function zc(e){return e.reduce((t,{slot:r,value:n})=>`${t} ${r}: ${n}
|
|
23
|
+
`,"")}function gp(e){return e.reduce((t,{address:r,...n})=>{let i=`${t} ${r}:
|
|
24
|
+
`;return n.nonce&&(i+=` nonce: ${n.nonce}
|
|
25
|
+
`),n.balance&&(i+=` balance: ${n.balance}
|
|
26
|
+
`),n.code&&(i+=` code: ${n.code}
|
|
27
|
+
`),n.state&&(i+=` state:
|
|
28
|
+
`,i+=zc(n.state)),n.stateDiff&&(i+=` stateDiff:
|
|
29
|
+
`,i+=zc(n.stateDiff)),i},` State Override:
|
|
30
|
+
`).slice(0,-1)}function Ui(e){const t=Object.entries(e).map(([n,i])=>i===void 0||i===!1?null:[n,i]).filter(Boolean),r=t.reduce((n,[i])=>Math.max(n,i.length),0);return t.map(([n,i])=>` ${`${n}:`.padEnd(r+1)} ${i}`).join(`
|
|
31
|
+
`)}class wp extends F{constructor(){super(["Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.","Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others."].join(`
|
|
32
|
+
`),{name:"FeeConflictError"})}}class _p extends F{constructor({v:t}){super(`Invalid \`v\` value "${t}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}}class vp extends F{constructor({transaction:t}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",Ui(t),"}","","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"})}}class Ep extends F{constructor({storageKey:t}){super(`Size for storage key "${t}" is invalid. Expected 32 bytes. Got ${Math.floor((t.length-2)/2)} bytes.`,{name:"InvalidStorageKeySizeError"})}}class xp extends F{constructor(t,{account:r,docsPath:n,chain:i,data:s,gas:o,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:f,nonce:l,to:h,value:y}){var g;const p=Ui({chain:i&&`${i==null?void 0:i.name} (id: ${i==null?void 0:i.id})`,from:r==null?void 0:r.address,to:h,value:typeof y<"u"&&`${Ga(y)} ${((g=i==null?void 0:i.nativeCurrency)==null?void 0:g.symbol)||"ETH"}`,data:s,gas:o,gasPrice:typeof a<"u"&&`${nt(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${nt(c)} gwei`,maxPriorityFeePerGas:typeof f<"u"&&`${nt(f)} gwei`,nonce:l});super(t.shortMessage,{cause:t,docsPath:n,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",p].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}const Ap=e=>e,Fs=e=>e;class Sp extends F{constructor(t,{account:r,docsPath:n,chain:i,data:s,gas:o,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:f,nonce:l,to:h,value:y,stateOverride:p}){var x;const g=r?Le(r):void 0;let _=Ui({from:g==null?void 0:g.address,to:h,value:typeof y<"u"&&`${Ga(y)} ${((x=i==null?void 0:i.nativeCurrency)==null?void 0:x.symbol)||"ETH"}`,data:s,gas:o,gasPrice:typeof a<"u"&&`${nt(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${nt(c)} gwei`,maxPriorityFeePerGas:typeof f<"u"&&`${nt(f)} gwei`,nonce:l});p&&(_+=`
|
|
33
|
+
${gp(p)}`),super(t.shortMessage,{cause:t,docsPath:n,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Raw Call Arguments:",_].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class Pp extends F{constructor(t,{abi:r,args:n,contractAddress:i,docsPath:s,functionName:o,sender:a}){const c=Sn({abi:r,args:n,name:o}),f=c?qf({abiItem:c,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=c?It(c,{includeName:!0}):void 0,h=Ui({address:i&&Ap(i),function:l,args:f&&f!=="()"&&`${[...Array((o==null?void 0:o.length)??0).keys()].map(()=>" ").join("")}${f}`,sender:a});super(t.shortMessage||`An unknown error occurred while executing the contract function "${o}".`,{cause:t,docsPath:s,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],h&&"Contract Call:",h].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=r,this.args=n,this.cause=t,this.contractAddress=i,this.functionName=o,this.sender=a}}class Tp extends F{constructor({abi:t,data:r,functionName:n,message:i}){let s,o,a,c;if(r&&r!=="0x")try{o=zf({abi:t,data:r});const{abiItem:l,errorName:h,args:y}=o;if(h==="Error")c=y[0];else if(h==="Panic"){const[p]=y;c=ep[p]}else{const p=l?It(l,{includeName:!0}):void 0,g=l&&y?qf({abiItem:l,args:y,includeFunctionName:!1,includeName:!1}):void 0;a=[p?`Error: ${p}`:"",g&&g!=="()"?` ${[...Array((h==null?void 0:h.length)??0).keys()].map(()=>" ").join("")}${g}`:""]}}catch(l){s=l}else i&&(c=i);let f;s instanceof vf&&(f=s.signature,a=[`Unable to decode signature "${f}" 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://openchain.xyz/signatures?query=${f}.`]),super(c&&c!=="execution reverted"||f?[`The contract function "${n}" reverted with the following ${f?"signature":"reason"}:`,c||f].join(`
|
|
34
|
+
`):`The contract function "${n}" reverted.`,{cause:s,metaMessages:a,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=r,this.reason=c,this.signature=f}}class kp extends F{constructor({functionName:t}){super(`The contract function "${t}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${t}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}}class Ip extends F{constructor({factory:t}){super(`Deployment for counterfactual contract call failed${t?` for factory "${t}".`:""}`,{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"})}}class Wf extends F{constructor({data:t,message:r}){super(r||"",{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=t}}class on extends F{constructor({body:t,cause:r,details:n,headers:i,status:s,url:o}){super("HTTP request failed.",{cause:r,details:n,metaMessages:[s&&`Status: ${s}`,`URL: ${Fs(o)}`,t&&`Request body: ${rt(t)}`].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=t,this.headers=i,this.status=s,this.url=o}}class za extends F{constructor({body:t,error:r,url:n}){super("RPC Request failed.",{cause:r,details:r.message,metaMessages:[`URL: ${Fs(n)}`,`Request body: ${rt(t)}`],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}),this.code=r.code,this.data=r.data}}class qc extends F{constructor({body:t,url:r}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${Fs(r)}`,`Request body: ${rt(t)}`],name:"TimeoutError"})}}const Bp=-1;class it extends F{constructor(t,{code:r,docsPath:n,metaMessages:i,name:s,shortMessage:o}){super(o,{cause:t,docsPath:n,metaMessages:i||(t==null?void 0:t.metaMessages),name:s||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=s||t.name,this.code=t instanceof za?t.code:r??Bp}}class ct extends it{constructor(t,r){super(t,r),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=r.data}}class ni extends it{constructor(t){super(t,{code:ni.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(ni,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class ii extends it{constructor(t){super(t,{code:ii.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(ii,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class si extends it{constructor(t,{method:r}={}){super(t,{code:si.code,name:"MethodNotFoundRpcError",shortMessage:`The method${r?` "${r}"`:""} does not exist / is not available.`})}}Object.defineProperty(si,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class oi extends it{constructor(t){super(t,{code:oi.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
|
|
35
|
+
`)})}}Object.defineProperty(oi,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class Lr extends it{constructor(t){super(t,{code:Lr.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(Lr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class pn extends it{constructor(t){super(t,{code:pn.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
|
|
36
|
+
`)})}}Object.defineProperty(pn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class ai extends it{constructor(t){super(t,{code:ai.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(ai,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class ci extends it{constructor(t){super(t,{code:ci.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(ci,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class ui extends it{constructor(t){super(t,{code:ui.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(ui,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class Ir extends it{constructor(t,{method:r}={}){super(t,{code:Ir.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${r?` "${r}"`:""} is not supported.`})}}Object.defineProperty(Ir,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class yn extends it{constructor(t){super(t,{code:yn.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(yn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class fi extends it{constructor(t){super(t,{code:fi.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(fi,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class an extends ct{constructor(t){super(t,{code:an.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(an,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class di extends ct{constructor(t){super(t,{code:di.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(di,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class li extends ct{constructor(t,{method:r}={}){super(t,{code:li.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${r?` " ${r}"`:""}.`})}}Object.defineProperty(li,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class hi extends ct{constructor(t){super(t,{code:hi.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(hi,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class pi extends ct{constructor(t){super(t,{code:pi.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(pi,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class yi extends ct{constructor(t){super(t,{code:yi.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(yi,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class mi extends ct{constructor(t){super(t,{code:mi.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(mi,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class bi extends ct{constructor(t){super(t,{code:bi.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}}Object.defineProperty(bi,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});class gi extends ct{constructor(t){super(t,{code:gi.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(gi,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class wi extends ct{constructor(t){super(t,{code:wi.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(wi,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class _i extends ct{constructor(t){super(t,{code:_i.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty(_i,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class vi extends ct{constructor(t){super(t,{code:vi.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(vi,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class Ei extends ct{constructor(t){super(t,{code:Ei.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(Ei,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class Cp extends it{constructor(t){super(t,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}const Op=3;function Ms(e,{abi:t,address:r,args:n,docsPath:i,functionName:s,sender:o}){const a=e instanceof Wf?e:e instanceof F?e.walk(g=>"data"in g)||e.walk():{},{code:c,data:f,details:l,message:h,shortMessage:y}=a,p=e instanceof Na?new kp({functionName:s}):[Op,Lr.code].includes(c)&&(f||l||h||y)?new Tp({abi:t,data:typeof f=="object"?f.data:f,functionName:s,message:a instanceof za?l:y??h}):e;return new Pp(p,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:s,sender:o})}function Rp(e){const t=An(`0x${e.substring(4)}`).substring(26);return Ri(`0x${t}`)}async function Np({hash:e,signature:t}){const r=qt(e)?e:J(e),{secp256k1:n}=await Promise.resolve().then(()=>require("./secp256k1-BQpu7aiB.cjs"));return`0x${(()=>{if(typeof t=="object"&&"r"in t&&"s"in t){const{r:f,s:l,v:h,yParity:y}=t,p=Number(y??h),g=Vc(p);return new n.Signature(pt(f),pt(l)).addRecoveryBit(g)}const o=qt(t)?t:J(t),a=Vt(`0x${o.slice(130)}`),c=Vc(a);return n.Signature.fromCompact(o.substring(2,130)).addRecoveryBit(c)})().recoverPublicKey(r.substring(2)).toHex(!1)}`}function Vc(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw new Error("Invalid yParityOrV value")}async function Up({hash:e,signature:t}){return Rp(await Np({hash:e,signature:t}))}function mr(e,t="hex"){const r=Kf(e),n=ja(new Uint8Array(r.length));return r.encode(n),t==="hex"?Ze(n.bytes):n.bytes}function Kf(e){return Array.isArray(e)?Lp(e.map(t=>Kf(t))):Fp(e)}function Lp(e){const t=e.reduce((i,s)=>i+s.length,0),r=Yf(t);return{length:t<=55?1+t:1+r+t,encode(i){t<=55?i.pushByte(192+t):(i.pushByte(247+r),r===1?i.pushUint8(t):r===2?i.pushUint16(t):r===3?i.pushUint24(t):i.pushUint32(t));for(const{encode:s}of e)s(i)}}}function Fp(e){const t=typeof e=="string"?Wt(e):e,r=Yf(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+r+t.length,encode(i){t.length===1&&t[0]<128?i.pushBytes(t):t.length<=55?(i.pushByte(128+t.length),i.pushBytes(t)):(i.pushByte(183+r),r===1?i.pushUint8(t.length):r===2?i.pushUint16(t.length):r===3?i.pushUint24(t.length):i.pushUint32(t.length),i.pushBytes(t))}}}function Yf(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.")}function Mp(e){const{chainId:t,nonce:r,to:n}=e,i=e.contractAddress??e.address,s=An(Ct(["0x05",mr([t?Q(t):"0x",i,r?Q(r):"0x"])]));return n==="bytes"?Wt(s):s}async function Xf(e){const{authorization:t,signature:r}=e;return Up({hash:Mp(t),signature:r??t})}class $p extends F{constructor(t,{account:r,docsPath:n,chain:i,data:s,gas:o,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:f,nonce:l,to:h,value:y}){var g;const p=Ui({from:r==null?void 0:r.address,to:h,value:typeof y<"u"&&`${Ga(y)} ${((g=i==null?void 0:i.nativeCurrency)==null?void 0:g.symbol)||"ETH"}`,data:s,gas:o,gasPrice:typeof a<"u"&&`${nt(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${nt(c)} gwei`,maxPriorityFeePerGas:typeof f<"u"&&`${nt(f)} gwei`,nonce:l});super(t.shortMessage,{cause:t,docsPath:n,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Estimate Gas Arguments:",p].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class rn extends F{constructor({cause:t,message:r}={}){var i;const n=(i=r==null?void 0:r.replace("execution reverted: ",""))==null?void 0:i.replace("execution reverted","");super(`Execution reverted ${n?`with reason: ${n}`:"for an unknown reason"}.`,{cause:t,name:"ExecutionRevertedError"})}}Object.defineProperty(rn,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(rn,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class Fr extends F{constructor({cause:t,maxFeePerGas:r}={}){super(`The fee cap (\`maxFeePerGas\`${r?` = ${nt(r)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:t,name:"FeeCapTooHighError"})}}Object.defineProperty(Fr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class oa extends F{constructor({cause:t,maxFeePerGas:r}={}){super(`The fee cap (\`maxFeePerGas\`${r?` = ${nt(r)}`:""} gwei) cannot be lower than the block base fee.`,{cause:t,name:"FeeCapTooLowError"})}}Object.defineProperty(oa,"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/});class aa extends F{constructor({cause:t,nonce:r}={}){super(`Nonce provided for the transaction ${r?`(${r}) `:""}is higher than the next one expected.`,{cause:t,name:"NonceTooHighError"})}}Object.defineProperty(aa,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class ca extends F{constructor({cause:t,nonce:r}={}){super([`Nonce provided for the transaction ${r?`(${r}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
|
|
37
|
+
`),{cause:t,name:"NonceTooLowError"})}}Object.defineProperty(ca,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class ua extends F{constructor({cause:t,nonce:r}={}){super(`Nonce provided for the transaction ${r?`(${r}) `:""}exceeds the maximum allowed nonce.`,{cause:t,name:"NonceMaxValueError"})}}Object.defineProperty(ua,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class fa extends F{constructor({cause:t}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
|
|
38
|
+
`),{cause:t,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(fa,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class da extends F{constructor({cause:t,gas:r}={}){super(`The amount of gas ${r?`(${r}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:t,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(da,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class la extends F{constructor({cause:t,gas:r}={}){super(`The amount of gas ${r?`(${r}) `:""}provided for the transaction is too low.`,{cause:t,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(la,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class ha extends F{constructor({cause:t}){super("The transaction type is not supported for this chain.",{cause:t,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(ha,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class xi extends F{constructor({cause:t,maxPriorityFeePerGas:r,maxFeePerGas:n}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${r?` = ${nt(r)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${n?` = ${nt(n)} gwei`:""}).`].join(`
|
|
39
|
+
`),{cause:t,name:"TipAboveFeeCapError"})}}Object.defineProperty(xi,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class $s extends F{constructor({cause:t}){super(`An error occurred while executing: ${t==null?void 0:t.shortMessage}`,{cause:t,name:"UnknownNodeError"})}}function qa(e,t){const r=(e.details||"").toLowerCase(),n=e instanceof F?e.walk(i=>(i==null?void 0:i.code)===rn.code):e;return n instanceof F?new rn({cause:e,message:n.details}):rn.nodeMessage.test(r)?new rn({cause:e,message:e.details}):Fr.nodeMessage.test(r)?new Fr({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):oa.nodeMessage.test(r)?new oa({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):aa.nodeMessage.test(r)?new aa({cause:e,nonce:t==null?void 0:t.nonce}):ca.nodeMessage.test(r)?new ca({cause:e,nonce:t==null?void 0:t.nonce}):ua.nodeMessage.test(r)?new ua({cause:e,nonce:t==null?void 0:t.nonce}):fa.nodeMessage.test(r)?new fa({cause:e}):da.nodeMessage.test(r)?new da({cause:e,gas:t==null?void 0:t.gas}):la.nodeMessage.test(r)?new la({cause:e,gas:t==null?void 0:t.gas}):ha.nodeMessage.test(r)?new ha({cause:e}):xi.nodeMessage.test(r)?new xi({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas,maxPriorityFeePerGas:t==null?void 0:t.maxPriorityFeePerGas}):new $s({cause:e})}function Hp(e,{docsPath:t,...r}){const n=(()=>{const i=qa(e,r);return i instanceof $s?e:i})();return new $p(n,{docsPath:t,...r})}function Va(e,{format:t}){if(!t)return{};const r={};function n(s){const o=Object.keys(s);for(const a of o)a in e&&(r[a]=e[a]),s[a]&&typeof s[a]=="object"&&!Array.isArray(s[a])&&n(s[a])}const i=t(e||{});return n(i),r}function Wa(e,t){return({exclude:r,format:n})=>({exclude:r,format:i=>{const s=t(i);if(r)for(const o of r)delete s[o];return{...s,...n(i)}},type:e})}const Dp={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function Hs(e){const t={};return typeof e.authorizationList<"u"&&(t.authorizationList=jp(e.authorizationList)),typeof e.accessList<"u"&&(t.accessList=e.accessList),typeof e.blobVersionedHashes<"u"&&(t.blobVersionedHashes=e.blobVersionedHashes),typeof e.blobs<"u"&&(typeof e.blobs[0]!="string"?t.blobs=e.blobs.map(r=>Ze(r)):t.blobs=e.blobs),typeof e.data<"u"&&(t.data=e.data),typeof e.from<"u"&&(t.from=e.from),typeof e.gas<"u"&&(t.gas=Q(e.gas)),typeof e.gasPrice<"u"&&(t.gasPrice=Q(e.gasPrice)),typeof e.maxFeePerBlobGas<"u"&&(t.maxFeePerBlobGas=Q(e.maxFeePerBlobGas)),typeof e.maxFeePerGas<"u"&&(t.maxFeePerGas=Q(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(t.maxPriorityFeePerGas=Q(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(t.nonce=Q(e.nonce)),typeof e.to<"u"&&(t.to=e.to),typeof e.type<"u"&&(t.type=Dp[e.type]),typeof e.value<"u"&&(t.value=Q(e.value)),t}function jp(e){return e.map(t=>({address:t.address,r:t.r?Q(BigInt(t.r)):t.r,s:t.s?Q(BigInt(t.s)):t.s,chainId:Q(t.chainId),nonce:Q(t.nonce),...typeof t.yParity<"u"?{yParity:Q(t.yParity)}:{},...typeof t.v<"u"&&typeof t.yParity>"u"?{v:Q(t.v)}:{}}))}function Wc(e){if(!(!e||e.length===0))return e.reduce((t,{slot:r,value:n})=>{if(r.length!==66)throw new Oc({size:r.length,targetSize:66,type:"hex"});if(n.length!==66)throw new Oc({size:n.length,targetSize:66,type:"hex"});return t[r]=n,t},{})}function Gp(e){const{balance:t,nonce:r,state:n,stateDiff:i,code:s}=e,o={};if(s!==void 0&&(o.code=s),t!==void 0&&(o.balance=Q(t)),r!==void 0&&(o.nonce=Q(r)),n!==void 0&&(o.state=Wc(n)),i!==void 0){if(o.state)throw new bp;o.stateDiff=Wc(i)}return o}function Jf(e){if(!e)return;const t={};for(const{address:r,...n}of e){if(!Ue(r,{strict:!1}))throw new et({address:r});if(t[r])throw new mp({address:r});t[r]=Gp(n)}return t}const Ds=2n**256n-1n;function Li(e){const{account:t,gasPrice:r,maxFeePerGas:n,maxPriorityFeePerGas:i,to:s}=e,o=t?Le(t):void 0;if(o&&!Ue(o.address))throw new et({address:o.address});if(s&&!Ue(s))throw new et({address:s});if(typeof r<"u"&&(typeof n<"u"||typeof i<"u"))throw new wp;if(n&&n>Ds)throw new Fr({maxFeePerGas:n});if(i&&n&&i>n)throw new xi({maxFeePerGas:n,maxPriorityFeePerGas:i})}class zp extends F{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class Ka extends F{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class qp extends F{constructor({maxPriorityFeePerGas:t}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${nt(t)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class Vp extends F{constructor({blockHash:t,blockNumber:r}){let n="Block";t&&(n=`Block at hash "${t}"`),r&&(n=`Block at number "${r}"`),super(`${n} could not be found.`,{name:"BlockNotFoundError"})}}const Qf={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function Ya(e){const t={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Vt(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?Vt(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Qf[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&&(t.authorizationList=Kp(e.authorizationList)),t.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof t.v=="bigint"){if(t.v===0n||t.v===27n)return 0;if(t.v===1n||t.v===28n)return 1;if(t.v>=35n)return t.v%2n===0n?1:0}})(),t.type==="legacy"&&(delete t.accessList,delete t.maxFeePerBlobGas,delete t.maxFeePerGas,delete t.maxPriorityFeePerGas,delete t.yParity),t.type==="eip2930"&&(delete t.maxFeePerBlobGas,delete t.maxFeePerGas,delete t.maxPriorityFeePerGas),t.type==="eip1559"&&delete t.maxFeePerBlobGas,t}const Wp=Wa("transaction",Ya);function Kp(e){return e.map(t=>({address:t.address,chainId:Number(t.chainId),nonce:Number(t.nonce),r:t.r,s:t.s,yParity:Number(t.yParity)}))}function Zf(e){const t=(e.transactions??[]).map(r=>typeof r=="string"?r:Ya(r));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:t,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}const Yp=Wa("block",Zf);async function Es(e,{blockHash:t,blockNumber:r,blockTag:n,includeTransactions:i}={}){var l,h,y;const s=n??"latest",o=i??!1,a=r!==void 0?Q(r):void 0;let c=null;if(t?c=await e.request({method:"eth_getBlockByHash",params:[t,o]},{dedupe:!0}):c=await e.request({method:"eth_getBlockByNumber",params:[a||s,o]},{dedupe:!!a}),!c)throw new Vp({blockHash:t,blockNumber:r});return(((y=(h=(l=e.chain)==null?void 0:l.formatters)==null?void 0:h.block)==null?void 0:y.format)||Zf)(c)}async function ed(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function Xp(e,t){var s,o;const{block:r,chain:n=e.chain,request:i}=t||{};try{const a=((s=n==null?void 0:n.fees)==null?void 0:s.maxPriorityFeePerGas)??((o=n==null?void 0:n.fees)==null?void 0:o.defaultPriorityFee);if(typeof a=="function"){const f=r||await oe(e,Es,"getBlock")({}),l=await a({block:f,client:e,request:i});if(l===null)throw new Error;return l}if(typeof a<"u")return a;const c=await e.request({method:"eth_maxPriorityFeePerGas"});return pt(c)}catch{const[a,c]=await Promise.all([r?Promise.resolve(r):oe(e,Es,"getBlock")({}),oe(e,ed,"getGasPrice")({})]);if(typeof a.baseFeePerGas!="bigint")throw new Ka;const f=c-a.baseFeePerGas;return f<0n?0n:f}}async function Kc(e,t){var y,p;const{block:r,chain:n=e.chain,request:i,type:s="eip1559"}=t||{},o=await(async()=>{var g,_;return typeof((g=n==null?void 0:n.fees)==null?void 0:g.baseFeeMultiplier)=="function"?n.fees.baseFeeMultiplier({block:r,client:e,request:i}):((_=n==null?void 0:n.fees)==null?void 0:_.baseFeeMultiplier)??1.2})();if(o<1)throw new zp;const c=10**(((y=o.toString().split(".")[1])==null?void 0:y.length)??0),f=g=>g*BigInt(Math.ceil(o*c))/BigInt(c),l=r||await oe(e,Es,"getBlock")({});if(typeof((p=n==null?void 0:n.fees)==null?void 0:p.estimateFeesPerGas)=="function"){const g=await n.fees.estimateFeesPerGas({block:r,client:e,multiply:f,request:i,type:s});if(g!==null)return g}if(s==="eip1559"){if(typeof l.baseFeePerGas!="bigint")throw new Ka;const g=typeof(i==null?void 0:i.maxPriorityFeePerGas)=="bigint"?i.maxPriorityFeePerGas:await Xp(e,{block:l,chain:n,request:i}),_=f(l.baseFeePerGas);return{maxFeePerGas:(i==null?void 0:i.maxFeePerGas)??_+g,maxPriorityFeePerGas:g}}return{gasPrice:(i==null?void 0:i.gasPrice)??f(await oe(e,ed,"getGasPrice")({}))}}async function td(e,{address:t,blockTag:r="latest",blockNumber:n}){const i=await e.request({method:"eth_getTransactionCount",params:[t,n?Q(n):r]},{dedupe:!!n});return Vt(i)}function Xa(e){const{kzg:t}=e,r=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),n=typeof e.blobs[0]=="string"?e.blobs.map(s=>Wt(s)):e.blobs,i=[];for(const s of n)i.push(Uint8Array.from(t.blobToKzgCommitment(s)));return r==="bytes"?i:i.map(s=>Ze(s))}function Ja(e){const{kzg:t}=e,r=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),n=typeof e.blobs[0]=="string"?e.blobs.map(o=>Wt(o)):e.blobs,i=typeof e.commitments[0]=="string"?e.commitments.map(o=>Wt(o)):e.commitments,s=[];for(let o=0;o<n.length;o++){const a=n[o],c=i[o];s.push(Uint8Array.from(t.computeBlobKzgProof(a,c)))}return r==="bytes"?s:s.map(o=>Ze(o))}function Jp(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);const i=BigInt(32),s=BigInt(4294967295),o=Number(r>>i&s),a=Number(r&s),c=n?4:0,f=n?0:4;e.setUint32(t+c,o,n),e.setUint32(t+f,a,n)}function Qp(e,t,r){return e&t^~e&r}function Zp(e,t,r){return e&t^e&r^t&r}let ey=class extends La{constructor(t,r,n,i){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.buffer=new Uint8Array(t),this.view=mo(this.buffer)}update(t){ti(this);const{view:r,buffer:n,blockLen:i}=this;t=Os(t);const s=t.length;for(let o=0;o<s;){const a=Math.min(i-this.pos,s-o);if(a===i){const c=mo(t);for(;i<=s-o;o+=i)this.process(c,o);continue}n.set(t.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){ti(this),Bf(t,this),this.finished=!0;const{buffer:r,view:n,blockLen:i,isLE:s}=this;let{pos:o}=this;r[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(n,0),o=0);for(let h=o;h<i;h++)r[h]=0;Jp(n,i-8,BigInt(this.length*8),s),this.process(n,0);const a=mo(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const f=c/4,l=this.get();if(f>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<f;h++)a.setUint32(4*h,l[h],s)}digest(){const{buffer:t,outputLen:r}=this;this.digestInto(t);const n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());const{blockLen:r,buffer:n,length:i,finished:s,destroyed:o,pos:a}=this;return t.length=i,t.pos=a,t.finished=s,t.destroyed=o,i%r&&t.buffer.set(n),t}};const ty=new Uint32Array([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]),rr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nr=new Uint32Array(64);let ry=class extends ey{constructor(t=32){super(64,t,8,!1),this.A=rr[0]|0,this.B=rr[1]|0,this.C=rr[2]|0,this.D=rr[3]|0,this.E=rr[4]|0,this.F=rr[5]|0,this.G=rr[6]|0,this.H=rr[7]|0}get(){const{A:t,B:r,C:n,D:i,E:s,F:o,G:a,H:c}=this;return[t,r,n,i,s,o,a,c]}set(t,r,n,i,s,o,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=s|0,this.F=o|0,this.G=a|0,this.H=c|0}process(t,r){for(let h=0;h<16;h++,r+=4)nr[h]=t.getUint32(r,!1);for(let h=16;h<64;h++){const y=nr[h-15],p=nr[h-2],g=_t(y,7)^_t(y,18)^y>>>3,_=_t(p,17)^_t(p,19)^p>>>10;nr[h]=_+nr[h-7]+g+nr[h-16]|0}let{A:n,B:i,C:s,D:o,E:a,F:c,G:f,H:l}=this;for(let h=0;h<64;h++){const y=_t(a,6)^_t(a,11)^_t(a,25),p=l+y+Qp(a,c,f)+ty[h]+nr[h]|0,_=(_t(n,2)^_t(n,13)^_t(n,22))+Zp(n,i,s)|0;l=f,f=c,c=a,a=o+p|0,o=s,s=i,i=n,n=p+_|0}n=n+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,l=l+this.H|0,this.set(n,i,s,o,a,c,f,l)}roundClean(){nr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};const rd=Cf(()=>new ry);function Vn(e,t){const r=t||"hex",n=rd(qt(e,{strict:!1})?Ci(e):e);return r==="bytes"?n:J(n)}function ny(e){const{commitment:t,version:r=1}=e,n=e.to??(typeof t=="string"?"hex":"bytes"),i=Vn(t,"bytes");return i.set([r],0),n==="bytes"?i:Ze(i)}function nd(e){const{commitments:t,version:r}=e,n=e.to??(typeof t[0]=="string"?"hex":"bytes"),i=[];for(const s of t)i.push(ny({commitment:s,to:n,version:r}));return i}const Yc=6,id=32,Qa=4096,sd=id*Qa,Xc=sd*Yc-1-1*Qa*Yc,od=1;class iy extends F{constructor({maxSize:t,size:r}){super("Blob size is too large.",{metaMessages:[`Max: ${t} bytes`,`Given: ${r} bytes`],name:"BlobSizeTooLargeError"})}}class ad extends F{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class sy extends F{constructor({hash:t,size:r}){super(`Versioned hash "${t}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${r}`],name:"InvalidVersionedHashSizeError"})}}class oy extends F{constructor({hash:t,version:r}){super(`Versioned hash "${t}" version is invalid.`,{metaMessages:[`Expected: ${od}`,`Received: ${r}`],name:"InvalidVersionedHashVersionError"})}}function ay(e){const t=e.to??(typeof e.data=="string"?"hex":"bytes"),r=typeof e.data=="string"?Wt(e.data):e.data,n=Ie(r);if(!n)throw new ad;if(n>Xc)throw new iy({maxSize:Xc,size:n});const i=[];let s=!0,o=0;for(;s;){const a=ja(new Uint8Array(sd));let c=0;for(;c<Qa;){const f=r.slice(o,o+(id-1));if(a.pushByte(0),a.pushBytes(f),f.length<31){a.pushByte(128),s=!1;break}c++,o+=31}i.push(a)}return t==="bytes"?i.map(a=>a.bytes):i.map(a=>Ze(a.bytes))}function cd(e){const{data:t,kzg:r,to:n}=e,i=e.blobs??ay({data:t,to:n}),s=e.commitments??Xa({blobs:i,kzg:r,to:n}),o=e.proofs??Ja({blobs:i,commitments:s,kzg:r,to:n}),a=[];for(let c=0;c<i.length;c++)a.push({blob:i[c],commitment:s[c],proof:o[c]});return a}function ud(e){if(e.type)return e.type;if(typeof e.authorizationList<"u")return"eip7702";if(typeof e.blobs<"u"||typeof e.blobVersionedHashes<"u"||typeof e.maxFeePerBlobGas<"u"||typeof e.sidecars<"u")return"eip4844";if(typeof e.maxFeePerGas<"u"||typeof e.maxPriorityFeePerGas<"u")return"eip1559";if(typeof e.gasPrice<"u")return typeof e.accessList<"u"?"eip2930":"legacy";throw new vp({transaction:e})}async function Fi(e){const t=await e.request({method:"eth_chainId"},{dedupe:!0});return Vt(t)}const fd=["blobVersionedHashes","chainId","fees","gas","nonce","type"],Jc=new Map;async function Za(e,t){const{account:r=e.account,blobs:n,chain:i,gas:s,kzg:o,nonce:a,nonceManager:c,parameters:f=fd,type:l}=t,h=r&&Le(r),y={...t,...h?{from:h==null?void 0:h.address}:{}};let p;async function g(){return p||(p=await oe(e,Es,"getBlock")({blockTag:"latest"}),p)}let _;async function x(){return _||(i?i.id:typeof t.chainId<"u"?t.chainId:(_=await oe(e,Fi,"getChainId")({}),_))}if(f.includes("nonce")&&typeof a>"u"&&h)if(c){const k=await x();y.nonce=await c.consume({address:h.address,chainId:k,client:e})}else y.nonce=await oe(e,td,"getTransactionCount")({address:h.address,blockTag:"pending"});if((f.includes("blobVersionedHashes")||f.includes("sidecars"))&&n&&o){const k=Xa({blobs:n,kzg:o});if(f.includes("blobVersionedHashes")){const T=nd({commitments:k,to:"hex"});y.blobVersionedHashes=T}if(f.includes("sidecars")){const T=Ja({blobs:n,commitments:k,kzg:o}),A=cd({blobs:n,commitments:k,proofs:T,to:"hex"});y.sidecars=A}}if(f.includes("chainId")&&(y.chainId=await x()),(f.includes("fees")||f.includes("type"))&&typeof l>"u")try{y.type=ud(y)}catch{let k=Jc.get(e.uid);if(typeof k>"u"){const T=await g();k=typeof(T==null?void 0:T.baseFeePerGas)=="bigint",Jc.set(e.uid,k)}y.type=k?"eip1559":"legacy"}if(f.includes("fees"))if(y.type!=="legacy"&&y.type!=="eip2930"){if(typeof y.maxFeePerGas>"u"||typeof y.maxPriorityFeePerGas>"u"){const k=await g(),{maxFeePerGas:T,maxPriorityFeePerGas:A}=await Kc(e,{block:k,chain:i,request:y});if(typeof t.maxPriorityFeePerGas>"u"&&t.maxFeePerGas&&t.maxFeePerGas<A)throw new qp({maxPriorityFeePerGas:A});y.maxPriorityFeePerGas=A,y.maxFeePerGas=T}}else{if(typeof t.maxFeePerGas<"u"||typeof t.maxPriorityFeePerGas<"u")throw new Ka;if(typeof t.gasPrice>"u"){const k=await g(),{gasPrice:T}=await Kc(e,{block:k,chain:i,request:y,type:"legacy"});y.gasPrice=T}}return f.includes("gas")&&typeof s>"u"&&(y.gas=await oe(e,dd,"estimateGas")({...y,account:h&&{address:h.address,type:"json-rpc"}})),Li(y),delete y.parameters,y}async function cy(e,{address:t,blockNumber:r,blockTag:n="latest"}){const i=r?Q(r):void 0,s=await e.request({method:"eth_getBalance",params:[t,i||n]});return BigInt(s)}async function dd(e,t){var i,s,o;const{account:r=e.account}=t,n=r?Le(r):void 0;try{let V=function(ne){const{block:he,request:_e,rpcStateOverride:Te}=ne;return e.request({method:"eth_estimateGas",params:Te?[_e,he??"latest",Te]:he?[_e,he]:[_e]})};const{accessList:a,authorizationList:c,blobs:f,blobVersionedHashes:l,blockNumber:h,blockTag:y,data:p,gas:g,gasPrice:_,maxFeePerBlobGas:x,maxFeePerGas:k,maxPriorityFeePerGas:T,nonce:A,value:E,stateOverride:I,...S}=await Za(e,{...t,parameters:(n==null?void 0:n.type)==="local"?void 0:["blobVersionedHashes"]}),$=(h?Q(h):void 0)||y,B=Jf(I),W=await(async()=>{if(S.to)return S.to;if(c&&c.length>0)return await Xf({authorization:c[0]}).catch(()=>{throw new F("`to` is required. Could not infer from `authorizationList`")})})();Li(t);const R=(o=(s=(i=e.chain)==null?void 0:i.formatters)==null?void 0:s.transactionRequest)==null?void 0:o.format,j=(R||Hs)({...Va(S,{format:R}),from:n==null?void 0:n.address,accessList:a,authorizationList:c,blobs:f,blobVersionedHashes:l,data:p,gas:g,gasPrice:_,maxFeePerBlobGas:x,maxFeePerGas:k,maxPriorityFeePerGas:T,nonce:A,to:W,value:E});let X=BigInt(await V({block:$,request:j,rpcStateOverride:B}));if(c){const ne=await cy(e,{address:j.from}),he=await Promise.all(c.map(async _e=>{const{address:Te}=_e,We=await V({block:$,request:{authorizationList:void 0,data:p,from:n==null?void 0:n.address,to:Te,value:Q(ne)},rpcStateOverride:B}).catch(()=>100000n);return 2n*BigInt(We)}));X+=he.reduce((_e,Te)=>_e+Te,0n)}return X}catch(a){throw Hp(a,{...t,account:n,chain:e.chain})}}async function uy(e,t){const{abi:r,address:n,args:i,functionName:s,dataSuffix:o,...a}=t,c=Pn({abi:r,args:i,functionName:s});try{return await oe(e,dd,"estimateGas")({data:`${c}${o?o.replace("0x",""):""}`,to:n,...a})}catch(f){const l=a.account?Le(a.account):void 0;throw Ms(f,{abi:r,address:n,args:i,docsPath:"/docs/contract/estimateContractGas",functionName:s,sender:l==null?void 0:l.address})}}function ec(e,t){if(!Ue(e,{strict:!1}))throw new et({address:e});if(!Ue(t,{strict:!1}))throw new et({address:t});return e.toLowerCase()===t.toLowerCase()}const Qc="/docs/contract/decodeEventLog";function ld(e){const{abi:t,data:r,strict:n,topics:i}=e,s=n??!0,[o,...a]=i;if(!o)throw new Xh({docsPath:Qc});const c=t.length===1?t[0]:t.find(_=>_.type==="event"&&o===Rs(It(_)));if(!(c&&"name"in c)||c.type!=="event")throw new Ef(o,{docsPath:Qc});const{name:f,inputs:l}=c,h=l==null?void 0:l.some(_=>!("name"in _&&_.name));let y=h?[]:{};const p=l.filter(_=>"indexed"in _&&_.indexed);for(let _=0;_<p.length;_++){const x=p[_],k=a[_];if(!k)throw new Ua({abiItem:c,param:x});y[h?_:x.name||_]=fy({param:x,value:k})}const g=l.filter(_=>!("indexed"in _&&_.indexed));if(g.length>0){if(r&&r!=="0x")try{const _=Ni(g,r);if(_)if(h)y=[...y,..._];else for(let x=0;x<g.length;x++)y[g[x].name]=_[x]}catch(_){if(s)throw _ instanceof _f||_ instanceof Gf?new _s({abiItem:c,data:r,params:g,size:Ie(r)}):_}else if(s)throw new _s({abiItem:c,data:"0x",params:g,size:0})}return{eventName:f,args:Object.values(y).length>0?y:void 0}}function fy({param:e,value:t}){return e.type==="string"||e.type==="bytes"||e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(Ni([e],t)||[])[0]}function hd(e){const{abi:t,args:r,logs:n,strict:i=!0}=e,s=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})();return n.map(o=>{var a;try{const c=t.find(l=>l.type==="event"&&o.topics[0]===Rs(l));if(!c)return null;const f=ld({...o,abi:[c],strict:i});return s&&!s.includes(f.eventName)||!dy({args:f.args,inputs:c.inputs,matchArgs:r})?null:{...f,...o}}catch(c){let f,l;if(c instanceof Ef)return null;if(c instanceof _s||c instanceof Ua){if(i)return null;f=c.abiItem.name,l=(a=c.abiItem.inputs)==null?void 0:a.some(h=>!("name"in h&&h.name))}return{...o,args:l?[]:{},eventName:f}}}).filter(Boolean)}function dy(e){const{args:t,inputs:r,matchArgs:n}=e;if(!n)return!0;if(!t)return!1;function i(s,o,a){try{return s.type==="address"?ec(o,a):s.type==="string"||s.type==="bytes"?An(Ci(o))===a:o===a}catch{return!1}}return Array.isArray(t)&&Array.isArray(n)?n.every((s,o)=>{if(s==null)return!0;const a=r[o];return a?(Array.isArray(s)?s:[s]).some(f=>i(a,f,t[o])):!1}):typeof t=="object"&&!Array.isArray(t)&&typeof n=="object"&&!Array.isArray(n)?Object.entries(n).every(([s,o])=>{if(o==null)return!0;const a=r.find(f=>f.name===s);return a?(Array.isArray(o)?o:[o]).some(f=>i(a,f,t[s])):!1}):!1}function Ai(e,{args:t,eventName:r}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...r?{args:t,eventName:r}:{}}}async function ly(e,{address:t,blockHash:r,fromBlock:n,toBlock:i,event:s,events:o,args:a,strict:c}={}){const f=c??!1,l=o??(s?[s]:void 0);let h=[];l&&(h=[l.flatMap(_=>Da({abi:[_],eventName:_.name,args:o?void 0:a}))],s&&(h=h[0]));let y;r?y=await e.request({method:"eth_getLogs",params:[{address:t,topics:h,blockHash:r}]}):y=await e.request({method:"eth_getLogs",params:[{address:t,topics:h,fromBlock:typeof n=="bigint"?Q(n):n,toBlock:typeof i=="bigint"?Q(i):i}]});const p=y.map(g=>Ai(g));return l?hd({abi:l,args:a,logs:p,strict:f}):p}async function pd(e,t){const{abi:r,address:n,args:i,blockHash:s,eventName:o,fromBlock:a,toBlock:c,strict:f}=t,l=o?Sn({abi:r,name:o}):void 0,h=l?void 0:r.filter(y=>y.type==="event");return oe(e,ly,"getLogs")({address:n,args:i,blockHash:s,event:l,events:h,fromBlock:a,toBlock:c,strict:f})}const wo="/docs/contract/decodeFunctionResult";function tc(e){const{abi:t,args:r,functionName:n,data:i}=e;let s=t[0];if(n){const a=Sn({abi:t,args:r,name:n});if(!a)throw new ei(n,{docsPath:wo});s=a}if(s.type!=="function")throw new ei(void 0,{docsPath:wo});if(!s.outputs)throw new xf(s.name,{docsPath:wo});const o=Ni(s.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}const Zc=[{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"}],hy=[{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"}]}],py="0x82ad56cb",yy="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",my="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe";class pa extends F{constructor({blockNumber:t,chain:r,contract:n}){super(`Chain "${r.name}" does not support contract "${n.name}".`,{metaMessages:["This could be due to any of the following:",...t&&n.blockCreated&&n.blockCreated>t?[`- The contract "${n.name}" was not deployed until block ${n.blockCreated} (current block ${t}).`]:[`- The chain does not have the contract "${n.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class by extends F{constructor({chain:t,currentChainId:r}){super(`The current chain of the wallet (id: ${r}) does not match the target chain for the transaction (id: ${t.id} – ${t.name}).`,{metaMessages:[`Current Chain ID: ${r}`,`Expected Chain ID: ${t.id} – ${t.name}`],name:"ChainMismatchError"})}}class gy 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(`
|
|
40
|
+
`),{name:"ChainNotFoundError"})}}class yd extends F{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}class js extends F{constructor({chainId:t}){super(typeof t=="number"?`Chain ID "${t}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}const _o="/docs/contract/encodeDeployData";function rc(e){const{abi:t,args:r,bytecode:n}=e;if(!r||r.length===0)return n;const i=t.find(o=>"type"in o&&o.type==="constructor");if(!i)throw new zh({docsPath:_o});if(!("inputs"in i))throw new Bc({docsPath:_o});if(!i.inputs||i.inputs.length===0)throw new Bc({docsPath:_o});const s=Us(i.inputs,r);return Ct([n,s])}function wy({blockNumber:e,chain:t,contract:r}){var i;const n=(i=t==null?void 0:t.contracts)==null?void 0:i[r];if(!n)throw new pa({chain:t,contract:{name:r}});if(e&&n.blockCreated&&n.blockCreated>e)throw new pa({blockNumber:e,chain:t,contract:{name:r,blockCreated:n.blockCreated}});return n.address}function _y(e,{docsPath:t,...r}){const n=(()=>{const i=qa(e,r);return i instanceof $s?e:i})();return new Sp(n,{docsPath:t,...r})}function md(){let e=()=>{},t=()=>{};return{promise:new Promise((n,i)=>{e=n,t=i}),resolve:e,reject:t}}const vo=new Map;function bd({fn:e,id:t,shouldSplitBatch:r,wait:n=0,sort:i}){const s=async()=>{const l=c();o();const h=l.map(({args:y})=>y);h.length!==0&&e(h).then(y=>{i&&Array.isArray(y)&&y.sort(i);for(let p=0;p<l.length;p++){const{resolve:g}=l[p];g==null||g([y[p],y])}}).catch(y=>{for(let p=0;p<l.length;p++){const{reject:g}=l[p];g==null||g(y)}})},o=()=>vo.delete(t),a=()=>c().map(({args:l})=>l),c=()=>vo.get(t)||[],f=l=>vo.set(t,[...c(),l]);return{flush:o,async schedule(l){const{promise:h,resolve:y,reject:p}=md();return(r==null?void 0:r([...a(),l]))&&s(),c().length>0?(f({args:l,resolve:y,reject:p}),h):(f({args:l,resolve:y,reject:p}),setTimeout(s,n),h)}}}async function nc(e,t){var R,D,j,V;const{account:r=e.account,batch:n=!!((R=e.batch)!=null&&R.multicall),blockNumber:i,blockTag:s="latest",accessList:o,blobs:a,code:c,data:f,factory:l,factoryData:h,gas:y,gasPrice:p,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:x,nonce:k,to:T,value:A,stateOverride:E,...I}=t,S=r?Le(r):void 0;if(c&&(l||h))throw new F("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(c&&T)throw new F("Cannot provide both `code` & `to` as parameters.");const L=c&&f,$=l&&h&&T&&f,B=L||$,W=L?xy({code:c,data:f}):$?Ay({data:f,factory:l,factoryData:h,to:T}):f;try{Li(t);const ne=(i?Q(i):void 0)||s,he=Jf(E),_e=(V=(j=(D=e.chain)==null?void 0:D.formatters)==null?void 0:j.transactionRequest)==null?void 0:V.format,We=(_e||Hs)({...Va(I,{format:_e}),from:S==null?void 0:S.address,accessList:o,blobs:a,data:W,gas:y,gasPrice:p,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:x,nonce:k,to:B?void 0:T,value:A});if(n&&vy({request:We})&&!he)try{return await Ey(e,{...We,blockNumber:i,blockTag:s})}catch(ye){if(!(ye instanceof yd)&&!(ye instanceof pa))throw ye}const fe=await e.request({method:"eth_call",params:he?[We,ne,he]:[We,ne]});return fe==="0x"?{data:void 0}:{data:fe}}catch(X){const ne=Sy(X),{offchainLookup:he,offchainLookupSignature:_e}=await Promise.resolve().then(()=>require("./ccip-CKqT4Tlw.cjs"));if(e.ccipRead!==!1&&(ne==null?void 0:ne.slice(0,10))===_e&&T)return{data:await he(e,{data:ne,to:T})};throw B&&(ne==null?void 0:ne.slice(0,10))==="0x101bb98d"?new Ip({factory:l}):_y(X,{...t,account:S,chain:e.chain})}}function vy({request:e}){const{data:t,to:r,...n}=e;return!(!t||t.startsWith(py)||!r||Object.values(n).filter(i=>typeof i<"u").length>0)}async function Ey(e,t){var _;const{batchSize:r=1024,wait:n=0}=typeof((_=e.batch)==null?void 0:_.multicall)=="object"?e.batch.multicall:{},{blockNumber:i,blockTag:s="latest",data:o,multicallAddress:a,to:c}=t;let f=a;if(!f){if(!e.chain)throw new yd;f=wy({blockNumber:i,chain:e.chain,contract:"multicall3"})}const h=(i?Q(i):void 0)||s,{schedule:y}=bd({id:`${e.uid}.${h}`,wait:n,shouldSplitBatch(x){return x.reduce((T,{data:A})=>T+(A.length-2),0)>r*2},fn:async x=>{const k=x.map(E=>({allowFailure:!0,callData:E.data,target:E.to})),T=Pn({abi:Zc,args:[k],functionName:"aggregate3"}),A=await e.request({method:"eth_call",params:[{data:T,to:f},h]});return tc({abi:Zc,args:[k],functionName:"aggregate3",data:A||"0x"})}}),[{returnData:p,success:g}]=await y({data:o,to:c});if(!g)throw new Wf({data:p});return p==="0x"?{data:void 0}:{data:p}}function xy(e){const{code:t,data:r}=e;return rc({abi:bf(["constructor(bytes, bytes)"]),bytecode:yy,args:[t,r]})}function Ay(e){const{data:t,factory:r,factoryData:n,to:i}=e;return rc({abi:bf(["constructor(address, bytes, address, bytes)"]),bytecode:my,args:[i,t,r,n]})}function Sy(e){var r;if(!(e instanceof F))return;const t=e.walk();return typeof(t==null?void 0:t.data)=="object"?(r=t.data)==null?void 0:r.data:t.data}async function Py(e,t){const{abi:r,address:n,args:i,functionName:s,...o}=t,a=Pn({abi:r,args:i,functionName:s});try{const{data:c}=await oe(e,nc,"call")({...o,data:a,to:n});return tc({abi:r,args:i,functionName:s,data:c||"0x"})}catch(c){throw Ms(c,{abi:r,address:n,args:i,docsPath:"/docs/contract/readContract",functionName:s})}}async function Ty(e,t){const{abi:r,address:n,args:i,dataSuffix:s,functionName:o,...a}=t,c=a.account?Le(a.account):e.account,f=Pn({abi:r,args:i,functionName:o});try{const{data:l}=await oe(e,nc,"call")({batch:!1,data:`${f}${s?s.replace("0x",""):""}`,to:n,...a,account:c}),h=tc({abi:r,args:i,functionName:o,data:l||"0x"}),y=r.filter(p=>"name"in p&&p.name===t.functionName);return{result:h,request:{abi:y,address:n,args:i,dataSuffix:s,functionName:o,...a,account:c}}}catch(l){throw Ms(l,{abi:r,address:n,args:i,docsPath:"/docs/contract/simulateContract",functionName:o,sender:c==null?void 0:c.address})}}const Eo=new Map,eu=new Map;let ky=0;function ya(e,t,r){const n=++ky,i=()=>Eo.get(e)||[],s=()=>{const l=i();Eo.set(e,l.filter(h=>h.id!==n))},o=()=>{const l=i();if(!l.some(y=>y.id===n))return;const h=eu.get(e);l.length===1&&h&&h(),s()},a=i();if(Eo.set(e,[...a,{id:n,fns:t}]),a&&a.length>0)return o;const c={};for(const l in t)c[l]=(...h)=>{var p,g;const y=i();if(y.length!==0)for(const _ of y)(g=(p=_.fns)[l])==null||g.call(p,...h)};const f=r(c);return typeof f=="function"&&eu.set(e,f),o}async function ma(e){return new Promise(t=>setTimeout(t,e))}function gd(e,{emitOnBegin:t,initialWaitTime:r,interval:n}){let i=!0;const s=()=>i=!1;return(async()=>{let a;a=await e({unpoll:s});const c=await(r==null?void 0:r(a))??n;await ma(c);const f=async()=>{i&&(await e({unpoll:s}),await ma(n),f())};f()})(),s}const Iy=new Map,By=new Map;function Cy(e){const t=(i,s)=>({clear:()=>s.delete(i),get:()=>s.get(i),set:o=>s.set(i,o)}),r=t(e,Iy),n=t(e,By);return{clear:()=>{r.clear(),n.clear()},promise:r,response:n}}async function Oy(e,{cacheKey:t,cacheTime:r=Number.POSITIVE_INFINITY}){const n=Cy(t),i=n.response.get();if(i&&r>0&&new Date().getTime()-i.created.getTime()<r)return i.data;let s=n.promise.get();s||(s=e(),n.promise.set(s));try{const o=await s;return n.response.set({created:new Date,data:o}),o}finally{n.promise.clear()}}const Ry=e=>`blockNumber.${e}`;async function Ny(e,{cacheTime:t=e.cacheTime}={}){const r=await Oy(()=>e.request({method:"eth_blockNumber"}),{cacheKey:Ry(e.uid),cacheTime:t});return BigInt(r)}async function Uy(e,{filter:t}){const r="strict"in t&&t.strict,n=await t.request({method:"eth_getFilterChanges",params:[t.id]});if(typeof n[0]=="string")return n;const i=n.map(s=>Ai(s));return!("abi"in t)||!t.abi?i:hd({abi:t.abi,logs:i,strict:r})}async function Ly(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function Fy(e,t){const{abi:r,address:n,args:i,batch:s=!0,eventName:o,fromBlock:a,onError:c,onLogs:f,poll:l,pollingInterval:h=e.pollingInterval,strict:y}=t;return(typeof l<"u"?l:typeof a=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"))?(()=>{const x=y??!1,k=rt(["watchContractEvent",n,i,s,e.uid,o,h,x,a]);return ya(k,{onLogs:f,onError:c},T=>{let A;a!==void 0&&(A=a-1n);let E,I=!1;const S=gd(async()=>{var L;if(!I){try{E=await oe(e,Df,"createContractEventFilter")({abi:r,address:n,args:i,eventName:o,strict:x,fromBlock:a})}catch{}I=!0;return}try{let $;if(E)$=await oe(e,Uy,"getFilterChanges")({filter:E});else{const B=await oe(e,Ny,"getBlockNumber")({});A&&A<B?$=await oe(e,pd,"getContractEvents")({abi:r,address:n,args:i,eventName:o,fromBlock:A+1n,toBlock:B,strict:x}):$=[],A=B}if($.length===0)return;if(s)T.onLogs($);else for(const B of $)T.onLogs([B])}catch($){E&&$ instanceof pn&&(I=!1),(L=T.onError)==null||L.call(T,$)}},{emitOnBegin:!0,interval:h});return async()=>{E&&await oe(e,Ly,"uninstallFilter")({filter:E}),S()}})})():(()=>{const x=y??!1,k=rt(["watchContractEvent",n,i,s,e.uid,o,h,x]);let T=!0,A=()=>T=!1;return ya(k,{onLogs:f,onError:c},E=>((async()=>{try{const I=(()=>{if(e.transport.type==="fallback"){const $=e.transport.transports.find(B=>B.config.type==="webSocket");return $?$.value:e.transport}return e.transport})(),S=o?Da({abi:r,eventName:o,args:i}):[],{unsubscribe:L}=await I.subscribe({params:["logs",{address:n,topics:S}],onData($){var W;if(!T)return;const B=$.result;try{const{eventName:R,args:D}=ld({abi:r,data:B.data,topics:B.topics,strict:y}),j=Ai(B,{args:D,eventName:R});E.onLogs([j])}catch(R){let D,j;if(R instanceof _s||R instanceof Ua){if(y)return;D=R.abiItem.name,j=(W=R.abiItem.inputs)==null?void 0:W.some(X=>!("name"in X&&X.name))}const V=Ai(B,{args:j?[]:{},eventName:D});E.onLogs([V])}},onError($){var B;(B=E.onError)==null||B.call(E,$)}});A=L,T||A()}catch(I){c==null||c(I)}})(),()=>A()))})()}class wr extends F{constructor({docsPath:t}={}){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(`
|
|
41
|
+
`),{docsPath:t,docsSlug:"account",name:"AccountNotFoundError"})}}class ds extends F{constructor({docsPath:t,metaMessages:r,type:n}){super(`Account type "${n}" is not supported.`,{docsPath:t,metaMessages:r,name:"AccountTypeNotSupportedError"})}}function wd({chain:e,currentChainId:t}){if(!e)throw new gy;if(t!==e.id)throw new by({chain:e,currentChainId:t})}function _d(e,{docsPath:t,...r}){const n=(()=>{const i=qa(e,r);return i instanceof $s?e:i})();return new xp(n,{docsPath:t,...r})}async function vd(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}const xo=new Ns(128);async function ic(e,t){var k,T,A,E;const{account:r=e.account,chain:n=e.chain,accessList:i,authorizationList:s,blobs:o,data:a,gas:c,gasPrice:f,maxFeePerBlobGas:l,maxFeePerGas:h,maxPriorityFeePerGas:y,nonce:p,value:g,..._}=t;if(typeof r>"u")throw new wr({docsPath:"/docs/actions/wallet/sendTransaction"});const x=r?Le(r):null;try{Li(t);const I=await(async()=>{if(t.to)return t.to;if(t.to!==null&&s&&s.length>0)return await Xf({authorization:s[0]}).catch(()=>{throw new F("`to` is required. Could not infer from `authorizationList`.")})})();if((x==null?void 0:x.type)==="json-rpc"||x===null){let S;n!==null&&(S=await oe(e,Fi,"getChainId")({}),wd({currentChainId:S,chain:n}));const L=(A=(T=(k=e.chain)==null?void 0:k.formatters)==null?void 0:T.transactionRequest)==null?void 0:A.format,B=(L||Hs)({...Va(_,{format:L}),accessList:i,authorizationList:s,blobs:o,chainId:S,data:a,from:x==null?void 0:x.address,gas:c,gasPrice:f,maxFeePerBlobGas:l,maxFeePerGas:h,maxPriorityFeePerGas:y,nonce:p,to:I,value:g}),W=xo.get(e.uid),R=W?"wallet_sendTransaction":"eth_sendTransaction";try{return await e.request({method:R,params:[B]},{retryCount:0})}catch(D){if(W===!1)throw D;const j=D;if(j.name==="InvalidInputRpcError"||j.name==="InvalidParamsRpcError"||j.name==="MethodNotFoundRpcError"||j.name==="MethodNotSupportedRpcError")return await e.request({method:"wallet_sendTransaction",params:[B]},{retryCount:0}).then(V=>(xo.set(e.uid,!0),V)).catch(V=>{const X=V;throw X.name==="MethodNotFoundRpcError"||X.name==="MethodNotSupportedRpcError"?(xo.set(e.uid,!1),j):X});throw j}}if((x==null?void 0:x.type)==="local"){const S=await oe(e,Za,"prepareTransactionRequest")({account:x,accessList:i,authorizationList:s,blobs:o,chain:n,data:a,gas:c,gasPrice:f,maxFeePerBlobGas:l,maxFeePerGas:h,maxPriorityFeePerGas:y,nonce:p,nonceManager:x.nonceManager,parameters:[...fd,"sidecars"],value:g,..._,to:I}),L=(E=n==null?void 0:n.serializers)==null?void 0:E.transaction,$=await x.signTransaction(S,{serializer:L});return await oe(e,vd,"sendRawTransaction")({serializedTransaction:$})}throw(x==null?void 0:x.type)==="smart"?new ds({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new ds({docsPath:"/docs/actions/wallet/sendTransaction",type:x==null?void 0:x.type})}catch(I){throw I instanceof ds?I:_d(I,{...t,account:x,chain:t.chain||void 0})}}async function Ed(e,t){const{abi:r,account:n=e.account,address:i,args:s,dataSuffix:o,functionName:a,...c}=t;if(typeof n>"u")throw new wr({docsPath:"/docs/contract/writeContract"});const f=n?Le(n):null,l=Pn({abi:r,args:s,functionName:a});try{return await oe(e,ic,"sendTransaction")({data:`${l}${o?o.replace("0x",""):""}`,to:i,account:f,...c})}catch(h){throw Ms(h,{abi:r,address:i,args:s,docsPath:"/docs/contract/writeContract",functionName:a,sender:f==null?void 0:f.address})}}function Ao({abi:e,address:t,client:r}){const n=r,[i,s]=n?"public"in n&&"wallet"in n?[n.public,n.wallet]:"public"in n?[n.public,void 0]:"wallet"in n?[void 0,n.wallet]:[n,n]:[void 0,void 0],o=i!=null,a=s!=null,c={};let f=!1,l=!1,h=!1;for(const y of e)if(y.type==="function"?y.stateMutability==="view"||y.stateMutability==="pure"?f=!0:l=!0:y.type==="event"&&(h=!0),f&&l&&h)break;return o&&(f&&(c.read=new Proxy({},{get(y,p){return(...g)=>{const{args:_,options:x}=Xi(g);return oe(i,Py,"readContract")({abi:e,address:t,functionName:p,args:_,...x})}}})),l&&(c.simulate=new Proxy({},{get(y,p){return(...g)=>{const{args:_,options:x}=Xi(g);return oe(i,Ty,"simulateContract")({abi:e,address:t,functionName:p,args:_,...x})}}})),h&&(c.createEventFilter=new Proxy({},{get(y,p){return(...g)=>{const _=e.find(T=>T.type==="event"&&T.name===p),{args:x,options:k}=So(g,_);return oe(i,Df,"createContractEventFilter")({abi:e,address:t,eventName:p,args:x,...k})}}}),c.getEvents=new Proxy({},{get(y,p){return(...g)=>{const _=e.find(T=>T.type==="event"&&T.name===p),{args:x,options:k}=So(g,_);return oe(i,pd,"getContractEvents")({abi:e,address:t,eventName:p,args:x,...k})}}}),c.watchEvent=new Proxy({},{get(y,p){return(...g)=>{const _=e.find(T=>T.type==="event"&&T.name===p),{args:x,options:k}=So(g,_);return oe(i,Fy,"watchContractEvent")({abi:e,address:t,eventName:p,args:x,...k})}}}))),a&&l&&(c.write=new Proxy({},{get(y,p){return(...g)=>{const{args:_,options:x}=Xi(g);return oe(s,Ed,"writeContract")({abi:e,address:t,functionName:p,args:_,...x})}}})),(o||a)&&l&&(c.estimateGas=new Proxy({},{get(y,p){return(...g)=>{const{args:_,options:x}=Xi(g);return oe(i??s,uy,"estimateContractGas")({abi:e,address:t,functionName:p,args:_,...x,account:x.account??s.account})}}})),c.address=t,c.abi=e,c}function Xi(e){const t=e.length&&Array.isArray(e[0]),r=t?e[0]:[],n=(t?e[1]:e[0])??{};return{args:r,options:n}}function So(e,t){let r=!1;Array.isArray(e[0])?r=!0:e.length===1?r=t.inputs.some(s=>s.indexed):e.length===2&&(r=!0);const n=r?e[0]:void 0,i=(r?e[1]:e[0])??{};return{args:n,options:i}}const xd={"0x0":"reverted","0x1":"success"};function My(e){const t={...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(r=>Ai(r)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Vt(e.transactionIndex):null,status:e.status?xd[e.status]:null,type:e.type?Qf[e.type]||e.type:null};return e.blobGasPrice&&(t.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(t.blobGasUsed=BigInt(e.blobGasUsed)),t}const $y=Wa("transactionReceipt",My);async function Ad(e,t){const{atomic:r=!1,chainId:n,receipts:i,version:s="2.0.0",...o}=await e.request({method:"wallet_getCallsStatus",params:[t.id]}),[a,c]=(()=>{const f=o.status;return f>=100&&f<200?["pending",f]:f>=200&&f<300?["success",f]:f>=300&&f<700?["failure",f]:f==="CONFIRMED"?["success",200]:f==="PENDING"?["pending",100]:[void 0,f]})();return{...o,atomic:r,chainId:n?Vt(n):void 0,receipts:(i==null?void 0:i.map(f=>({...f,blockNumber:pt(f.blockNumber),gasUsed:pt(f.gasUsed),status:xd[f.status]})))??[],statusCode:c,status:a,version:s}}async function Hy(e,t){const{id:r,pollingInterval:n=e.pollingInterval,status:i=({statusCode:y})=>y>=200,timeout:s=6e4}=t,o=rt(["waitForCallsStatus",e.uid,r]),{promise:a,resolve:c,reject:f}=md();let l;const h=ya(o,{resolve:c,reject:f},y=>{const p=gd(async()=>{const g=_=>{clearTimeout(l),p(),_(),h()};try{const _=await Ad(e,{id:r});if(!i(_))return;g(()=>y.resolve(_))}catch(_){g(()=>y.reject(_))}},{interval:n,emitOnBegin:!0});return p});return l=s?setTimeout(()=>{h(),clearTimeout(l),f(new Dy({id:r}))},s):void 0,await a}class Dy extends F{constructor({id:t}){super(`Timed out while waiting for call bundle with id "${t}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const ba=256;let Ji=ba,Qi;function Sd(e=11){if(!Qi||Ji+e>ba*2){Qi="",Ji=0;for(let t=0;t<ba;t++)Qi+=(256+Math.random()*256|0).toString(16).substring(1)}return Qi.substring(Ji,Ji+++e)}function jy(e){const{batch:t,cacheTime:r=e.pollingInterval??4e3,ccipRead:n,key:i="base",name:s="Base Client",pollingInterval:o=4e3,type:a="base"}=e,c=e.chain,f=e.account?Le(e.account):void 0,{config:l,request:h,value:y}=e.transport({chain:c,pollingInterval:o}),p={...l,...y},g={account:f,batch:t,cacheTime:r,ccipRead:n,chain:c,key:i,name:s,pollingInterval:o,request:h,transport:p,type:a,uid:Sd()};function _(x){return k=>{const T=k(x);for(const E in g)delete T[E];const A={...x,...T};return Object.assign(A,{extend:_(A)})}}return Object.assign(g,{extend:_(g)})}const Zi=new Ns(8192);function Gy(e,{enabled:t=!0,id:r}){if(!t||!r)return e();if(Zi.get(r))return Zi.get(r);const n=e().finally(()=>Zi.delete(r));return Zi.set(r,n),n}function zy(e,{delay:t=100,retryCount:r=2,shouldRetry:n=()=>!0}={}){return new Promise((i,s)=>{const o=async({count:a=0}={})=>{const c=async({error:f})=>{const l=typeof t=="function"?t({count:a,error:f}):t;l&&await ma(l),o({count:a+1})};try{const f=await e();i(f)}catch(f){if(a<r&&await n({count:a,error:f}))return c({error:f});s(f)}};o()})}function qy(e,t={}){return async(r,n={})=>{var h;const{dedupe:i=!1,methods:s,retryDelay:o=150,retryCount:a=3,uid:c}={...t,...n},{method:f}=r;if((h=s==null?void 0:s.exclude)!=null&&h.includes(f))throw new Ir(new Error("method not supported"),{method:f});if(s!=null&&s.include&&!s.include.includes(f))throw new Ir(new Error("method not supported"),{method:f});const l=i?Cs(`${c}.${rt(r)}`):void 0;return Gy(()=>zy(async()=>{try{return await e(r)}catch(y){const p=y;switch(p.code){case ni.code:throw new ni(p);case ii.code:throw new ii(p);case si.code:throw new si(p,{method:r.method});case oi.code:throw new oi(p);case Lr.code:throw new Lr(p);case pn.code:throw new pn(p);case ai.code:throw new ai(p);case ci.code:throw new ci(p);case ui.code:throw new ui(p);case Ir.code:throw new Ir(p,{method:r.method});case yn.code:throw new yn(p);case fi.code:throw new fi(p);case an.code:throw new an(p);case di.code:throw new di(p);case li.code:throw new li(p);case hi.code:throw new hi(p);case pi.code:throw new pi(p);case yi.code:throw new yi(p);case mi.code:throw new mi(p);case bi.code:throw new bi(p);case gi.code:throw new gi(p);case wi.code:throw new wi(p);case _i.code:throw new _i(p);case vi.code:throw new vi(p);case Ei.code:throw new Ei(p);case 5e3:throw new an(p);default:throw y instanceof F?y:new Cp(p)}}},{delay:({count:y,error:p})=>{var g;if(p&&p instanceof on){const _=(g=p==null?void 0:p.headers)==null?void 0:g.get("Retry-After");if(_!=null&&_.match(/\d/))return Number.parseInt(_)*1e3}return~~(1<<y)*o},retryCount:a,shouldRetry:({error:y})=>Vy(y)}),{enabled:i,id:l})}}function Vy(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===yn.code||e.code===Lr.code:e instanceof on&&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 Pd({key:e,methods:t,name:r,request:n,retryCount:i=3,retryDelay:s=150,timeout:o,type:a},c){const f=Sd();return{config:{key:e,methods:t,name:r,request:n,retryCount:i,retryDelay:s,timeout:o,type:a},request:qy(n,{methods:t,retryCount:i,retryDelay:s,uid:f}),value:c}}function tu(e,t={}){const{key:r="custom",methods:n,name:i="Custom Provider",retryDelay:s}=t;return({retryCount:o})=>Pd({key:r,methods:n,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:s,type:"custom"})}class Wy 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"})}}function Ky(e,{errorInstance:t=new Error("timed out"),timeout:r,signal:n}){return new Promise((i,s)=>{(async()=>{let o;try{const a=new AbortController;r>0&&(o=setTimeout(()=>{n&&a.abort()},r)),i(await e({signal:(a==null?void 0:a.signal)||null}))}catch(a){(a==null?void 0:a.name)==="AbortError"&&s(t),s(a)}finally{clearTimeout(o)}})()})}function Yy(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const ru=Yy();function Xy(e,t={}){return{async request(r){var h;const{body:n,onRequest:i=t.onRequest,onResponse:s=t.onResponse,timeout:o=t.timeout??1e4}=r,a={...t.fetchOptions??{},...r.fetchOptions??{}},{headers:c,method:f,signal:l}=a;try{const y=await Ky(async({signal:g})=>{const _={...a,body:Array.isArray(n)?rt(n.map(A=>({jsonrpc:"2.0",id:A.id??ru.take(),...A}))):rt({jsonrpc:"2.0",id:n.id??ru.take(),...n}),headers:{"Content-Type":"application/json",...c},method:f||"POST",signal:l||(o>0?g:null)},x=new Request(e,_),k=await(i==null?void 0:i(x,_))??{..._,url:e};return await fetch(k.url??e,k)},{errorInstance:new qc({body:n,url:e}),timeout:o,signal:!0});s&&await s(y);let p;if((h=y.headers.get("Content-Type"))!=null&&h.startsWith("application/json"))p=await y.json();else{p=await y.text();try{p=JSON.parse(p||"{}")}catch(g){if(y.ok)throw g;p={error:p}}}if(!y.ok)throw new on({body:n,details:rt(p.error)||y.statusText,headers:y.headers,status:y.status,url:e});return p}catch(y){throw y instanceof on||y instanceof qc?y:new on({body:n,cause:y,url:e})}}}}function Jy(e,t={}){const{batch:r,fetchOptions:n,key:i="http",methods:s,name:o="HTTP JSON-RPC",onFetchRequest:a,onFetchResponse:c,retryDelay:f,raw:l}=t;return({chain:h,retryCount:y,timeout:p})=>{const{batchSize:g=1e3,wait:_=0}=typeof r=="object"?r:{},x=t.retryCount??y,k=p??t.timeout??1e4,T=h==null?void 0:h.rpcUrls.default.http[0];if(!T)throw new Wy;const A=Xy(T,{fetchOptions:n,onRequest:a,onResponse:c,timeout:k});return Pd({key:i,methods:s,name:o,async request({method:E,params:I}){const S={method:E,params:I},{schedule:L}=bd({id:T,wait:_,shouldSplitBatch(R){return R.length>g},fn:R=>A.request({body:R}),sort:(R,D)=>R.id-D.id}),$=async R=>r?L(R):[await A.request({body:R})],[{error:B,result:W}]=await $(S);if(l)return{error:B,result:W};if(B)throw new za({body:S,error:B,url:T});return W},retryCount:x,retryDelay:f,timeout:k,type:"http"},{fetchOptions:n,url:T})}}function Ot(e){return{formatters:void 0,fees:void 0,serializers:void 0,...e}}class Qy extends F{constructor({domain:t}){super(`Invalid domain "${rt(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class Zy extends F{constructor({primaryType:t,types:r}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(r))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class em extends F{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function tm(e){const{domain:t,message:r,primaryType:n,types:i}=e,s=(c,f)=>{const l={...f};for(const h of c){const{name:y,type:p}=h;p==="address"&&(l[y]=l[y].toLowerCase())}return l},o=i.EIP712Domain?t?s(i.EIP712Domain,t):{}:{},a=(()=>{if(n!=="EIP712Domain")return s(i[n],r)})();return rt({domain:o,message:a,primaryType:n,types:i})}function rm(e){const{domain:t,message:r,primaryType:n,types:i}=e,s=(o,a)=>{for(const c of o){const{name:f,type:l}=c,h=a[f],y=l.match($f);if(y&&(typeof h=="number"||typeof h=="bigint")){const[_,x,k]=y;Q(h,{signed:x==="int",size:Number.parseInt(k)/8})}if(l==="address"&&typeof h=="string"&&!Ue(h))throw new et({address:h});const p=l.match(G0);if(p){const[_,x]=p;if(x&&Ie(h)!==Number.parseInt(x))throw new Zh({expectedSize:Number.parseInt(x),givenSize:Ie(h)})}const g=i[l];g&&(im(l),s(g,h))}};if(i.EIP712Domain&&t){if(typeof t!="object")throw new Qy({domain:t});s(i.EIP712Domain,t)}if(n!=="EIP712Domain")if(i[n])s(i[n],r);else throw new Zy({primaryType:n,types:i})}function nm({domain:e}){return[typeof(e==null?void 0:e.name)=="string"&&{name:"name",type:"string"},(e==null?void 0:e.version)&&{name:"version",type:"string"},(typeof(e==null?void 0:e.chainId)=="number"||typeof(e==null?void 0:e.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(e==null?void 0:e.verifyingContract)&&{name:"verifyingContract",type:"address"},(e==null?void 0:e.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function im(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new em({type:e})}function sm(e){const{authorizationList:t}=e;if(t)for(const r of t){const{chainId:n}=r,i=r.address;if(!Ue(i))throw new et({address:i});if(n<0)throw new js({chainId:n})}sc(e)}function om(e){const{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new ad;for(const r of t){const n=Ie(r),i=Vt(hn(r,0,1));if(n!==32)throw new sy({hash:r,size:n});if(i!==od)throw new oy({hash:r,version:i})}}sc(e)}function sc(e){const{chainId:t,maxPriorityFeePerGas:r,maxFeePerGas:n,to:i}=e;if(t<=0)throw new js({chainId:t});if(i&&!Ue(i))throw new et({address:i});if(n&&n>Ds)throw new Fr({maxFeePerGas:n});if(r&&n&&r>n)throw new xi({maxFeePerGas:n,maxPriorityFeePerGas:r})}function am(e){const{chainId:t,maxPriorityFeePerGas:r,gasPrice:n,maxFeePerGas:i,to:s}=e;if(t<=0)throw new js({chainId:t});if(s&&!Ue(s))throw new et({address:s});if(r||i)throw new F("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(n&&n>Ds)throw new Fr({maxFeePerGas:n})}function cm(e){const{chainId:t,maxPriorityFeePerGas:r,gasPrice:n,maxFeePerGas:i,to:s}=e;if(s&&!Ue(s))throw new et({address:s});if(typeof t<"u"&&t<=0)throw new js({chainId:t});if(r||i)throw new F("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(n&&n>Ds)throw new Fr({maxFeePerGas:n})}function Gs(e){if(!e||e.length===0)return[];const t=[];for(let r=0;r<e.length;r++){const{address:n,storageKeys:i}=e[r];for(let s=0;s<i.length;s++)if(i[s].length-2!==64)throw new Ep({storageKey:i[s]});if(!Ue(n,{strict:!1}))throw new et({address:n});t.push([n,i])}return t}function um(e,t){const r=ud(e);return r==="eip1559"?lm(e,t):r==="eip2930"?hm(e,t):r==="eip4844"?dm(e,t):r==="eip7702"?fm(e,t):pm(e,t)}function fm(e,t){const{authorizationList:r,chainId:n,gas:i,nonce:s,to:o,value:a,maxFeePerGas:c,maxPriorityFeePerGas:f,accessList:l,data:h}=e;sm(e);const y=Gs(l),p=ym(r);return Ct(["0x04",mr([J(n),s?J(s):"0x",f?J(f):"0x",c?J(c):"0x",i?J(i):"0x",o??"0x",a?J(a):"0x",h??"0x",y,p,...Mi(e,t)])])}function dm(e,t){const{chainId:r,gas:n,nonce:i,to:s,value:o,maxFeePerBlobGas:a,maxFeePerGas:c,maxPriorityFeePerGas:f,accessList:l,data:h}=e;om(e);let y=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(typeof y>"u"||typeof p>"u")){const A=typeof e.blobs[0]=="string"?e.blobs:e.blobs.map(S=>Ze(S)),E=e.kzg,I=Xa({blobs:A,kzg:E});if(typeof y>"u"&&(y=nd({commitments:I})),typeof p>"u"){const S=Ja({blobs:A,commitments:I,kzg:E});p=cd({blobs:A,commitments:I,proofs:S})}}const g=Gs(l),_=[J(r),i?J(i):"0x",f?J(f):"0x",c?J(c):"0x",n?J(n):"0x",s??"0x",o?J(o):"0x",h??"0x",g,a?J(a):"0x",y??[],...Mi(e,t)],x=[],k=[],T=[];if(p)for(let A=0;A<p.length;A++){const{blob:E,commitment:I,proof:S}=p[A];x.push(E),k.push(I),T.push(S)}return Ct(["0x03",mr(p?[_,x,k,T]:_)])}function lm(e,t){const{chainId:r,gas:n,nonce:i,to:s,value:o,maxFeePerGas:a,maxPriorityFeePerGas:c,accessList:f,data:l}=e;sc(e);const h=Gs(f),y=[J(r),i?J(i):"0x",c?J(c):"0x",a?J(a):"0x",n?J(n):"0x",s??"0x",o?J(o):"0x",l??"0x",h,...Mi(e,t)];return Ct(["0x02",mr(y)])}function hm(e,t){const{chainId:r,gas:n,data:i,nonce:s,to:o,value:a,accessList:c,gasPrice:f}=e;am(e);const l=Gs(c),h=[J(r),s?J(s):"0x",f?J(f):"0x",n?J(n):"0x",o??"0x",a?J(a):"0x",i??"0x",l,...Mi(e,t)];return Ct(["0x01",mr(h)])}function pm(e,t){const{chainId:r=0,gas:n,data:i,nonce:s,to:o,value:a,gasPrice:c}=e;cm(e);let f=[s?J(s):"0x",c?J(c):"0x",n?J(n):"0x",o??"0x",a?J(a):"0x",i??"0x"];if(t){const l=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(r>0)return BigInt(r*2)+BigInt(35n+t.v-27n);const p=27n+(t.v===27n?0n:1n);if(t.v!==p)throw new _p({v:t.v});return p})(),h=Nr(t.r),y=Nr(t.s);f=[...f,J(l),h==="0x00"?"0x":h,y==="0x00"?"0x":y]}else r>0&&(f=[...f,J(r),"0x","0x"]);return mr(f)}function Mi(e,t){const r=t??e,{v:n,yParity:i}=r;if(typeof r.r>"u")return[];if(typeof r.s>"u")return[];if(typeof n>"u"&&typeof i>"u")return[];const s=Nr(r.r),o=Nr(r.s);return[typeof i=="number"?i?J(1):"0x":n===0n?"0x":n===1n?J(1):n===27n?"0x":J(1),s==="0x00"?"0x":s,o==="0x00"?"0x":o]}function ym(e){if(!e||e.length===0)return[];const t=[];for(const r of e){const{chainId:n,nonce:i,...s}=r,o=r.address;t.push([n?J(n):"0x",o,i?J(i):"0x",...Mi({},s)])}return t}var br=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function mm(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function bm(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var r=function n(){return this instanceof n?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach(function(n){var i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(r,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}),r}var mn={},Qt={},_r={};Object.defineProperty(_r,"__esModule",{value:!0});_r.anumber=ga;_r.abytes=Td;_r.ahash=wm;_r.aexists=_m;_r.aoutput=vm;function ga(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function gm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Td(e,...t){if(!gm(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function wm(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ga(e.outputLen),ga(e.blockLen)}function _m(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function vm(e,t){Td(e);const r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}var $i={},zs={};Object.defineProperty(zs,"__esModule",{value:!0});zs.crypto=void 0;zs.crypto=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;(function(e){/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */Object.defineProperty(e,"__esModule",{value:!0}),e.Hash=e.nextTick=e.byteSwapIfBE=e.isLE=void 0,e.isBytes=n,e.u8=i,e.u32=s,e.createView=o,e.rotr=a,e.rotl=c,e.byteSwap=f,e.byteSwap32=l,e.bytesToHex=y,e.hexToBytes=_,e.asyncLoop=k,e.utf8ToBytes=T,e.toBytes=A,e.concatBytes=E,e.checkOpts=S,e.wrapConstructor=L,e.wrapConstructorWithOpts=$,e.wrapXOFConstructorWithOpts=B,e.randomBytes=W;const t=zs,r=_r;function n(R){return R instanceof Uint8Array||ArrayBuffer.isView(R)&&R.constructor.name==="Uint8Array"}function i(R){return new Uint8Array(R.buffer,R.byteOffset,R.byteLength)}function s(R){return new Uint32Array(R.buffer,R.byteOffset,Math.floor(R.byteLength/4))}function o(R){return new DataView(R.buffer,R.byteOffset,R.byteLength)}function a(R,D){return R<<32-D|R>>>D}function c(R,D){return R<<D|R>>>32-D>>>0}e.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function f(R){return R<<24&4278190080|R<<8&16711680|R>>>8&65280|R>>>24&255}e.byteSwapIfBE=e.isLE?R=>R:R=>f(R);function l(R){for(let D=0;D<R.length;D++)R[D]=f(R[D])}const h=Array.from({length:256},(R,D)=>D.toString(16).padStart(2,"0"));function y(R){(0,r.abytes)(R);let D="";for(let j=0;j<R.length;j++)D+=h[R[j]];return D}const p={_0:48,_9:57,A:65,F:70,a:97,f:102};function g(R){if(R>=p._0&&R<=p._9)return R-p._0;if(R>=p.A&&R<=p.F)return R-(p.A-10);if(R>=p.a&&R<=p.f)return R-(p.a-10)}function _(R){if(typeof R!="string")throw new Error("hex string expected, got "+typeof R);const D=R.length,j=D/2;if(D%2)throw new Error("hex string expected, got unpadded hex of length "+D);const V=new Uint8Array(j);for(let X=0,ne=0;X<j;X++,ne+=2){const he=g(R.charCodeAt(ne)),_e=g(R.charCodeAt(ne+1));if(he===void 0||_e===void 0){const Te=R[ne]+R[ne+1];throw new Error('hex string expected, got non-hex character "'+Te+'" at index '+ne)}V[X]=he*16+_e}return V}const x=async()=>{};e.nextTick=x;async function k(R,D,j){let V=Date.now();for(let X=0;X<R;X++){j(X);const ne=Date.now()-V;ne>=0&&ne<D||(await(0,e.nextTick)(),V+=ne)}}function T(R){if(typeof R!="string")throw new Error("utf8ToBytes expected string, got "+typeof R);return new Uint8Array(new TextEncoder().encode(R))}function A(R){return typeof R=="string"&&(R=T(R)),(0,r.abytes)(R),R}function E(...R){let D=0;for(let V=0;V<R.length;V++){const X=R[V];(0,r.abytes)(X),D+=X.length}const j=new Uint8Array(D);for(let V=0,X=0;V<R.length;V++){const ne=R[V];j.set(ne,X),X+=ne.length}return j}class I{clone(){return this._cloneInto()}}e.Hash=I;function S(R,D){if(D!==void 0&&{}.toString.call(D)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(R,D)}function L(R){const D=V=>R().update(A(V)).digest(),j=R();return D.outputLen=j.outputLen,D.blockLen=j.blockLen,D.create=()=>R(),D}function $(R){const D=(V,X)=>R(X).update(A(V)).digest(),j=R({});return D.outputLen=j.outputLen,D.blockLen=j.blockLen,D.create=V=>R(V),D}function B(R){const D=(V,X)=>R(X).update(A(V)).digest(),j=R({});return D.outputLen=j.outputLen,D.blockLen=j.blockLen,D.create=V=>R(V),D}function W(R=32){if(t.crypto&&typeof t.crypto.getRandomValues=="function")return t.crypto.getRandomValues(new Uint8Array(R));if(t.crypto&&typeof t.crypto.randomBytes=="function")return t.crypto.randomBytes(R);throw new Error("crypto.getRandomValues must be defined")}})($i);Object.defineProperty(Qt,"__esModule",{value:!0});Qt.HashMD=void 0;Qt.setBigUint64=kd;Qt.Chi=Em;Qt.Maj=xm;const Po=_r,Rn=$i;function kd(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);const i=BigInt(32),s=BigInt(4294967295),o=Number(r>>i&s),a=Number(r&s),c=n?4:0,f=n?0:4;e.setUint32(t+c,o,n),e.setUint32(t+f,a,n)}function Em(e,t,r){return e&t^~e&r}function xm(e,t,r){return e&t^e&r^t&r}class Am extends Rn.Hash{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=(0,Rn.createView)(this.buffer)}update(t){(0,Po.aexists)(this);const{view:r,buffer:n,blockLen:i}=this;t=(0,Rn.toBytes)(t);const s=t.length;for(let o=0;o<s;){const a=Math.min(i-this.pos,s-o);if(a===i){const c=(0,Rn.createView)(t);for(;i<=s-o;o+=i)this.process(c,o);continue}n.set(t.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){(0,Po.aexists)(this),(0,Po.aoutput)(t,this),this.finished=!0;const{buffer:r,view:n,blockLen:i,isLE:s}=this;let{pos:o}=this;r[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(n,0),o=0);for(let h=o;h<i;h++)r[h]=0;kd(n,i-8,BigInt(this.length*8),s),this.process(n,0);const a=(0,Rn.createView)(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const f=c/4,l=this.get();if(f>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<f;h++)a.setUint32(4*h,l[h],s)}digest(){const{buffer:t,outputLen:r}=this;this.digestInto(t);const n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());const{blockLen:r,buffer:n,length:i,finished:s,destroyed:o,pos:a}=this;return t.length=i,t.pos=a,t.finished=s,t.destroyed=o,i%r&&t.buffer.set(n),t}}Qt.HashMD=Am;Object.defineProperty(mn,"__esModule",{value:!0});mn.ripemd160=mn.RIPEMD160=void 0;const Sm=Qt,Wn=$i,Pm=new Uint8Array([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),Id=new Uint8Array(new Array(16).fill(0).map((e,t)=>t)),Tm=Id.map(e=>(9*e+5)%16);let oc=[Id],ac=[Tm];for(let e=0;e<4;e++)for(let t of[oc,ac])t.push(t[e].map(r=>Pm[r]));const Bd=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(e=>new Uint8Array(e)),km=oc.map((e,t)=>e.map(r=>Bd[t][r])),Im=ac.map((e,t)=>e.map(r=>Bd[t][r])),Bm=new Uint32Array([0,1518500249,1859775393,2400959708,2840853838]),Cm=new Uint32Array([1352829926,1548603684,1836072691,2053994217,0]);function nu(e,t,r,n){return e===0?t^r^n:e===1?t&r|~t&n:e===2?(t|~r)^n:e===3?t&n|r&~n:t^(r|~n)}const es=new Uint32Array(16);let Cd=class extends Sm.HashMD{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:t,h1:r,h2:n,h3:i,h4:s}=this;return[t,r,n,i,s]}set(t,r,n,i,s){this.h0=t|0,this.h1=r|0,this.h2=n|0,this.h3=i|0,this.h4=s|0}process(t,r){for(let p=0;p<16;p++,r+=4)es[p]=t.getUint32(r,!0);let n=this.h0|0,i=n,s=this.h1|0,o=s,a=this.h2|0,c=a,f=this.h3|0,l=f,h=this.h4|0,y=h;for(let p=0;p<5;p++){const g=4-p,_=Bm[p],x=Cm[p],k=oc[p],T=ac[p],A=km[p],E=Im[p];for(let I=0;I<16;I++){const S=(0,Wn.rotl)(n+nu(p,s,a,f)+es[k[I]]+_,A[I])+h|0;n=h,h=f,f=(0,Wn.rotl)(a,10)|0,a=s,s=S}for(let I=0;I<16;I++){const S=(0,Wn.rotl)(i+nu(g,o,c,l)+es[T[I]]+x,E[I])+y|0;i=y,y=l,l=(0,Wn.rotl)(c,10)|0,c=o,o=S}}this.set(this.h1+a+l|0,this.h2+f+y|0,this.h3+h+i|0,this.h4+n+o|0,this.h0+s+c|0)}roundClean(){es.fill(0)}destroy(){this.destroyed=!0,this.buffer.fill(0),this.set(0,0,0,0,0)}};mn.RIPEMD160=Cd;mn.ripemd160=(0,Wn.wrapConstructor)(()=>new Cd);var Gt={};Object.defineProperty(Gt,"__esModule",{value:!0});Gt.sha224=Gt.sha256=Gt.SHA256=void 0;const To=Qt,lt=$i,Om=new Uint32Array([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]),ir=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),sr=new Uint32Array(64);class cc extends To.HashMD{constructor(){super(64,32,8,!1),this.A=ir[0]|0,this.B=ir[1]|0,this.C=ir[2]|0,this.D=ir[3]|0,this.E=ir[4]|0,this.F=ir[5]|0,this.G=ir[6]|0,this.H=ir[7]|0}get(){const{A:t,B:r,C:n,D:i,E:s,F:o,G:a,H:c}=this;return[t,r,n,i,s,o,a,c]}set(t,r,n,i,s,o,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=s|0,this.F=o|0,this.G=a|0,this.H=c|0}process(t,r){for(let h=0;h<16;h++,r+=4)sr[h]=t.getUint32(r,!1);for(let h=16;h<64;h++){const y=sr[h-15],p=sr[h-2],g=(0,lt.rotr)(y,7)^(0,lt.rotr)(y,18)^y>>>3,_=(0,lt.rotr)(p,17)^(0,lt.rotr)(p,19)^p>>>10;sr[h]=_+sr[h-7]+g+sr[h-16]|0}let{A:n,B:i,C:s,D:o,E:a,F:c,G:f,H:l}=this;for(let h=0;h<64;h++){const y=(0,lt.rotr)(a,6)^(0,lt.rotr)(a,11)^(0,lt.rotr)(a,25),p=l+y+(0,To.Chi)(a,c,f)+Om[h]+sr[h]|0,_=((0,lt.rotr)(n,2)^(0,lt.rotr)(n,13)^(0,lt.rotr)(n,22))+(0,To.Maj)(n,i,s)|0;l=f,f=c,c=a,a=o+p|0,o=s,s=i,i=n,n=p+_|0}n=n+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,l=l+this.H|0,this.set(n,i,s,o,a,c,f,l)}roundClean(){sr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}Gt.SHA256=cc;class Rm extends cc{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}Gt.sha256=(0,lt.wrapConstructor)(()=>new cc);Gt.sha224=(0,lt.wrapConstructor)(()=>new Rm);async function Nm(e,{chain:t}){const{id:r,name:n,nativeCurrency:i,rpcUrls:s,blockExplorers:o}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:Q(r),chainName:n,nativeCurrency:i,rpcUrls:s.default.http,blockExplorerUrls:o?Object.values(o).map(({url:a})=>a):void 0}]},{dedupe:!0,retryCount:0})}function Um(e,t){const{abi:r,args:n,bytecode:i,...s}=t,o=rc({abi:r,args:n,bytecode:i});return ic(e,{...s,...s.authorizationList?{to:null}:{},data:o})}async function Lm(e){var r;return((r=e.account)==null?void 0:r.type)==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(n=>Ri(n))}async function Fm(e,t={}){const{account:r=e.account,chainId:n}=t,i=r?Le(r):void 0,s=await e.request({method:"wallet_getCapabilities",params:[i==null?void 0:i.address]}),o={};for(const[a,c]of Object.entries(s))o[Number(a)]=c;return typeof n=="number"?o[n]:o}async function Mm(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}async function Od(e,t){var c;const{account:r=e.account,chainId:n,nonce:i}=t;if(!r)throw new wr({docsPath:"/docs/eip7702/prepareAuthorization"});const s=Le(r),o=(()=>{if(t.executor)return t.executor==="self"?t.executor:Le(t.executor)})(),a={address:t.contractAddress??t.address,chainId:n,nonce:i};return typeof a.chainId>"u"&&(a.chainId=((c=e.chain)==null?void 0:c.id)??await oe(e,Fi,"getChainId")({})),typeof a.nonce>"u"&&(a.nonce=await oe(e,td,"getTransactionCount")({address:s.address,blockTag:"pending"}),(o==="self"||o!=null&&o.address&&ec(o.address,s.address))&&(a.nonce+=1)),a}async function $m(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(r=>$0(r))}async function Hm(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function Dm(e,t){const{account:r=e.account,capabilities:n,chain:i=e.chain,forceAtomic:s=!1,id:o,version:a="2.0.0"}=t;if(typeof r>"u")throw new wr({docsPath:"/experimental/eip5792/sendCalls"});const c=r?Le(r):null,f=t.calls.map(l=>{const h=l;return{data:h.abi?Pn({abi:h.abi,functionName:h.functionName,args:h.args}):h.data,to:h.to,value:h.value?Q(h.value):void 0}});try{const l=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:s,calls:f,capabilities:n,chainId:Q(i.id),from:c==null?void 0:c.address,id:o,version:a}]},{retryCount:0});return typeof l=="string"?{id:l}:l}catch(l){throw _d(l,{...t,account:c,chain:t.chain})}}async function jm(e,t){const{id:r}=t;await e.request({method:"wallet_showCallsStatus",params:[r]})}async function Gm(e,t){const{account:r=e.account}=t;if(!r)throw new wr({docsPath:"/docs/eip7702/signAuthorization"});const n=Le(r);if(!n.signAuthorization)throw new ds({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:n.type});const i=await Od(e,t);return n.signAuthorization(i)}async function zm(e,{account:t=e.account,message:r}){if(!t)throw new wr({docsPath:"/docs/actions/wallet/signMessage"});const n=Le(t);if(n.signMessage)return n.signMessage({message:r});const i=typeof r=="string"?Cs(r):r.raw instanceof Uint8Array?J(r.raw):r.raw;return e.request({method:"personal_sign",params:[i,n.address]},{retryCount:0})}async function qm(e,t){var f,l,h,y;const{account:r=e.account,chain:n=e.chain,...i}=t;if(!r)throw new wr({docsPath:"/docs/actions/wallet/signTransaction"});const s=Le(r);Li({account:s,...t});const o=await oe(e,Fi,"getChainId")({});n!==null&&wd({currentChainId:o,chain:n});const a=(n==null?void 0:n.formatters)||((f=e.chain)==null?void 0:f.formatters),c=((l=a==null?void 0:a.transactionRequest)==null?void 0:l.format)||Hs;return s.signTransaction?s.signTransaction({...i,chainId:o},{serializer:(y=(h=e.chain)==null?void 0:h.serializers)==null?void 0:y.transaction}):await e.request({method:"eth_signTransaction",params:[{...c(i),chainId:Q(o),from:s.address}]},{retryCount:0})}async function Vm(e,t){const{account:r=e.account,domain:n,message:i,primaryType:s}=t;if(!r)throw new wr({docsPath:"/docs/actions/wallet/signTypedData"});const o=Le(r),a={EIP712Domain:nm({domain:n}),...t.types};if(rm({domain:n,message:i,primaryType:s,types:a}),o.signTypedData)return o.signTypedData({domain:n,message:i,primaryType:s,types:a});const c=tm({domain:n,message:i,primaryType:s,types:a});return e.request({method:"eth_signTypedData_v4",params:[o.address,c]},{retryCount:0})}async function Wm(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:Q(t)}]},{retryCount:0})}async function Km(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}function Ym(e){return{addChain:t=>Nm(e,t),deployContract:t=>Um(e,t),getAddresses:()=>Lm(e),getCallsStatus:t=>Ad(e,t),getCapabilities:()=>Fm(e),getChainId:()=>Fi(e),getPermissions:()=>Mm(e),prepareAuthorization:t=>Od(e,t),prepareTransactionRequest:t=>Za(e,t),requestAddresses:()=>$m(e),requestPermissions:t=>Hm(e,t),sendCalls:t=>Dm(e,t),sendRawTransaction:t=>vd(e,t),sendTransaction:t=>ic(e,t),showCallsStatus:t=>jm(e,t),signAuthorization:t=>Gm(e,t),signMessage:t=>zm(e,t),signTransaction:t=>qm(e,t),signTypedData:t=>Vm(e,t),switchChain:t=>Wm(e,t),waitForCallsStatus:t=>Hy(e,t),watchAsset:t=>Km(e,t),writeContract:t=>Ed(e,t)}}function ko(e){const{key:t="wallet",name:r="Wallet Client",transport:n}=e;return jy({...e,key:t,name:r,transport:n,type:"walletClient"}).extend(Ym)}function wa(e){return typeof e=="string"&&(e=Buffer.from(e,"hex")),e.length===32?e:e.subarray(1,33)}function Pr(e,t){if(!e)throw new Error(t)}function Xm(e){return Buffer.concat([Uint8Array.from([192]),Jm(e)])}function Jm(e){const t=Tc.encodingLength(e.length),r=Buffer.allocUnsafe(t);return Tc.encode(e.length,r),Buffer.concat([r,e])}function Qm(e,t){if(e.compare(t)>0){const r=e;e=t,t=r}return[e,t]}const fr=e=>e.length===64?e:e.slice(2),Zm=e=>{if(!e)return!1;try{const t=Buffer.from(e,"hex");return Or.isPoint(t)}catch{return!1}},Rd=(e,t,r,n)=>e+":"+t.toLowerCase()+"::"+r+":"+n.toLowerCase();function eb(e,t){if(!e)return!1;const r=t===z.Environment.MAINNET?ce.networks.bitcoin:t===z.Environment.TESTNET?ce.networks.testnet:ce.networks.regtest;if(!r)return!1;ce.initEccLib(Or);try{return ce.address.toOutputScript(e,r),!0}catch{return!1}}const tb=e=>{switch(e){case z.Environment.MAINNET:return ln.BitcoinNetwork.Mainnet;case z.Environment.TESTNET:return ln.BitcoinNetwork.Testnet;default:throw new Error(`Invalid bitcoin network ${e}`)}},rb=e=>{const t=e.toLowerCase().replace("0x","");return/^[0-9a-f]+$/.test(t)},nb=e=>{if(typeof e=="object"&&"r"in e&&"s"in e)return z.Ok([e.r.toString(),e.s.toString()]);if(Array.isArray(e)){const t=e.map(r=>typeof r=="string"&&r.startsWith("0x")&&rb(r)?BigInt(r).toString():r);return z.Ok(t)}return z.Err("Invalid signature format")};var we=(e=>(e.Created="Created",e.Matched="Matched",e.InitiateDetected="InitiateDetected",e.Initiated="Initiated",e.CounterPartyInitiateDetected="CounterPartyInitiateDetected",e.CounterPartyInitiated="CounterPartyInitiated",e.RedeemDetected="RedeemDetected",e.Redeemed="Redeemed",e.CounterPartyRedeemDetected="CounterPartyRedeemDetected",e.CounterPartyRedeemed="CounterPartyRedeemed",e.Completed="Completed",e.CounterPartySwapExpired="CounterPartySwapExpired",e.Expired="Expired",e.RefundDetected="RefundDetected",e.Refunded="Refunded",e.CounterPartyRefundDetected="CounterPartyRefundDetected",e.CounterPartyRefunded="CounterPartyRefunded",e.Cancelled="Cancelled",e.DeadLineExceeded="DeadLineExceeded",e))(we||{}),xe=(e=>(e.Idle="Idle",e.InitiateDetected="InitiateDetected",e.Initiated="Initiated",e.RedeemDetected="RedeemDetected",e.Redeemed="Redeemed",e.RefundDetected="RefundDetected",e.Refunded="Refunded",e.Expired="Expired",e))(xe||{});const uc=(e,t,r)=>{const n=_a(e.source_swap,t),i=_a(e.destination_swap,r);if(i===xe.RedeemDetected)return we.RedeemDetected;if(i===xe.Redeemed)return we.Redeemed;if(n===xe.Refunded)return we.Refunded;if(n===xe.RefundDetected)return we.RefundDetected;if(i===xe.Expired)return we.CounterPartySwapExpired;if(n===xe.Expired)return we.Expired;if(i===xe.Refunded)return we.CounterPartyRefunded;if(i===xe.RefundDetected)return we.CounterPartyRefundDetected;const s=Number(e.create_order.additional_data.deadline);return i===xe.Initiated?we.CounterPartyInitiated:i===xe.InitiateDetected?we.CounterPartyInitiateDetected:Si(s,12)?we.DeadLineExceeded:n===xe.Initiated?we.Initiated:Si(s,1)?we.DeadLineExceeded:n===xe.InitiateDetected?we.InitiateDetected:n===xe.Redeemed?we.CounterPartyRedeemed:n===xe.RedeemDetected?we.CounterPartyRedeemDetected:we.Matched},_a=(e,t)=>{if(e.redeem_tx_hash)return Number(e.redeem_block_number)?xe.Redeemed:xe.RedeemDetected;if(e.refund_tx_hash)return Number(e.refund_block_number)?xe.Refunded:xe.RefundDetected;if(Number(e.initiate_block_number)){const r=Number(e.initiate_block_number)+e.timelock;if(t>r)return xe.Expired}return e.initiate_tx_hash?Number(e.initiate_block_number)?xe.Initiated:xe.InitiateDetected:xe.Idle},ib=(e,t,r)=>{const n=uc(e,t,r);return fc(n)},fc=e=>{switch(e){case we.Matched:return Ce.Initiate;case we.CounterPartyInitiated:case we.CounterPartyInitiateDetected:case we.RedeemDetected:return Ce.Redeem;case we.Expired:return Ce.Refund;default:return Ce.Idle}},Si=(e,t=0)=>{const r=Date.now(),n=e*1e3+t*36e5;return r>=n},sb=e=>e.filter(t=>!Nd(t)),Nd=e=>{const{source_swap:t,create_order:r}=e,{initiate_tx_hash:n,initiate_block_number:i}=t,{deadline:s}=r.additional_data;return n&&Number(i)?!1:n&&!Number(i)?Si(Number(s),12):n?!1:Si(Number(s),1)},ob=Buffer.from("79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","hex"),ab=Buffer.from("483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8","hex"),cb=Buffer.concat([ob,ab]),ub=Buffer.from("0250929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0","hex"),iu={failedToCreateInternalPubkey:"failed to create internal pubkey"};function fb(){const e=rf.crypto.sha256(Buffer.from("GardenHTLC","utf-8")),t=Or.pointMultiply(Buffer.concat([Buffer.from("04","hex"),cb]),e);if(!t)throw new Error(iu.failedToCreateInternalPubkey);const r=Or.pointAdd(ub,t);if(!r)throw new Error(iu.failedToCreateInternalPubkey);return wa(Buffer.from(r))}var Ae={},Ve={},Zt={},qs={};qs.byteLength=hb;qs.toByteArray=yb;qs.fromByteArray=gb;var kt=[],ht=[],db=typeof Uint8Array<"u"?Uint8Array:Array,Io="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var Yr=0,lb=Io.length;Yr<lb;++Yr)kt[Yr]=Io[Yr],ht[Io.charCodeAt(Yr)]=Yr;ht[45]=62;ht[95]=63;function Ud(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function hb(e){var t=Ud(e),r=t[0],n=t[1];return(r+n)*3/4-n}function pb(e,t,r){return(t+r)*3/4-r}function yb(e){var t,r=Ud(e),n=r[0],i=r[1],s=new db(pb(e,n,i)),o=0,a=i>0?n-4:n,c;for(c=0;c<a;c+=4)t=ht[e.charCodeAt(c)]<<18|ht[e.charCodeAt(c+1)]<<12|ht[e.charCodeAt(c+2)]<<6|ht[e.charCodeAt(c+3)],s[o++]=t>>16&255,s[o++]=t>>8&255,s[o++]=t&255;return i===2&&(t=ht[e.charCodeAt(c)]<<2|ht[e.charCodeAt(c+1)]>>4,s[o++]=t&255),i===1&&(t=ht[e.charCodeAt(c)]<<10|ht[e.charCodeAt(c+1)]<<4|ht[e.charCodeAt(c+2)]>>2,s[o++]=t>>8&255,s[o++]=t&255),s}function mb(e){return kt[e>>18&63]+kt[e>>12&63]+kt[e>>6&63]+kt[e&63]}function bb(e,t,r){for(var n,i=[],s=t;s<r;s+=3)n=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(e[s+2]&255),i.push(mb(n));return i.join("")}function gb(e){for(var t,r=e.length,n=r%3,i=[],s=16383,o=0,a=r-n;o<a;o+=s)i.push(bb(e,o,o+s>a?a:o+s));return n===1?(t=e[r-1],i.push(kt[t>>2]+kt[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(kt[t>>10]+kt[t>>4&63]+kt[t<<2&63]+"=")),i.join("")}var dc={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */dc.read=function(e,t,r,n,i){var s,o,a=i*8-n-1,c=(1<<a)-1,f=c>>1,l=-7,h=r?i-1:0,y=r?-1:1,p=e[t+h];for(h+=y,s=p&(1<<-l)-1,p>>=-l,l+=a;l>0;s=s*256+e[t+h],h+=y,l-=8);for(o=s&(1<<-l)-1,s>>=-l,l+=n;l>0;o=o*256+e[t+h],h+=y,l-=8);if(s===0)s=1-f;else{if(s===c)return o?NaN:(p?-1:1)*(1/0);o=o+Math.pow(2,n),s=s-f}return(p?-1:1)*o*Math.pow(2,s-n)};dc.write=function(e,t,r,n,i,s){var o,a,c,f=s*8-i-1,l=(1<<f)-1,h=l>>1,y=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:s-1,g=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-o))<1&&(o--,c*=2),o+h>=1?t+=y/c:t+=y*Math.pow(2,1-h),t*c>=2&&(o++,c/=2),o+h>=l?(a=0,o=l):o+h>=1?(a=(t*c-1)*Math.pow(2,i),o=o+h):(a=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[r+p]=a&255,p+=g,a/=256,i-=8);for(o=o<<i|a,f+=i;f>0;e[r+p]=o&255,p+=g,o/=256,f-=8);e[r+p-g]|=_*128};/*!
|
|
42
|
+
* The buffer module from node.js, for the browser.
|
|
43
|
+
*
|
|
44
|
+
* @author Feross Aboukhadijeh <https://feross.org>
|
|
45
|
+
* @license MIT
|
|
46
|
+
*/(function(e){const t=qs,r=dc,n=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=a,e.SlowBuffer=T,e.INSPECT_MAX_BYTES=50;const i=2147483647;e.kMaxLength=i,a.TYPED_ARRAY_SUPPORT=s(),!a.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function s(){try{const m=new Uint8Array(1),u={foo:function(){return 42}};return Object.setPrototypeOf(u,Uint8Array.prototype),Object.setPrototypeOf(m,u),m.foo()===42}catch{return!1}}Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}});function o(m){if(m>i)throw new RangeError('The value "'+m+'" is invalid for option "size"');const u=new Uint8Array(m);return Object.setPrototypeOf(u,a.prototype),u}function a(m,u,d){if(typeof m=="number"){if(typeof u=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return h(m)}return c(m,u,d)}a.poolSize=8192;function c(m,u,d){if(typeof m=="string")return y(m,u);if(ArrayBuffer.isView(m))return g(m);if(m==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof m);if(ot(m,ArrayBuffer)||m&&ot(m.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ot(m,SharedArrayBuffer)||m&&ot(m.buffer,SharedArrayBuffer)))return _(m,u,d);if(typeof m=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const b=m.valueOf&&m.valueOf();if(b!=null&&b!==m)return a.from(b,u,d);const P=x(m);if(P)return P;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof m[Symbol.toPrimitive]=="function")return a.from(m[Symbol.toPrimitive]("string"),u,d);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof m)}a.from=function(m,u,d){return c(m,u,d)},Object.setPrototypeOf(a.prototype,Uint8Array.prototype),Object.setPrototypeOf(a,Uint8Array);function f(m){if(typeof m!="number")throw new TypeError('"size" argument must be of type number');if(m<0)throw new RangeError('The value "'+m+'" is invalid for option "size"')}function l(m,u,d){return f(m),m<=0?o(m):u!==void 0?typeof d=="string"?o(m).fill(u,d):o(m).fill(u):o(m)}a.alloc=function(m,u,d){return l(m,u,d)};function h(m){return f(m),o(m<0?0:k(m)|0)}a.allocUnsafe=function(m){return h(m)},a.allocUnsafeSlow=function(m){return h(m)};function y(m,u){if((typeof u!="string"||u==="")&&(u="utf8"),!a.isEncoding(u))throw new TypeError("Unknown encoding: "+u);const d=A(m,u)|0;let b=o(d);const P=b.write(m,u);return P!==d&&(b=b.slice(0,P)),b}function p(m){const u=m.length<0?0:k(m.length)|0,d=o(u);for(let b=0;b<u;b+=1)d[b]=m[b]&255;return d}function g(m){if(ot(m,Uint8Array)){const u=new Uint8Array(m);return _(u.buffer,u.byteOffset,u.byteLength)}return p(m)}function _(m,u,d){if(u<0||m.byteLength<u)throw new RangeError('"offset" is outside of buffer bounds');if(m.byteLength<u+(d||0))throw new RangeError('"length" is outside of buffer bounds');let b;return u===void 0&&d===void 0?b=new Uint8Array(m):d===void 0?b=new Uint8Array(m,u):b=new Uint8Array(m,u,d),Object.setPrototypeOf(b,a.prototype),b}function x(m){if(a.isBuffer(m)){const u=k(m.length)|0,d=o(u);return d.length===0||m.copy(d,0,0,u),d}if(m.length!==void 0)return typeof m.length!="number"||Ar(m.length)?o(0):p(m);if(m.type==="Buffer"&&Array.isArray(m.data))return p(m.data)}function k(m){if(m>=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return m|0}function T(m){return+m!=m&&(m=0),a.alloc(+m)}a.isBuffer=function(u){return u!=null&&u._isBuffer===!0&&u!==a.prototype},a.compare=function(u,d){if(ot(u,Uint8Array)&&(u=a.from(u,u.offset,u.byteLength)),ot(d,Uint8Array)&&(d=a.from(d,d.offset,d.byteLength)),!a.isBuffer(u)||!a.isBuffer(d))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(u===d)return 0;let b=u.length,P=d.length;for(let N=0,U=Math.min(b,P);N<U;++N)if(u[N]!==d[N]){b=u[N],P=d[N];break}return b<P?-1:P<b?1:0},a.isEncoding=function(u){switch(String(u).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},a.concat=function(u,d){if(!Array.isArray(u))throw new TypeError('"list" argument must be an Array of Buffers');if(u.length===0)return a.alloc(0);let b;if(d===void 0)for(d=0,b=0;b<u.length;++b)d+=u[b].length;const P=a.allocUnsafe(d);let N=0;for(b=0;b<u.length;++b){let U=u[b];if(ot(U,Uint8Array))N+U.length>P.length?(a.isBuffer(U)||(U=a.from(U)),U.copy(P,N)):Uint8Array.prototype.set.call(P,U,N);else if(a.isBuffer(U))U.copy(P,N);else throw new TypeError('"list" argument must be an Array of Buffers');N+=U.length}return P};function A(m,u){if(a.isBuffer(m))return m.length;if(ArrayBuffer.isView(m)||ot(m,ArrayBuffer))return m.byteLength;if(typeof m!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof m);const d=m.length,b=arguments.length>2&&arguments[2]===!0;if(!b&&d===0)return 0;let P=!1;for(;;)switch(u){case"ascii":case"latin1":case"binary":return d;case"utf8":case"utf-8":return ae(m).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return d*2;case"hex":return d>>>1;case"base64":return kn(m).length;default:if(P)return b?-1:ae(m).length;u=(""+u).toLowerCase(),P=!0}}a.byteLength=A;function E(m,u,d){let b=!1;if((u===void 0||u<0)&&(u=0),u>this.length||((d===void 0||d>this.length)&&(d=this.length),d<=0)||(d>>>=0,u>>>=0,d<=u))return"";for(m||(m="utf8");;)switch(m){case"hex":return Te(this,u,d);case"utf8":case"utf-8":return V(this,u,d);case"ascii":return he(this,u,d);case"latin1":case"binary":return _e(this,u,d);case"base64":return j(this,u,d);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return We(this,u,d);default:if(b)throw new TypeError("Unknown encoding: "+m);m=(m+"").toLowerCase(),b=!0}}a.prototype._isBuffer=!0;function I(m,u,d){const b=m[u];m[u]=m[d],m[d]=b}a.prototype.swap16=function(){const u=this.length;if(u%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let d=0;d<u;d+=2)I(this,d,d+1);return this},a.prototype.swap32=function(){const u=this.length;if(u%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let d=0;d<u;d+=4)I(this,d,d+3),I(this,d+1,d+2);return this},a.prototype.swap64=function(){const u=this.length;if(u%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let d=0;d<u;d+=8)I(this,d,d+7),I(this,d+1,d+6),I(this,d+2,d+5),I(this,d+3,d+4);return this},a.prototype.toString=function(){const u=this.length;return u===0?"":arguments.length===0?V(this,0,u):E.apply(this,arguments)},a.prototype.toLocaleString=a.prototype.toString,a.prototype.equals=function(u){if(!a.isBuffer(u))throw new TypeError("Argument must be a Buffer");return this===u?!0:a.compare(this,u)===0},a.prototype.inspect=function(){let u="";const d=e.INSPECT_MAX_BYTES;return u=this.toString("hex",0,d).replace(/(.{2})/g,"$1 ").trim(),this.length>d&&(u+=" ... "),"<Buffer "+u+">"},n&&(a.prototype[n]=a.prototype.inspect),a.prototype.compare=function(u,d,b,P,N){if(ot(u,Uint8Array)&&(u=a.from(u,u.offset,u.byteLength)),!a.isBuffer(u))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof u);if(d===void 0&&(d=0),b===void 0&&(b=u?u.length:0),P===void 0&&(P=0),N===void 0&&(N=this.length),d<0||b>u.length||P<0||N>this.length)throw new RangeError("out of range index");if(P>=N&&d>=b)return 0;if(P>=N)return-1;if(d>=b)return 1;if(d>>>=0,b>>>=0,P>>>=0,N>>>=0,this===u)return 0;let U=N-P,re=b-d;const Se=Math.min(U,re),Ee=this.slice(P,N),Pe=u.slice(d,b);for(let de=0;de<Se;++de)if(Ee[de]!==Pe[de]){U=Ee[de],re=Pe[de];break}return U<re?-1:re<U?1:0};function S(m,u,d,b,P){if(m.length===0)return-1;if(typeof d=="string"?(b=d,d=0):d>2147483647?d=2147483647:d<-2147483648&&(d=-2147483648),d=+d,Ar(d)&&(d=P?0:m.length-1),d<0&&(d=m.length+d),d>=m.length){if(P)return-1;d=m.length-1}else if(d<0)if(P)d=0;else return-1;if(typeof u=="string"&&(u=a.from(u,b)),a.isBuffer(u))return u.length===0?-1:L(m,u,d,b,P);if(typeof u=="number")return u=u&255,typeof Uint8Array.prototype.indexOf=="function"?P?Uint8Array.prototype.indexOf.call(m,u,d):Uint8Array.prototype.lastIndexOf.call(m,u,d):L(m,[u],d,b,P);throw new TypeError("val must be string, number or Buffer")}function L(m,u,d,b,P){let N=1,U=m.length,re=u.length;if(b!==void 0&&(b=String(b).toLowerCase(),b==="ucs2"||b==="ucs-2"||b==="utf16le"||b==="utf-16le")){if(m.length<2||u.length<2)return-1;N=2,U/=2,re/=2,d/=2}function Se(Pe,de){return N===1?Pe[de]:Pe.readUInt16BE(de*N)}let Ee;if(P){let Pe=-1;for(Ee=d;Ee<U;Ee++)if(Se(m,Ee)===Se(u,Pe===-1?0:Ee-Pe)){if(Pe===-1&&(Pe=Ee),Ee-Pe+1===re)return Pe*N}else Pe!==-1&&(Ee-=Ee-Pe),Pe=-1}else for(d+re>U&&(d=U-re),Ee=d;Ee>=0;Ee--){let Pe=!0;for(let de=0;de<re;de++)if(Se(m,Ee+de)!==Se(u,de)){Pe=!1;break}if(Pe)return Ee}return-1}a.prototype.includes=function(u,d,b){return this.indexOf(u,d,b)!==-1},a.prototype.indexOf=function(u,d,b){return S(this,u,d,b,!0)},a.prototype.lastIndexOf=function(u,d,b){return S(this,u,d,b,!1)};function $(m,u,d,b){d=Number(d)||0;const P=m.length-d;b?(b=Number(b),b>P&&(b=P)):b=P;const N=u.length;b>N/2&&(b=N/2);let U;for(U=0;U<b;++U){const re=parseInt(u.substr(U*2,2),16);if(Ar(re))return U;m[d+U]=re}return U}function B(m,u,d,b){return Vr(ae(u,m.length-d),m,d,b)}function W(m,u,d,b){return Vr(tr(u),m,d,b)}function R(m,u,d,b){return Vr(kn(u),m,d,b)}function D(m,u,d,b){return Vr(qr(u,m.length-d),m,d,b)}a.prototype.write=function(u,d,b,P){if(d===void 0)P="utf8",b=this.length,d=0;else if(b===void 0&&typeof d=="string")P=d,b=this.length,d=0;else if(isFinite(d))d=d>>>0,isFinite(b)?(b=b>>>0,P===void 0&&(P="utf8")):(P=b,b=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const N=this.length-d;if((b===void 0||b>N)&&(b=N),u.length>0&&(b<0||d<0)||d>this.length)throw new RangeError("Attempt to write outside buffer bounds");P||(P="utf8");let U=!1;for(;;)switch(P){case"hex":return $(this,u,d,b);case"utf8":case"utf-8":return B(this,u,d,b);case"ascii":case"latin1":case"binary":return W(this,u,d,b);case"base64":return R(this,u,d,b);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,u,d,b);default:if(U)throw new TypeError("Unknown encoding: "+P);P=(""+P).toLowerCase(),U=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function j(m,u,d){return u===0&&d===m.length?t.fromByteArray(m):t.fromByteArray(m.slice(u,d))}function V(m,u,d){d=Math.min(m.length,d);const b=[];let P=u;for(;P<d;){const N=m[P];let U=null,re=N>239?4:N>223?3:N>191?2:1;if(P+re<=d){let Se,Ee,Pe,de;switch(re){case 1:N<128&&(U=N);break;case 2:Se=m[P+1],(Se&192)===128&&(de=(N&31)<<6|Se&63,de>127&&(U=de));break;case 3:Se=m[P+1],Ee=m[P+2],(Se&192)===128&&(Ee&192)===128&&(de=(N&15)<<12|(Se&63)<<6|Ee&63,de>2047&&(de<55296||de>57343)&&(U=de));break;case 4:Se=m[P+1],Ee=m[P+2],Pe=m[P+3],(Se&192)===128&&(Ee&192)===128&&(Pe&192)===128&&(de=(N&15)<<18|(Se&63)<<12|(Ee&63)<<6|Pe&63,de>65535&&de<1114112&&(U=de))}}U===null?(U=65533,re=1):U>65535&&(U-=65536,b.push(U>>>10&1023|55296),U=56320|U&1023),b.push(U),P+=re}return ne(b)}const X=4096;function ne(m){const u=m.length;if(u<=X)return String.fromCharCode.apply(String,m);let d="",b=0;for(;b<u;)d+=String.fromCharCode.apply(String,m.slice(b,b+=X));return d}function he(m,u,d){let b="";d=Math.min(m.length,d);for(let P=u;P<d;++P)b+=String.fromCharCode(m[P]&127);return b}function _e(m,u,d){let b="";d=Math.min(m.length,d);for(let P=u;P<d;++P)b+=String.fromCharCode(m[P]);return b}function Te(m,u,d){const b=m.length;(!u||u<0)&&(u=0),(!d||d<0||d>b)&&(d=b);let P="";for(let N=u;N<d;++N)P+=In[m[N]];return P}function We(m,u,d){const b=m.slice(u,d);let P="";for(let N=0;N<b.length-1;N+=2)P+=String.fromCharCode(b[N]+b[N+1]*256);return P}a.prototype.slice=function(u,d){const b=this.length;u=~~u,d=d===void 0?b:~~d,u<0?(u+=b,u<0&&(u=0)):u>b&&(u=b),d<0?(d+=b,d<0&&(d=0)):d>b&&(d=b),d<u&&(d=u);const P=this.subarray(u,d);return Object.setPrototypeOf(P,a.prototype),P};function fe(m,u,d){if(m%1!==0||m<0)throw new RangeError("offset is not uint");if(m+u>d)throw new RangeError("Trying to access beyond buffer length")}a.prototype.readUintLE=a.prototype.readUIntLE=function(u,d,b){u=u>>>0,d=d>>>0,b||fe(u,d,this.length);let P=this[u],N=1,U=0;for(;++U<d&&(N*=256);)P+=this[u+U]*N;return P},a.prototype.readUintBE=a.prototype.readUIntBE=function(u,d,b){u=u>>>0,d=d>>>0,b||fe(u,d,this.length);let P=this[u+--d],N=1;for(;d>0&&(N*=256);)P+=this[u+--d]*N;return P},a.prototype.readUint8=a.prototype.readUInt8=function(u,d){return u=u>>>0,d||fe(u,1,this.length),this[u]},a.prototype.readUint16LE=a.prototype.readUInt16LE=function(u,d){return u=u>>>0,d||fe(u,2,this.length),this[u]|this[u+1]<<8},a.prototype.readUint16BE=a.prototype.readUInt16BE=function(u,d){return u=u>>>0,d||fe(u,2,this.length),this[u]<<8|this[u+1]},a.prototype.readUint32LE=a.prototype.readUInt32LE=function(u,d){return u=u>>>0,d||fe(u,4,this.length),(this[u]|this[u+1]<<8|this[u+2]<<16)+this[u+3]*16777216},a.prototype.readUint32BE=a.prototype.readUInt32BE=function(u,d){return u=u>>>0,d||fe(u,4,this.length),this[u]*16777216+(this[u+1]<<16|this[u+2]<<8|this[u+3])},a.prototype.readBigUInt64LE=ft(function(u){u=u>>>0,M(u,"offset");const d=this[u],b=this[u+7];(d===void 0||b===void 0)&&q(u,this.length-8);const P=d+this[++u]*2**8+this[++u]*2**16+this[++u]*2**24,N=this[++u]+this[++u]*2**8+this[++u]*2**16+b*2**24;return BigInt(P)+(BigInt(N)<<BigInt(32))}),a.prototype.readBigUInt64BE=ft(function(u){u=u>>>0,M(u,"offset");const d=this[u],b=this[u+7];(d===void 0||b===void 0)&&q(u,this.length-8);const P=d*2**24+this[++u]*2**16+this[++u]*2**8+this[++u],N=this[++u]*2**24+this[++u]*2**16+this[++u]*2**8+b;return(BigInt(P)<<BigInt(32))+BigInt(N)}),a.prototype.readIntLE=function(u,d,b){u=u>>>0,d=d>>>0,b||fe(u,d,this.length);let P=this[u],N=1,U=0;for(;++U<d&&(N*=256);)P+=this[u+U]*N;return N*=128,P>=N&&(P-=Math.pow(2,8*d)),P},a.prototype.readIntBE=function(u,d,b){u=u>>>0,d=d>>>0,b||fe(u,d,this.length);let P=d,N=1,U=this[u+--P];for(;P>0&&(N*=256);)U+=this[u+--P]*N;return N*=128,U>=N&&(U-=Math.pow(2,8*d)),U},a.prototype.readInt8=function(u,d){return u=u>>>0,d||fe(u,1,this.length),this[u]&128?(255-this[u]+1)*-1:this[u]},a.prototype.readInt16LE=function(u,d){u=u>>>0,d||fe(u,2,this.length);const b=this[u]|this[u+1]<<8;return b&32768?b|4294901760:b},a.prototype.readInt16BE=function(u,d){u=u>>>0,d||fe(u,2,this.length);const b=this[u+1]|this[u]<<8;return b&32768?b|4294901760:b},a.prototype.readInt32LE=function(u,d){return u=u>>>0,d||fe(u,4,this.length),this[u]|this[u+1]<<8|this[u+2]<<16|this[u+3]<<24},a.prototype.readInt32BE=function(u,d){return u=u>>>0,d||fe(u,4,this.length),this[u]<<24|this[u+1]<<16|this[u+2]<<8|this[u+3]},a.prototype.readBigInt64LE=ft(function(u){u=u>>>0,M(u,"offset");const d=this[u],b=this[u+7];(d===void 0||b===void 0)&&q(u,this.length-8);const P=this[u+4]+this[u+5]*2**8+this[u+6]*2**16+(b<<24);return(BigInt(P)<<BigInt(32))+BigInt(d+this[++u]*2**8+this[++u]*2**16+this[++u]*2**24)}),a.prototype.readBigInt64BE=ft(function(u){u=u>>>0,M(u,"offset");const d=this[u],b=this[u+7];(d===void 0||b===void 0)&&q(u,this.length-8);const P=(d<<24)+this[++u]*2**16+this[++u]*2**8+this[++u];return(BigInt(P)<<BigInt(32))+BigInt(this[++u]*2**24+this[++u]*2**16+this[++u]*2**8+b)}),a.prototype.readFloatLE=function(u,d){return u=u>>>0,d||fe(u,4,this.length),r.read(this,u,!0,23,4)},a.prototype.readFloatBE=function(u,d){return u=u>>>0,d||fe(u,4,this.length),r.read(this,u,!1,23,4)},a.prototype.readDoubleLE=function(u,d){return u=u>>>0,d||fe(u,8,this.length),r.read(this,u,!0,52,8)},a.prototype.readDoubleBE=function(u,d){return u=u>>>0,d||fe(u,8,this.length),r.read(this,u,!1,52,8)};function ye(m,u,d,b,P,N){if(!a.isBuffer(m))throw new TypeError('"buffer" argument must be a Buffer instance');if(u>P||u<N)throw new RangeError('"value" argument is out of bounds');if(d+b>m.length)throw new RangeError("Index out of range")}a.prototype.writeUintLE=a.prototype.writeUIntLE=function(u,d,b,P){if(u=+u,d=d>>>0,b=b>>>0,!P){const re=Math.pow(2,8*b)-1;ye(this,u,d,b,re,0)}let N=1,U=0;for(this[d]=u&255;++U<b&&(N*=256);)this[d+U]=u/N&255;return d+b},a.prototype.writeUintBE=a.prototype.writeUIntBE=function(u,d,b,P){if(u=+u,d=d>>>0,b=b>>>0,!P){const re=Math.pow(2,8*b)-1;ye(this,u,d,b,re,0)}let N=b-1,U=1;for(this[d+N]=u&255;--N>=0&&(U*=256);)this[d+N]=u/U&255;return d+b},a.prototype.writeUint8=a.prototype.writeUInt8=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,1,255,0),this[d]=u&255,d+1},a.prototype.writeUint16LE=a.prototype.writeUInt16LE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,2,65535,0),this[d]=u&255,this[d+1]=u>>>8,d+2},a.prototype.writeUint16BE=a.prototype.writeUInt16BE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,2,65535,0),this[d]=u>>>8,this[d+1]=u&255,d+2},a.prototype.writeUint32LE=a.prototype.writeUInt32LE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,4,4294967295,0),this[d+3]=u>>>24,this[d+2]=u>>>16,this[d+1]=u>>>8,this[d]=u&255,d+4},a.prototype.writeUint32BE=a.prototype.writeUInt32BE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,4,4294967295,0),this[d]=u>>>24,this[d+1]=u>>>16,this[d+2]=u>>>8,this[d+3]=u&255,d+4};function st(m,u,d,b,P){v(u,b,P,m,d,7);let N=Number(u&BigInt(4294967295));m[d++]=N,N=N>>8,m[d++]=N,N=N>>8,m[d++]=N,N=N>>8,m[d++]=N;let U=Number(u>>BigInt(32)&BigInt(4294967295));return m[d++]=U,U=U>>8,m[d++]=U,U=U>>8,m[d++]=U,U=U>>8,m[d++]=U,d}function er(m,u,d,b,P){v(u,b,P,m,d,7);let N=Number(u&BigInt(4294967295));m[d+7]=N,N=N>>8,m[d+6]=N,N=N>>8,m[d+5]=N,N=N>>8,m[d+4]=N;let U=Number(u>>BigInt(32)&BigInt(4294967295));return m[d+3]=U,U=U>>8,m[d+2]=U,U=U>>8,m[d+1]=U,U=U>>8,m[d]=U,d+8}a.prototype.writeBigUInt64LE=ft(function(u,d=0){return st(this,u,d,BigInt(0),BigInt("0xffffffffffffffff"))}),a.prototype.writeBigUInt64BE=ft(function(u,d=0){return er(this,u,d,BigInt(0),BigInt("0xffffffffffffffff"))}),a.prototype.writeIntLE=function(u,d,b,P){if(u=+u,d=d>>>0,!P){const Se=Math.pow(2,8*b-1);ye(this,u,d,b,Se-1,-Se)}let N=0,U=1,re=0;for(this[d]=u&255;++N<b&&(U*=256);)u<0&&re===0&&this[d+N-1]!==0&&(re=1),this[d+N]=(u/U>>0)-re&255;return d+b},a.prototype.writeIntBE=function(u,d,b,P){if(u=+u,d=d>>>0,!P){const Se=Math.pow(2,8*b-1);ye(this,u,d,b,Se-1,-Se)}let N=b-1,U=1,re=0;for(this[d+N]=u&255;--N>=0&&(U*=256);)u<0&&re===0&&this[d+N+1]!==0&&(re=1),this[d+N]=(u/U>>0)-re&255;return d+b},a.prototype.writeInt8=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,1,127,-128),u<0&&(u=255+u+1),this[d]=u&255,d+1},a.prototype.writeInt16LE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,2,32767,-32768),this[d]=u&255,this[d+1]=u>>>8,d+2},a.prototype.writeInt16BE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,2,32767,-32768),this[d]=u>>>8,this[d+1]=u&255,d+2},a.prototype.writeInt32LE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,4,2147483647,-2147483648),this[d]=u&255,this[d+1]=u>>>8,this[d+2]=u>>>16,this[d+3]=u>>>24,d+4},a.prototype.writeInt32BE=function(u,d,b){return u=+u,d=d>>>0,b||ye(this,u,d,4,2147483647,-2147483648),u<0&&(u=4294967295+u+1),this[d]=u>>>24,this[d+1]=u>>>16,this[d+2]=u>>>8,this[d+3]=u&255,d+4},a.prototype.writeBigInt64LE=ft(function(u,d=0){return st(this,u,d,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),a.prototype.writeBigInt64BE=ft(function(u,d=0){return er(this,u,d,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Rt(m,u,d,b,P,N){if(d+b>m.length)throw new RangeError("Index out of range");if(d<0)throw new RangeError("Index out of range")}function O(m,u,d,b,P){return u=+u,d=d>>>0,P||Rt(m,u,d,4),r.write(m,u,d,b,23,4),d+4}a.prototype.writeFloatLE=function(u,d,b){return O(this,u,d,!0,b)},a.prototype.writeFloatBE=function(u,d,b){return O(this,u,d,!1,b)};function C(m,u,d,b,P){return u=+u,d=d>>>0,P||Rt(m,u,d,8),r.write(m,u,d,b,52,8),d+8}a.prototype.writeDoubleLE=function(u,d,b){return C(this,u,d,!0,b)},a.prototype.writeDoubleBE=function(u,d,b){return C(this,u,d,!1,b)},a.prototype.copy=function(u,d,b,P){if(!a.isBuffer(u))throw new TypeError("argument should be a Buffer");if(b||(b=0),!P&&P!==0&&(P=this.length),d>=u.length&&(d=u.length),d||(d=0),P>0&&P<b&&(P=b),P===b||u.length===0||this.length===0)return 0;if(d<0)throw new RangeError("targetStart out of bounds");if(b<0||b>=this.length)throw new RangeError("Index out of range");if(P<0)throw new RangeError("sourceEnd out of bounds");P>this.length&&(P=this.length),u.length-d<P-b&&(P=u.length-d+b);const N=P-b;return this===u&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(d,b,P):Uint8Array.prototype.set.call(u,this.subarray(b,P),d),N},a.prototype.fill=function(u,d,b,P){if(typeof u=="string"){if(typeof d=="string"?(P=d,d=0,b=this.length):typeof b=="string"&&(P=b,b=this.length),P!==void 0&&typeof P!="string")throw new TypeError("encoding must be a string");if(typeof P=="string"&&!a.isEncoding(P))throw new TypeError("Unknown encoding: "+P);if(u.length===1){const U=u.charCodeAt(0);(P==="utf8"&&U<128||P==="latin1")&&(u=U)}}else typeof u=="number"?u=u&255:typeof u=="boolean"&&(u=Number(u));if(d<0||this.length<d||this.length<b)throw new RangeError("Out of range index");if(b<=d)return this;d=d>>>0,b=b===void 0?this.length:b>>>0,u||(u=0);let N;if(typeof u=="number")for(N=d;N<b;++N)this[N]=u;else{const U=a.isBuffer(u)?u:a.from(u,P),re=U.length;if(re===0)throw new TypeError('The value "'+u+'" is invalid for argument "value"');for(N=0;N<b-d;++N)this[N+d]=U[N%re]}return this};const H={};function K(m,u,d){H[m]=class extends d{constructor(){super(),Object.defineProperty(this,"message",{value:u.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${m}]`,this.stack,delete this.name}get code(){return m}set code(P){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:P,writable:!0})}toString(){return`${this.name} [${m}]: ${this.message}`}}}K("ERR_BUFFER_OUT_OF_BOUNDS",function(m){return m?`${m} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),K("ERR_INVALID_ARG_TYPE",function(m,u){return`The "${m}" argument must be of type number. Received type ${typeof u}`},TypeError),K("ERR_OUT_OF_RANGE",function(m,u,d){let b=`The value of "${m}" is out of range.`,P=d;return Number.isInteger(d)&&Math.abs(d)>2**32?P=Z(String(d)):typeof d=="bigint"&&(P=String(d),(d>BigInt(2)**BigInt(32)||d<-(BigInt(2)**BigInt(32)))&&(P=Z(P)),P+="n"),b+=` It must be ${u}. Received ${P}`,b},RangeError);function Z(m){let u="",d=m.length;const b=m[0]==="-"?1:0;for(;d>=b+4;d-=3)u=`_${m.slice(d-3,d)}${u}`;return`${m.slice(0,d)}${u}`}function w(m,u,d){M(u,"offset"),(m[u]===void 0||m[u+d]===void 0)&&q(u,m.length-(d+1))}function v(m,u,d,b,P,N){if(m>d||m<u){const U=typeof u=="bigint"?"n":"";let re;throw u===0||u===BigInt(0)?re=`>= 0${U} and < 2${U} ** ${(N+1)*8}${U}`:re=`>= -(2${U} ** ${(N+1)*8-1}${U}) and < 2 ** ${(N+1)*8-1}${U}`,new H.ERR_OUT_OF_RANGE("value",re,m)}w(b,P,N)}function M(m,u){if(typeof m!="number")throw new H.ERR_INVALID_ARG_TYPE(u,"number",m)}function q(m,u,d){throw Math.floor(m)!==m?(M(m,d),new H.ERR_OUT_OF_RANGE("offset","an integer",m)):u<0?new H.ERR_BUFFER_OUT_OF_BOUNDS:new H.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${u}`,m)}const ve=/[^+/0-9A-Za-z-_]/g;function ee(m){if(m=m.split("=")[0],m=m.trim().replace(ve,""),m.length<2)return"";for(;m.length%4!==0;)m=m+"=";return m}function ae(m,u){u=u||1/0;let d;const b=m.length;let P=null;const N=[];for(let U=0;U<b;++U){if(d=m.charCodeAt(U),d>55295&&d<57344){if(!P){if(d>56319){(u-=3)>-1&&N.push(239,191,189);continue}else if(U+1===b){(u-=3)>-1&&N.push(239,191,189);continue}P=d;continue}if(d<56320){(u-=3)>-1&&N.push(239,191,189),P=d;continue}d=(P-55296<<10|d-56320)+65536}else P&&(u-=3)>-1&&N.push(239,191,189);if(P=null,d<128){if((u-=1)<0)break;N.push(d)}else if(d<2048){if((u-=2)<0)break;N.push(d>>6|192,d&63|128)}else if(d<65536){if((u-=3)<0)break;N.push(d>>12|224,d>>6&63|128,d&63|128)}else if(d<1114112){if((u-=4)<0)break;N.push(d>>18|240,d>>12&63|128,d>>6&63|128,d&63|128)}else throw new Error("Invalid code point")}return N}function tr(m){const u=[];for(let d=0;d<m.length;++d)u.push(m.charCodeAt(d)&255);return u}function qr(m,u){let d,b,P;const N=[];for(let U=0;U<m.length&&!((u-=2)<0);++U)d=m.charCodeAt(U),b=d>>8,P=d%256,N.push(P),N.push(b);return N}function kn(m){return t.toByteArray(ee(m))}function Vr(m,u,d,b){let P;for(P=0;P<b&&!(P+d>=u.length||P>=m.length);++P)u[P+d]=m[P];return P}function ot(m,u){return m instanceof u||m!=null&&m.constructor!=null&&m.constructor.name!=null&&m.constructor.name===u.name}function Ar(m){return m!==m}const In=function(){const m="0123456789abcdef",u=new Array(256);for(let d=0;d<16;++d){const b=d*16;for(let P=0;P<16;++P)u[b+P]=m[d]+m[P]}return u}();function ft(m){return typeof BigInt>"u"?Sr:m}function Sr(){throw new Error("BigInt not supported")}})(Zt);var Pi={Array:function(e){return e!=null&&e.constructor===Array},Boolean:function(e){return typeof e=="boolean"},Function:function(e){return typeof e=="function"},Nil:function(e){return e==null},Number:function(e){return typeof e=="number"},Object:function(e){return typeof e=="object"},String:function(e){return typeof e=="string"},"":function(){return!0}};Pi.Null=Pi.Nil;for(var su in Pi)Pi[su].toJSON=(function(e){return e}).bind(null,su);var lc=Pi,Br=lc;function Ld(e){return e.name||e.toString().match(/function (.*?)\s*\(/)[1]}function hc(e){return Br.Nil(e)?"":Ld(e.constructor)}function wb(e){return Br.Function(e)?"":Br.String(e)?JSON.stringify(e):e&&Br.Object(e)?"":e}function pc(e,t){Error.captureStackTrace&&Error.captureStackTrace(e,t)}function xs(e){return Br.Function(e)?e.toJSON?e.toJSON():Ld(e):Br.Array(e)?"Array":e&&Br.Object(e)?"Object":e!==void 0?e:""}function Fd(e,t,r){var n=wb(t);return"Expected "+xs(e)+", got"+(r!==""?" "+r:"")+(n!==""?" "+n:"")}function Kt(e,t,r){r=r||hc(t),this.message=Fd(e,t,r),pc(this,Kt),this.__type=e,this.__value=t,this.__valueTypeName=r}Kt.prototype=Object.create(Error.prototype);Kt.prototype.constructor=Kt;function _b(e,t,r,n,i){var s='" of type ';return t==="key"&&(s='" with key type '),Fd('property "'+xs(r)+s+xs(e),n,i)}function cn(e,t,r,n,i){e?(i=i||hc(n),this.message=_b(e,r,t,n,i)):this.message='Unexpected property "'+t+'"',pc(this,Kt),this.__label=r,this.__property=t,this.__type=e,this.__value=n,this.__valueTypeName=i}cn.prototype=Object.create(Error.prototype);cn.prototype.constructor=Kt;function vb(e,t){return new Kt(e,{},t)}function Eb(e,t,r){return e instanceof cn?(t=t+"."+e.__property,e=new cn(e.__type,t,e.__label,e.__value,e.__valueTypeName)):e instanceof Kt&&(e=new cn(e.__type,t,r,e.__value,e.__valueTypeName)),pc(e),e}var Md={TfTypeError:Kt,TfPropertyTypeError:cn,tfCustomError:vb,tfSubError:Eb,tfJSON:xs,getValueTypeName:hc},Bo,ou;function xb(){if(ou)return Bo;ou=1;var e=lc,t=Md;function r(S){return Buffer.isBuffer(S)}function n(S){return typeof S=="string"&&/^([0-9a-f]{2})+$/i.test(S)}function i(S,L){var $=S.toJSON();function B(W){if(!S(W))return!1;if(W.length===L)return!0;throw t.tfCustomError($+"(Length: "+L+")",$+"(Length: "+W.length+")")}return B.toJSON=function(){return $},B}var s=i.bind(null,e.Array),o=i.bind(null,r),a=i.bind(null,n),c=i.bind(null,e.String);function f(S,L,$){$=$||e.Number;function B(W,R){return $(W,R)&&W>S&&W<L}return B.toJSON=function(){return`${$.toJSON()} between [${S}, ${L}]`},B}var l=Math.pow(2,53)-1;function h(S){return typeof S=="number"&&isFinite(S)}function y(S){return S<<24>>24===S}function p(S){return S<<16>>16===S}function g(S){return(S|0)===S}function _(S){return typeof S=="number"&&S>=-l&&S<=l&&Math.floor(S)===S}function x(S){return(S&255)===S}function k(S){return(S&65535)===S}function T(S){return S>>>0===S}function A(S){return typeof S=="number"&&S>=0&&S<=l&&Math.floor(S)===S}var E={ArrayN:s,Buffer:r,BufferN:o,Finite:h,Hex:n,HexN:a,Int8:y,Int16:p,Int32:g,Int53:_,Range:f,StringN:c,UInt8:x,UInt16:k,UInt32:T,UInt53:A};for(var I in E)E[I].toJSON=(function(S){return S}).bind(null,I);return Bo=E,Bo}var Hi=Md,Me=lc,Ut=Hi.tfJSON,$d=Hi.TfTypeError,Hd=Hi.TfPropertyTypeError,Nn=Hi.tfSubError,Ab=Hi.getValueTypeName,Ht={arrayOf:function(t,r){t=Pt(t),r=r||{};function n(i,s){return!Me.Array(i)||Me.Nil(i)||r.minLength!==void 0&&i.length<r.minLength||r.maxLength!==void 0&&i.length>r.maxLength||r.length!==void 0&&i.length!==r.length?!1:i.every(function(o,a){try{return Qe(t,o,s)}catch(c){throw Nn(c,a)}})}return n.toJSON=function(){var i="["+Ut(t)+"]";return r.length!==void 0?i+="{"+r.length+"}":(r.minLength!==void 0||r.maxLength!==void 0)&&(i+="{"+(r.minLength===void 0?0:r.minLength)+","+(r.maxLength===void 0?1/0:r.maxLength)+"}"),i},n},maybe:function e(t){t=Pt(t);function r(n,i){return Me.Nil(n)||t(n,i,e)}return r.toJSON=function(){return"?"+Ut(t)},r},map:function(t,r){t=Pt(t),r&&(r=Pt(r));function n(i,s){if(!Me.Object(i)||Me.Nil(i))return!1;for(var o in i){try{r&&Qe(r,o,s)}catch(c){throw Nn(c,o,"key")}try{var a=i[o];Qe(t,a,s)}catch(c){throw Nn(c,o)}}return!0}return r?n.toJSON=function(){return"{"+Ut(r)+": "+Ut(t)+"}"}:n.toJSON=function(){return"{"+Ut(t)+"}"},n},object:function(t){var r={};for(var n in t)r[n]=Pt(t[n]);function i(s,o){if(!Me.Object(s)||Me.Nil(s))return!1;var a;try{for(a in r){var c=r[a],f=s[a];Qe(c,f,o)}}catch(l){throw Nn(l,a)}if(o){for(a in s)if(!r[a])throw new Hd(void 0,a)}return!0}return i.toJSON=function(){return Ut(r)},i},anyOf:function(){var t=[].slice.call(arguments).map(Pt);function r(n,i){return t.some(function(s){try{return Qe(s,n,i)}catch{return!1}})}return r.toJSON=function(){return t.map(Ut).join("|")},r},allOf:function(){var t=[].slice.call(arguments).map(Pt);function r(n,i){return t.every(function(s){try{return Qe(s,n,i)}catch{return!1}})}return r.toJSON=function(){return t.map(Ut).join(" & ")},r},quacksLike:function(t){function r(n){return t===Ab(n)}return r.toJSON=function(){return t},r},tuple:function(){var t=[].slice.call(arguments).map(Pt);function r(n,i){return Me.Nil(n)||Me.Nil(n.length)||i&&n.length!==t.length?!1:t.every(function(s,o){try{return Qe(s,n[o],i)}catch(a){throw Nn(a,o)}})}return r.toJSON=function(){return"("+t.map(Ut).join(", ")+")"},r},value:function(t){function r(n){return n===t}return r.toJSON=function(){return t},r}};Ht.oneOf=Ht.anyOf;function Pt(e){if(Me.String(e))return e[0]==="?"?Ht.maybe(e.slice(1)):Me[e]||Ht.quacksLike(e);if(e&&Me.Object(e)){if(Me.Array(e)){if(e.length!==1)throw new TypeError("Expected compile() parameter of type Array of length 1");return Ht.arrayOf(e[0])}return Ht.object(e)}else if(Me.Function(e))return e;return Ht.value(e)}function Qe(e,t,r,n){if(Me.Function(e)){if(e(t,r))return!0;throw new $d(n||e,t)}return Qe(Pt(e),t,r)}for(var pr in Me)Qe[pr]=Me[pr];for(pr in Ht)Qe[pr]=Ht[pr];var au=xb();for(pr in au)Qe[pr]=au[pr];Qe.compile=Pt;Qe.TfTypeError=$d;Qe.TfPropertyTypeError=Hd;var Dd=Qe;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.oneOf=e.Null=e.BufferN=e.Function=e.UInt32=e.UInt8=e.tuple=e.maybe=e.Hex=e.Buffer=e.String=e.Boolean=e.Array=e.Number=e.Hash256bit=e.Hash160bit=e.Buffer256bit=e.isTaptree=e.isTapleaf=e.TAPLEAF_VERSION_MASK=e.Satoshi=e.isPoint=e.stacksEqual=e.typeforce=void 0;const t=Zt;e.typeforce=Dd;const r=t.Buffer.alloc(32,0),n=t.Buffer.from("fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f","hex");function i(l,h){return l.length!==h.length?!1:l.every((y,p)=>y.equals(h[p]))}e.stacksEqual=i;function s(l){if(!t.Buffer.isBuffer(l)||l.length<33)return!1;const h=l[0],y=l.slice(1,33);if(y.compare(r)===0||y.compare(n)>=0)return!1;if((h===2||h===3)&&l.length===33)return!0;const p=l.slice(33);return p.compare(r)===0||p.compare(n)>=0?!1:h===4&&l.length===65}e.isPoint=s;const o=21*1e14;function a(l){return e.typeforce.UInt53(l)&&l<=o}e.Satoshi=a,e.TAPLEAF_VERSION_MASK=254;function c(l){return!l||!("output"in l)||!t.Buffer.isBuffer(l.output)?!1:l.version!==void 0?(l.version&e.TAPLEAF_VERSION_MASK)===l.version:!0}e.isTapleaf=c;function f(l){return(0,e.Array)(l)?l.length!==2?!1:l.every(h=>f(h)):c(l)}e.isTaptree=f,e.Buffer256bit=e.typeforce.BufferN(32),e.Hash160bit=e.typeforce.BufferN(20),e.Hash256bit=e.typeforce.BufferN(32),e.Number=e.typeforce.Number,e.Array=e.typeforce.Array,e.Boolean=e.typeforce.Boolean,e.String=e.typeforce.String,e.Buffer=e.typeforce.Buffer,e.Hex=e.typeforce.Hex,e.maybe=e.typeforce.maybe,e.tuple=e.typeforce.tuple,e.UInt8=e.typeforce.UInt8,e.UInt32=e.typeforce.UInt32,e.Function=e.typeforce.Function,e.BufferN=e.typeforce.BufferN,e.Null=e.typeforce.Null,e.oneOf=e.typeforce.oneOf})(Ve);var Di={},$e={};Object.defineProperty($e,"__esModule",{value:!0});$e.BufferReader=$e.BufferWriter=$e.cloneBuffer=$e.reverseBuffer=$e.writeUInt64LE=$e.readUInt64LE=$e.varuint=void 0;const Cr=Ve,{typeforce:jd}=Cr,Ti=tf;$e.varuint=Ti;function Gd(e,t){if(typeof e!="number")throw new Error("cannot write a non-number as a number");if(e<0)throw new Error("specified a negative value for writing an unsigned value");if(e>t)throw new Error("RangeError: value out of range");if(Math.floor(e)!==e)throw new Error("value has a fractional component")}function zd(e,t){const r=e.readUInt32LE(t);let n=e.readUInt32LE(t+4);return n*=4294967296,Gd(n+r,9007199254740991),n+r}$e.readUInt64LE=zd;function qd(e,t,r){return Gd(t,9007199254740991),e.writeInt32LE(t&-1,r),e.writeUInt32LE(Math.floor(t/4294967296),r+4),r+8}$e.writeUInt64LE=qd;function Sb(e){if(e.length<1)return e;let t=e.length-1,r=0;for(let n=0;n<e.length/2;n++)r=e[n],e[n]=e[t],e[t]=r,t--;return e}$e.reverseBuffer=Sb;function Pb(e){const t=Buffer.allocUnsafe(e.length);return e.copy(t),t}$e.cloneBuffer=Pb;class yc{static withCapacity(t){return new yc(Buffer.alloc(t))}constructor(t,r=0){this.buffer=t,this.offset=r,jd(Cr.tuple(Cr.Buffer,Cr.UInt32),[t,r])}writeUInt8(t){this.offset=this.buffer.writeUInt8(t,this.offset)}writeInt32(t){this.offset=this.buffer.writeInt32LE(t,this.offset)}writeUInt32(t){this.offset=this.buffer.writeUInt32LE(t,this.offset)}writeUInt64(t){this.offset=qd(this.buffer,t,this.offset)}writeVarInt(t){Ti.encode(t,this.buffer,this.offset),this.offset+=Ti.encode.bytes}writeSlice(t){if(this.buffer.length<this.offset+t.length)throw new Error("Cannot write slice out of bounds");this.offset+=t.copy(this.buffer,this.offset)}writeVarSlice(t){this.writeVarInt(t.length),this.writeSlice(t)}writeVector(t){this.writeVarInt(t.length),t.forEach(r=>this.writeVarSlice(r))}end(){if(this.buffer.length===this.offset)return this.buffer;throw new Error(`buffer size ${this.buffer.length}, offset ${this.offset}`)}}$e.BufferWriter=yc;class Tb{constructor(t,r=0){this.buffer=t,this.offset=r,jd(Cr.tuple(Cr.Buffer,Cr.UInt32),[t,r])}readUInt8(){const t=this.buffer.readUInt8(this.offset);return this.offset++,t}readInt32(){const t=this.buffer.readInt32LE(this.offset);return this.offset+=4,t}readUInt32(){const t=this.buffer.readUInt32LE(this.offset);return this.offset+=4,t}readUInt64(){const t=zd(this.buffer,this.offset);return this.offset+=8,t}readVarInt(){const t=Ti.decode(this.buffer,this.offset);return this.offset+=Ti.decode.bytes,t}readSlice(t){if(this.buffer.length<this.offset+t)throw new Error("Cannot read slice out of bounds");const r=this.buffer.slice(this.offset,this.offset+t);return this.offset+=t,r}readVarSlice(){return this.readSlice(this.readVarInt())}readVector(){const t=this.readVarInt(),r=[];for(let n=0;n<t;n++)r.push(this.readVarSlice());return r}}$e.BufferReader=Tb;var vr={},bn={};Object.defineProperty(bn,"__esModule",{value:!0});bn.sha1=bn.SHA1=void 0;const Co=Qt,ls=$i,Un=new Uint32Array([1732584193,4023233417,2562383102,271733878,3285377520]),or=new Uint32Array(80);class Vd extends Co.HashMD{constructor(){super(64,20,8,!1),this.A=Un[0]|0,this.B=Un[1]|0,this.C=Un[2]|0,this.D=Un[3]|0,this.E=Un[4]|0}get(){const{A:t,B:r,C:n,D:i,E:s}=this;return[t,r,n,i,s]}set(t,r,n,i,s){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=s|0}process(t,r){for(let c=0;c<16;c++,r+=4)or[c]=t.getUint32(r,!1);for(let c=16;c<80;c++)or[c]=(0,ls.rotl)(or[c-3]^or[c-8]^or[c-14]^or[c-16],1);let{A:n,B:i,C:s,D:o,E:a}=this;for(let c=0;c<80;c++){let f,l;c<20?(f=(0,Co.Chi)(i,s,o),l=1518500249):c<40?(f=i^s^o,l=1859775393):c<60?(f=(0,Co.Maj)(i,s,o),l=2400959708):(f=i^s^o,l=3395469782);const h=(0,ls.rotl)(n,5)+f+a+l+or[c]|0;a=o,o=s,s=(0,ls.rotl)(i,30),i=n,n=h}n=n+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,this.set(n,i,s,o,a)}roundClean(){or.fill(0)}destroy(){this.set(0,0,0,0,0),this.buffer.fill(0)}}bn.SHA1=Vd;bn.sha1=(0,ls.wrapConstructor)(()=>new Vd);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.taggedHash=e.TAGGED_HASH_PREFIXES=e.TAGS=e.hash256=e.hash160=e.sha256=e.sha1=e.ripemd160=void 0;const t=mn,r=bn,n=Gt;function i(l){return Buffer.from((0,t.ripemd160)(Uint8Array.from(l)))}e.ripemd160=i;function s(l){return Buffer.from((0,r.sha1)(Uint8Array.from(l)))}e.sha1=s;function o(l){return Buffer.from((0,n.sha256)(Uint8Array.from(l)))}e.sha256=o;function a(l){return Buffer.from((0,t.ripemd160)((0,n.sha256)(Uint8Array.from(l))))}e.hash160=a;function c(l){return Buffer.from((0,n.sha256)((0,n.sha256)(Uint8Array.from(l))))}e.hash256=c,e.TAGS=["BIP0340/challenge","BIP0340/aux","BIP0340/nonce","TapLeaf","TapBranch","TapSighash","TapTweak","KeyAgg list","KeyAgg coefficient"],e.TAGGED_HASH_PREFIXES={"BIP0340/challenge":Buffer.from([123,181,45,122,159,239,88,50,62,177,191,122,64,125,179,130,210,243,242,216,27,177,34,79,73,254,81,143,109,72,211,124,123,181,45,122,159,239,88,50,62,177,191,122,64,125,179,130,210,243,242,216,27,177,34,79,73,254,81,143,109,72,211,124]),"BIP0340/aux":Buffer.from([241,239,78,94,192,99,202,218,109,148,202,250,157,152,126,160,105,38,88,57,236,193,31,151,45,119,165,46,216,193,204,144,241,239,78,94,192,99,202,218,109,148,202,250,157,152,126,160,105,38,88,57,236,193,31,151,45,119,165,46,216,193,204,144]),"BIP0340/nonce":Buffer.from([7,73,119,52,167,155,203,53,91,155,140,125,3,79,18,28,244,52,215,62,247,45,218,25,135,0,97,251,82,191,235,47,7,73,119,52,167,155,203,53,91,155,140,125,3,79,18,28,244,52,215,62,247,45,218,25,135,0,97,251,82,191,235,47]),TapLeaf:Buffer.from([174,234,143,220,66,8,152,49,5,115,75,88,8,29,30,38,56,211,95,28,181,64,8,212,211,87,202,3,190,120,233,238,174,234,143,220,66,8,152,49,5,115,75,88,8,29,30,38,56,211,95,28,181,64,8,212,211,87,202,3,190,120,233,238]),TapBranch:Buffer.from([25,65,161,242,229,110,185,95,162,169,241,148,190,92,1,247,33,111,51,237,130,176,145,70,52,144,208,91,245,22,160,21,25,65,161,242,229,110,185,95,162,169,241,148,190,92,1,247,33,111,51,237,130,176,145,70,52,144,208,91,245,22,160,21]),TapSighash:Buffer.from([244,10,72,223,75,42,112,200,180,146,75,242,101,70,97,237,61,149,253,102,163,19,235,135,35,117,151,198,40,228,160,49,244,10,72,223,75,42,112,200,180,146,75,242,101,70,97,237,61,149,253,102,163,19,235,135,35,117,151,198,40,228,160,49]),TapTweak:Buffer.from([232,15,225,99,156,156,160,80,227,175,27,57,193,67,198,62,66,156,188,235,21,217,64,251,181,197,161,244,175,87,197,233,232,15,225,99,156,156,160,80,227,175,27,57,193,67,198,62,66,156,188,235,21,217,64,251,181,197,161,244,175,87,197,233]),"KeyAgg list":Buffer.from([72,28,151,28,60,11,70,215,240,178,117,174,89,141,78,44,126,215,49,156,89,74,92,110,199,158,160,212,153,2,148,240,72,28,151,28,60,11,70,215,240,178,117,174,89,141,78,44,126,215,49,156,89,74,92,110,199,158,160,212,153,2,148,240]),"KeyAgg coefficient":Buffer.from([191,201,4,3,77,28,136,232,200,14,34,229,61,36,86,109,100,130,78,214,66,114,129,192,145,0,249,77,205,82,201,129,191,201,4,3,77,28,136,232,200,14,34,229,61,36,86,109,100,130,78,214,66,114,129,192,145,0,249,77,205,82,201,129])};function f(l,h){return o(Buffer.concat([e.TAGGED_HASH_PREFIXES[l],h]))}e.taggedHash=f})(vr);var Oo={},zt={};Object.defineProperty(zt,"__esModule",{value:!0});zt.encode=zt.decode=zt.check=void 0;function kb(e){if(e.length<8||e.length>72||e[0]!==48||e[1]!==e.length-2||e[2]!==2)return!1;const t=e[3];if(t===0||5+t>=e.length||e[4+t]!==2)return!1;const r=e[5+t];return!(r===0||6+t+r!==e.length||e[4]&128||t>1&&e[4]===0&&!(e[5]&128)||e[t+6]&128||r>1&&e[t+6]===0&&!(e[t+7]&128))}zt.check=kb;function Ib(e){if(e.length<8)throw new Error("DER sequence length is too short");if(e.length>72)throw new Error("DER sequence length is too long");if(e[0]!==48)throw new Error("Expected DER sequence");if(e[1]!==e.length-2)throw new Error("DER sequence length is invalid");if(e[2]!==2)throw new Error("Expected DER integer");const t=e[3];if(t===0)throw new Error("R length is zero");if(5+t>=e.length)throw new Error("R length is too long");if(e[4+t]!==2)throw new Error("Expected DER integer (2)");const r=e[5+t];if(r===0)throw new Error("S length is zero");if(6+t+r!==e.length)throw new Error("S length is invalid");if(e[4]&128)throw new Error("R value is negative");if(t>1&&e[4]===0&&!(e[5]&128))throw new Error("R value excessively padded");if(e[t+6]&128)throw new Error("S value is negative");if(r>1&&e[t+6]===0&&!(e[t+7]&128))throw new Error("S value excessively padded");return{r:e.slice(4,4+t),s:e.slice(6+t)}}zt.decode=Ib;function Bb(e,t){const r=e.length,n=t.length;if(r===0)throw new Error("R length is zero");if(n===0)throw new Error("S length is zero");if(r>33)throw new Error("R length is too long");if(n>33)throw new Error("S length is too long");if(e[0]&128)throw new Error("R value is negative");if(t[0]&128)throw new Error("S value is negative");if(r>1&&e[0]===0&&!(e[1]&128))throw new Error("R value excessively padded");if(n>1&&t[0]===0&&!(t[1]&128))throw new Error("S value excessively padded");const i=Buffer.allocUnsafe(6+r+n);return i[0]=48,i[1]=i.length-2,i[2]=2,i[3]=e.length,e.copy(i,4),i[4+r]=2,i[5+r]=t.length,t.copy(i,6+r),i}zt.encode=Bb;var Mr={};Object.defineProperty(Mr,"__esModule",{value:!0});Mr.REVERSE_OPS=Mr.OPS=void 0;const va={OP_FALSE:0,OP_0:0,OP_PUSHDATA1:76,OP_PUSHDATA2:77,OP_PUSHDATA4:78,OP_1NEGATE:79,OP_RESERVED:80,OP_TRUE:81,OP_1:81,OP_2:82,OP_3:83,OP_4:84,OP_5:85,OP_6:86,OP_7:87,OP_8:88,OP_9:89,OP_10:90,OP_11:91,OP_12:92,OP_13:93,OP_14:94,OP_15:95,OP_16:96,OP_NOP:97,OP_VER:98,OP_IF:99,OP_NOTIF:100,OP_VERIF:101,OP_VERNOTIF:102,OP_ELSE:103,OP_ENDIF:104,OP_VERIFY:105,OP_RETURN:106,OP_TOALTSTACK:107,OP_FROMALTSTACK:108,OP_2DROP:109,OP_2DUP:110,OP_3DUP:111,OP_2OVER:112,OP_2ROT:113,OP_2SWAP:114,OP_IFDUP:115,OP_DEPTH:116,OP_DROP:117,OP_DUP:118,OP_NIP:119,OP_OVER:120,OP_PICK:121,OP_ROLL:122,OP_ROT:123,OP_SWAP:124,OP_TUCK:125,OP_CAT:126,OP_SUBSTR:127,OP_LEFT:128,OP_RIGHT:129,OP_SIZE:130,OP_INVERT:131,OP_AND:132,OP_OR:133,OP_XOR:134,OP_EQUAL:135,OP_EQUALVERIFY:136,OP_RESERVED1:137,OP_RESERVED2:138,OP_1ADD:139,OP_1SUB:140,OP_2MUL:141,OP_2DIV:142,OP_NEGATE:143,OP_ABS:144,OP_NOT:145,OP_0NOTEQUAL:146,OP_ADD:147,OP_SUB:148,OP_MUL:149,OP_DIV:150,OP_MOD:151,OP_LSHIFT:152,OP_RSHIFT:153,OP_BOOLAND:154,OP_BOOLOR:155,OP_NUMEQUAL:156,OP_NUMEQUALVERIFY:157,OP_NUMNOTEQUAL:158,OP_LESSTHAN:159,OP_GREATERTHAN:160,OP_LESSTHANOREQUAL:161,OP_GREATERTHANOREQUAL:162,OP_MIN:163,OP_MAX:164,OP_WITHIN:165,OP_RIPEMD160:166,OP_SHA1:167,OP_SHA256:168,OP_HASH160:169,OP_HASH256:170,OP_CODESEPARATOR:171,OP_CHECKSIG:172,OP_CHECKSIGVERIFY:173,OP_CHECKMULTISIG:174,OP_CHECKMULTISIGVERIFY:175,OP_NOP1:176,OP_NOP2:177,OP_CHECKLOCKTIMEVERIFY:177,OP_NOP3:178,OP_CHECKSEQUENCEVERIFY:178,OP_NOP4:179,OP_NOP5:180,OP_NOP6:181,OP_NOP7:182,OP_NOP8:183,OP_NOP9:184,OP_NOP10:185,OP_CHECKSIGADD:186,OP_PUBKEYHASH:253,OP_PUBKEY:254,OP_INVALIDOPCODE:255};Mr.OPS=va;const Wd={};Mr.REVERSE_OPS=Wd;for(const e of Object.keys(va)){const t=va[e];Wd[t]=e}var yr={};Object.defineProperty(yr,"__esModule",{value:!0});yr.decode=yr.encode=yr.encodingLength=void 0;const lr=Mr;function Kd(e){return e<lr.OPS.OP_PUSHDATA1?1:e<=255?2:e<=65535?3:5}yr.encodingLength=Kd;function Cb(e,t,r){const n=Kd(t);return n===1?e.writeUInt8(t,r):n===2?(e.writeUInt8(lr.OPS.OP_PUSHDATA1,r),e.writeUInt8(t,r+1)):n===3?(e.writeUInt8(lr.OPS.OP_PUSHDATA2,r),e.writeUInt16LE(t,r+1)):(e.writeUInt8(lr.OPS.OP_PUSHDATA4,r),e.writeUInt32LE(t,r+1)),n}yr.encode=Cb;function Ob(e,t){const r=e.readUInt8(t);let n,i;if(r<lr.OPS.OP_PUSHDATA1)n=r,i=1;else if(r===lr.OPS.OP_PUSHDATA1){if(t+2>e.length)return null;n=e.readUInt8(t+1),i=2}else if(r===lr.OPS.OP_PUSHDATA2){if(t+3>e.length)return null;n=e.readUInt16LE(t+1),i=3}else{if(t+5>e.length)return null;if(r!==lr.OPS.OP_PUSHDATA4)throw new Error("Unexpected opcode");n=e.readUInt32LE(t+1),i=5}return{opcode:r,number:n,size:i}}yr.decode=Ob;var gn={};Object.defineProperty(gn,"__esModule",{value:!0});gn.encode=gn.decode=void 0;function Rb(e,t,r){t=t||4,r=r===void 0?!0:r;const n=e.length;if(n===0)return 0;if(n>t)throw new TypeError("Script number overflow");if(r&&!(e[n-1]&127)&&(n<=1||!(e[n-2]&128)))throw new Error("Non-minimally encoded script number");if(n===5){const s=e.readUInt32LE(0),o=e.readUInt8(4);return o&128?-((o&-129)*4294967296+s):o*4294967296+s}let i=0;for(let s=0;s<n;++s)i|=e[s]<<8*s;return e[n-1]&128?-(i&~(128<<8*(n-1))):i}gn.decode=Rb;function Nb(e){return e>2147483647?5:e>8388607?4:e>32767?3:e>127?2:e>0?1:0}function Ub(e){let t=Math.abs(e);const r=Nb(t),n=Buffer.allocUnsafe(r),i=e<0;for(let s=0;s<r;++s)n.writeUInt8(t&255,s),t>>=8;return n[r-1]&128?n.writeUInt8(i?128:0,r-1):i&&(n[r-1]|=128),n}gn.encode=Ub;var Tr={},cu;function Lb(){if(cu)return Tr;cu=1,Object.defineProperty(Tr,"__esModule",{value:!0}),Tr.encode=Tr.decode=void 0;const e=zt,t=ut(),r=Ve,{typeforce:n}=r,i=Buffer.alloc(1,0);function s(f){let l=0;for(;f[l]===0;)++l;return l===f.length?i:(f=f.slice(l),f[0]&128?Buffer.concat([i,f],1+f.length):f)}function o(f){f[0]===0&&(f=f.slice(1));const l=Buffer.alloc(32,0),h=Math.max(0,32-f.length);return f.copy(l,h),l}function a(f){const l=f.readUInt8(f.length-1);if(!(0,t.isDefinedHashType)(l))throw new Error("Invalid hashType "+l);const h=e.decode(f.slice(0,-1)),y=o(h.r),p=o(h.s);return{signature:Buffer.concat([y,p],64),hashType:l}}Tr.decode=a;function c(f,l){if(n({signature:r.BufferN(64),hashType:r.UInt8},{signature:f,hashType:l}),!(0,t.isDefinedHashType)(l))throw new Error("Invalid hashType "+l);const h=Buffer.allocUnsafe(1);h.writeUInt8(l,0);const y=s(f.slice(0,32)),p=s(f.slice(32,64));return Buffer.concat([e.encode(y,p),h])}return Tr.encode=c,Tr}var uu;function ut(){return uu||(uu=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.signature=e.number=e.isCanonicalScriptSignature=e.isDefinedHashType=e.isCanonicalPubKey=e.toStack=e.fromASM=e.toASM=e.decompile=e.compile=e.countNonPushOnlyOPs=e.isPushOnly=e.OPS=void 0;const t=zt,r=Mr;Object.defineProperty(e,"OPS",{enumerable:!0,get:function(){return r.OPS}});const n=yr,i=gn,s=Lb(),o=Ve,{typeforce:a}=o,c=r.OPS.OP_RESERVED;function f(B){return o.Number(B)&&(B===r.OPS.OP_0||B>=r.OPS.OP_1&&B<=r.OPS.OP_16||B===r.OPS.OP_1NEGATE)}function l(B){return o.Buffer(B)||f(B)}function h(B){return o.Array(B)&&B.every(l)}e.isPushOnly=h;function y(B){return B.length-B.filter(l).length}e.countNonPushOnlyOPs=y;function p(B){if(B.length===0)return r.OPS.OP_0;if(B.length===1){if(B[0]>=1&&B[0]<=16)return c+B[0];if(B[0]===129)return r.OPS.OP_1NEGATE}}function g(B){return Buffer.isBuffer(B)}function _(B){return o.Array(B)}function x(B){return Buffer.isBuffer(B)}function k(B){if(g(B))return B;a(o.Array,B);const W=B.reduce((j,V)=>x(V)?V.length===1&&p(V)!==void 0?j+1:j+n.encodingLength(V.length)+V.length:j+1,0),R=Buffer.allocUnsafe(W);let D=0;if(B.forEach(j=>{if(x(j)){const V=p(j);if(V!==void 0){R.writeUInt8(V,D),D+=1;return}D+=n.encode(R,j.length,D),j.copy(R,D),D+=j.length}else R.writeUInt8(j,D),D+=1}),D!==R.length)throw new Error("Could not decode chunks");return R}e.compile=k;function T(B){if(_(B))return B;a(o.Buffer,B);const W=[];let R=0;for(;R<B.length;){const D=B[R];if(D>r.OPS.OP_0&&D<=r.OPS.OP_PUSHDATA4){const j=n.decode(B,R);if(j===null||(R+=j.size,R+j.number>B.length))return null;const V=B.slice(R,R+j.number);R+=j.number;const X=p(V);X!==void 0?W.push(X):W.push(V)}else W.push(D),R+=1}return W}e.decompile=T;function A(B){if(g(B)&&(B=T(B)),!B)throw new Error("Could not convert invalid chunks to ASM");return B.map(W=>{if(x(W)){const R=p(W);if(R===void 0)return W.toString("hex");W=R}return r.REVERSE_OPS[W]}).join(" ")}e.toASM=A;function E(B){return a(o.String,B),k(B.split(" ").map(W=>r.OPS[W]!==void 0?r.OPS[W]:(a(o.Hex,W),Buffer.from(W,"hex"))))}e.fromASM=E;function I(B){return B=T(B),a(h,B),B.map(W=>x(W)?W:W===r.OPS.OP_0?Buffer.allocUnsafe(0):i.encode(W-c))}e.toStack=I;function S(B){return o.isPoint(B)}e.isCanonicalPubKey=S;function L(B){const W=B&-129;return W>0&&W<4}e.isDefinedHashType=L;function $(B){return!Buffer.isBuffer(B)||!L(B[B.length-1])?!1:t.check(B.slice(0,-1))}e.isCanonicalScriptSignature=$,e.number=i,e.signature=s}(Oo)),Oo}Object.defineProperty(Di,"__esModule",{value:!0});Di.Transaction=void 0;const Be=$e,Ke=vr,fu=ut(),Fb=ut(),se=Ve,{typeforce:vt}=se;function At(e){const t=e.length;return Be.varuint.encodingLength(t)+t}function Mb(e){const t=e.length;return Be.varuint.encodingLength(t)+e.reduce((r,n)=>r+At(n),0)}const dr=Buffer.allocUnsafe(0),Ro=[],No=Buffer.from("0000000000000000000000000000000000000000000000000000000000000000","hex"),du=Buffer.from("0000000000000000000000000000000000000000000000000000000000000001","hex"),$b=Buffer.from("ffffffffffffffff","hex"),Hb={script:dr,valueBuffer:$b};function Db(e){return e.value!==void 0}class te{constructor(){this.version=1,this.locktime=0,this.ins=[],this.outs=[]}static fromBuffer(t,r){const n=new Be.BufferReader(t),i=new te;i.version=n.readInt32();const s=n.readUInt8(),o=n.readUInt8();let a=!1;s===te.ADVANCED_TRANSACTION_MARKER&&o===te.ADVANCED_TRANSACTION_FLAG?a=!0:n.offset-=2;const c=n.readVarInt();for(let l=0;l<c;++l)i.ins.push({hash:n.readSlice(32),index:n.readUInt32(),script:n.readVarSlice(),sequence:n.readUInt32(),witness:Ro});const f=n.readVarInt();for(let l=0;l<f;++l)i.outs.push({value:n.readUInt64(),script:n.readVarSlice()});if(a){for(let l=0;l<c;++l)i.ins[l].witness=n.readVector();if(!i.hasWitnesses())throw new Error("Transaction has superfluous witness data")}if(i.locktime=n.readUInt32(),r)return i;if(n.offset!==t.length)throw new Error("Transaction has unexpected data");return i}static fromHex(t){return te.fromBuffer(Buffer.from(t,"hex"),!1)}static isCoinbaseHash(t){vt(se.Hash256bit,t);for(let r=0;r<32;++r)if(t[r]!==0)return!1;return!0}isCoinbase(){return this.ins.length===1&&te.isCoinbaseHash(this.ins[0].hash)}addInput(t,r,n,i){return vt(se.tuple(se.Hash256bit,se.UInt32,se.maybe(se.UInt32),se.maybe(se.Buffer)),arguments),se.Null(n)&&(n=te.DEFAULT_SEQUENCE),this.ins.push({hash:t,index:r,script:i||dr,sequence:n,witness:Ro})-1}addOutput(t,r){return vt(se.tuple(se.Buffer,se.Satoshi),arguments),this.outs.push({script:t,value:r})-1}hasWitnesses(){return this.ins.some(t=>t.witness.length!==0)}stripWitnesses(){this.ins.forEach(t=>{t.witness=Ro})}weight(){const t=this.byteLength(!1),r=this.byteLength(!0);return t*3+r}virtualSize(){return Math.ceil(this.weight()/4)}byteLength(t=!0){const r=t&&this.hasWitnesses();return(r?10:8)+Be.varuint.encodingLength(this.ins.length)+Be.varuint.encodingLength(this.outs.length)+this.ins.reduce((n,i)=>n+40+At(i.script),0)+this.outs.reduce((n,i)=>n+8+At(i.script),0)+(r?this.ins.reduce((n,i)=>n+Mb(i.witness),0):0)}clone(){const t=new te;return t.version=this.version,t.locktime=this.locktime,t.ins=this.ins.map(r=>({hash:r.hash,index:r.index,script:r.script,sequence:r.sequence,witness:r.witness})),t.outs=this.outs.map(r=>({script:r.script,value:r.value})),t}hashForSignature(t,r,n){if(vt(se.tuple(se.UInt32,se.Buffer,se.Number),arguments),t>=this.ins.length)return du;const i=fu.compile(fu.decompile(r).filter(a=>a!==Fb.OPS.OP_CODESEPARATOR)),s=this.clone();if((n&31)===te.SIGHASH_NONE)s.outs=[],s.ins.forEach((a,c)=>{c!==t&&(a.sequence=0)});else if((n&31)===te.SIGHASH_SINGLE){if(t>=this.outs.length)return du;s.outs.length=t+1;for(let a=0;a<t;a++)s.outs[a]=Hb;s.ins.forEach((a,c)=>{c!==t&&(a.sequence=0)})}n&te.SIGHASH_ANYONECANPAY?(s.ins=[s.ins[t]],s.ins[0].script=i):(s.ins.forEach(a=>{a.script=dr}),s.ins[t].script=i);const o=Buffer.allocUnsafe(s.byteLength(!1)+4);return o.writeInt32LE(n,o.length-4),s.__toBuffer(o,0,!1),Ke.hash256(o)}hashForWitnessV1(t,r,n,i,s,o){if(vt(se.tuple(se.UInt32,vt.arrayOf(se.Buffer),vt.arrayOf(se.Satoshi),se.UInt32),arguments),n.length!==this.ins.length||r.length!==this.ins.length)throw new Error("Must supply prevout script and value for all inputs");const a=i===te.SIGHASH_DEFAULT?te.SIGHASH_ALL:i&te.SIGHASH_OUTPUT_MASK,f=(i&te.SIGHASH_INPUT_MASK)===te.SIGHASH_ANYONECANPAY,l=a===te.SIGHASH_NONE,h=a===te.SIGHASH_SINGLE;let y=dr,p=dr,g=dr,_=dr,x=dr;if(!f){let E=Be.BufferWriter.withCapacity(36*this.ins.length);this.ins.forEach(I=>{E.writeSlice(I.hash),E.writeUInt32(I.index)}),y=Ke.sha256(E.end()),E=Be.BufferWriter.withCapacity(8*this.ins.length),n.forEach(I=>E.writeUInt64(I)),p=Ke.sha256(E.end()),E=Be.BufferWriter.withCapacity(r.map(At).reduce((I,S)=>I+S)),r.forEach(I=>E.writeVarSlice(I)),g=Ke.sha256(E.end()),E=Be.BufferWriter.withCapacity(4*this.ins.length),this.ins.forEach(I=>E.writeUInt32(I.sequence)),_=Ke.sha256(E.end())}if(l||h){if(h&&t<this.outs.length){const E=this.outs[t],I=Be.BufferWriter.withCapacity(8+At(E.script));I.writeUInt64(E.value),I.writeVarSlice(E.script),x=Ke.sha256(I.end())}}else{const E=this.outs.map(S=>8+At(S.script)).reduce((S,L)=>S+L),I=Be.BufferWriter.withCapacity(E);this.outs.forEach(S=>{I.writeUInt64(S.value),I.writeVarSlice(S.script)}),x=Ke.sha256(I.end())}const k=(s?2:0)+(o?1:0),T=174-(f?49:0)-(l?32:0)+(o?32:0)+(s?37:0),A=Be.BufferWriter.withCapacity(T);if(A.writeUInt8(i),A.writeInt32(this.version),A.writeUInt32(this.locktime),A.writeSlice(y),A.writeSlice(p),A.writeSlice(g),A.writeSlice(_),l||h||A.writeSlice(x),A.writeUInt8(k),f){const E=this.ins[t];A.writeSlice(E.hash),A.writeUInt32(E.index),A.writeUInt64(n[t]),A.writeVarSlice(r[t]),A.writeUInt32(E.sequence)}else A.writeUInt32(t);if(o){const E=Be.BufferWriter.withCapacity(At(o));E.writeVarSlice(o),A.writeSlice(Ke.sha256(E.end()))}return h&&A.writeSlice(x),s&&(A.writeSlice(s),A.writeUInt8(0),A.writeUInt32(4294967295)),Ke.taggedHash("TapSighash",Buffer.concat([Buffer.from([0]),A.end()]))}hashForWitnessV0(t,r,n,i){vt(se.tuple(se.UInt32,se.Buffer,se.Satoshi,se.UInt32),arguments);let s=Buffer.from([]),o,a=No,c=No,f=No;if(i&te.SIGHASH_ANYONECANPAY||(s=Buffer.allocUnsafe(36*this.ins.length),o=new Be.BufferWriter(s,0),this.ins.forEach(h=>{o.writeSlice(h.hash),o.writeUInt32(h.index)}),c=Ke.hash256(s)),!(i&te.SIGHASH_ANYONECANPAY)&&(i&31)!==te.SIGHASH_SINGLE&&(i&31)!==te.SIGHASH_NONE&&(s=Buffer.allocUnsafe(4*this.ins.length),o=new Be.BufferWriter(s,0),this.ins.forEach(h=>{o.writeUInt32(h.sequence)}),f=Ke.hash256(s)),(i&31)!==te.SIGHASH_SINGLE&&(i&31)!==te.SIGHASH_NONE){const h=this.outs.reduce((y,p)=>y+8+At(p.script),0);s=Buffer.allocUnsafe(h),o=new Be.BufferWriter(s,0),this.outs.forEach(y=>{o.writeUInt64(y.value),o.writeVarSlice(y.script)}),a=Ke.hash256(s)}else if((i&31)===te.SIGHASH_SINGLE&&t<this.outs.length){const h=this.outs[t];s=Buffer.allocUnsafe(8+At(h.script)),o=new Be.BufferWriter(s,0),o.writeUInt64(h.value),o.writeVarSlice(h.script),a=Ke.hash256(s)}s=Buffer.allocUnsafe(156+At(r)),o=new Be.BufferWriter(s,0);const l=this.ins[t];return o.writeInt32(this.version),o.writeSlice(c),o.writeSlice(f),o.writeSlice(l.hash),o.writeUInt32(l.index),o.writeVarSlice(r),o.writeUInt64(n),o.writeUInt32(l.sequence),o.writeSlice(a),o.writeUInt32(this.locktime),o.writeUInt32(i),Ke.hash256(s)}getHash(t){return t&&this.isCoinbase()?Buffer.alloc(32,0):Ke.hash256(this.__toBuffer(void 0,void 0,t))}getId(){return(0,Be.reverseBuffer)(this.getHash(!1)).toString("hex")}toBuffer(t,r){return this.__toBuffer(t,r,!0)}toHex(){return this.toBuffer(void 0,void 0).toString("hex")}setInputScript(t,r){vt(se.tuple(se.Number,se.Buffer),arguments),this.ins[t].script=r}setWitness(t,r){vt(se.tuple(se.Number,[se.Buffer]),arguments),this.ins[t].witness=r}__toBuffer(t,r,n=!1){t||(t=Buffer.allocUnsafe(this.byteLength(n)));const i=new Be.BufferWriter(t,r||0);i.writeInt32(this.version);const s=n&&this.hasWitnesses();return s&&(i.writeUInt8(te.ADVANCED_TRANSACTION_MARKER),i.writeUInt8(te.ADVANCED_TRANSACTION_FLAG)),i.writeVarInt(this.ins.length),this.ins.forEach(o=>{i.writeSlice(o.hash),i.writeUInt32(o.index),i.writeVarSlice(o.script),i.writeUInt32(o.sequence)}),i.writeVarInt(this.outs.length),this.outs.forEach(o=>{Db(o)?i.writeUInt64(o.value):i.writeSlice(o.valueBuffer),i.writeVarSlice(o.script)}),s&&this.ins.forEach(o=>{i.writeVector(o.witness)}),i.writeUInt32(this.locktime),r!==void 0?t.slice(r,i.offset):t}}Di.Transaction=te;te.DEFAULT_SEQUENCE=4294967295;te.SIGHASH_DEFAULT=0;te.SIGHASH_ALL=1;te.SIGHASH_NONE=2;te.SIGHASH_SINGLE=3;te.SIGHASH_ANYONECANPAY=128;te.SIGHASH_OUTPUT_MASK=3;te.SIGHASH_INPUT_MASK=128;te.ADVANCED_TRANSACTION_MARKER=0;te.ADVANCED_TRANSACTION_FLAG=1;var le={},ji={};Object.defineProperty(ji,"__esModule",{value:!0});const jb=9007199254740991;function mc(e){if(e<0||e>jb||e%1!==0)throw new RangeError("value out of range")}function Kn(e,t,r){if(mc(e),t||(t=Buffer.allocUnsafe(Yd(e))),!Buffer.isBuffer(t))throw new TypeError("buffer must be a Buffer instance");return r||(r=0),e<253?(t.writeUInt8(e,r),Object.assign(Kn,{bytes:1})):e<=65535?(t.writeUInt8(253,r),t.writeUInt16LE(e,r+1),Object.assign(Kn,{bytes:3})):e<=4294967295?(t.writeUInt8(254,r),t.writeUInt32LE(e,r+1),Object.assign(Kn,{bytes:5})):(t.writeUInt8(255,r),t.writeUInt32LE(e>>>0,r+1),t.writeUInt32LE(e/4294967296|0,r+5),Object.assign(Kn,{bytes:9})),t}ji.encode=Kn;function Yn(e,t){if(!Buffer.isBuffer(e))throw new TypeError("buffer must be a Buffer instance");t||(t=0);const r=e.readUInt8(t);if(r<253)return Object.assign(Yn,{bytes:1}),r;if(r===253)return Object.assign(Yn,{bytes:3}),e.readUInt16LE(t+1);if(r===254)return Object.assign(Yn,{bytes:5}),e.readUInt32LE(t+1);{Object.assign(Yn,{bytes:9});const n=e.readUInt32LE(t+1),s=e.readUInt32LE(t+5)*4294967296+n;return mc(s),s}}ji.decode=Yn;function Yd(e){return mc(e),e<253?1:e<=65535?3:e<=4294967295?5:9}ji.encodingLength=Yd;var Uo={},Vs={},qe={};Object.defineProperty(qe,"__esModule",{value:!0});qe.testnet=qe.regtest=qe.bitcoin=void 0;qe.bitcoin={messagePrefix:`Bitcoin Signed Message:
|
|
47
|
+
`,bech32:"bc",bip32:{public:76067358,private:76066276},pubKeyHash:0,scriptHash:5,wif:128};qe.regtest={messagePrefix:`Bitcoin Signed Message:
|
|
48
|
+
`,bech32:"bcrt",bip32:{public:70617039,private:70615956},pubKeyHash:111,scriptHash:196,wif:239};qe.testnet={messagePrefix:`Bitcoin Signed Message:
|
|
49
|
+
`,bech32:"tb",bip32:{public:70617039,private:70615956},pubKeyHash:111,scriptHash:196,wif:239};var at={};Object.defineProperty(at,"__esModule",{value:!0});at.value=at.prop=void 0;function Gb(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get(){const n=r.call(this);return this[t]=n,n},set(n){Object.defineProperty(this,t,{configurable:!0,enumerable:!0,value:n,writable:!0})}})}at.prop=Gb;function zb(e){let t;return()=>(t!==void 0||(t=e()),t)}at.value=zb;Object.defineProperty(Vs,"__esModule",{value:!0});Vs.p2data=void 0;const qb=qe,hs=ut(),Et=Ve,lu=at,hu=hs.OPS;function Vb(e,t){if(!e.data&&!e.output)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,Et.typeforce)({network:Et.typeforce.maybe(Et.typeforce.Object),output:Et.typeforce.maybe(Et.typeforce.Buffer),data:Et.typeforce.maybe(Et.typeforce.arrayOf(Et.typeforce.Buffer))},e);const n={name:"embed",network:e.network||qb.bitcoin};if(lu.prop(n,"output",()=>{if(e.data)return hs.compile([hu.OP_RETURN].concat(e.data))}),lu.prop(n,"data",()=>{if(e.output)return hs.decompile(e.output).slice(1)}),t.validate&&e.output){const i=hs.decompile(e.output);if(i[0]!==hu.OP_RETURN)throw new TypeError("Output is invalid");if(!i.slice(1).every(Et.typeforce.Buffer))throw new TypeError("Output is invalid");if(e.data&&!(0,Et.stacksEqual)(e.data,n.data))throw new TypeError("Data mismatch")}return Object.assign(n,e)}Vs.p2data=Vb;var Ws={};Object.defineProperty(Ws,"__esModule",{value:!0});Ws.p2ms=void 0;const Wb=qe,Qr=ut(),ke=Ve,ar=at,Zr=Qr.OPS,ts=Zr.OP_RESERVED;function Kb(e,t){if(!e.input&&!e.output&&!(e.pubkeys&&e.m!==void 0)&&!e.signatures)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{});function r(c){return Qr.isCanonicalScriptSignature(c)||(t.allowIncomplete&&c===Zr.OP_0)!==void 0}(0,ke.typeforce)({network:ke.typeforce.maybe(ke.typeforce.Object),m:ke.typeforce.maybe(ke.typeforce.Number),n:ke.typeforce.maybe(ke.typeforce.Number),output:ke.typeforce.maybe(ke.typeforce.Buffer),pubkeys:ke.typeforce.maybe(ke.typeforce.arrayOf(ke.isPoint)),signatures:ke.typeforce.maybe(ke.typeforce.arrayOf(r)),input:ke.typeforce.maybe(ke.typeforce.Buffer)},e);const i={network:e.network||Wb.bitcoin};let s=[],o=!1;function a(c){o||(o=!0,s=Qr.decompile(c),i.m=s[0]-ts,i.n=s[s.length-2]-ts,i.pubkeys=s.slice(1,-2))}if(ar.prop(i,"output",()=>{if(e.m&&i.n&&e.pubkeys)return Qr.compile([].concat(ts+e.m,e.pubkeys,ts+i.n,Zr.OP_CHECKMULTISIG))}),ar.prop(i,"m",()=>{if(i.output)return a(i.output),i.m}),ar.prop(i,"n",()=>{if(i.pubkeys)return i.pubkeys.length}),ar.prop(i,"pubkeys",()=>{if(e.output)return a(e.output),i.pubkeys}),ar.prop(i,"signatures",()=>{if(e.input)return Qr.decompile(e.input).slice(1)}),ar.prop(i,"input",()=>{if(e.signatures)return Qr.compile([Zr.OP_0].concat(e.signatures))}),ar.prop(i,"witness",()=>{if(i.input)return[]}),ar.prop(i,"name",()=>{if(!(!i.m||!i.n))return`p2ms(${i.m} of ${i.n})`}),t.validate){if(e.output){if(a(e.output),!ke.typeforce.Number(s[0]))throw new TypeError("Output is invalid");if(!ke.typeforce.Number(s[s.length-2]))throw new TypeError("Output is invalid");if(s[s.length-1]!==Zr.OP_CHECKMULTISIG)throw new TypeError("Output is invalid");if(i.m<=0||i.n>16||i.m>i.n||i.n!==s.length-3)throw new TypeError("Output is invalid");if(!i.pubkeys.every(c=>(0,ke.isPoint)(c)))throw new TypeError("Output is invalid");if(e.m!==void 0&&e.m!==i.m)throw new TypeError("m mismatch");if(e.n!==void 0&&e.n!==i.n)throw new TypeError("n mismatch");if(e.pubkeys&&!(0,ke.stacksEqual)(e.pubkeys,i.pubkeys))throw new TypeError("Pubkeys mismatch")}if(e.pubkeys){if(e.n!==void 0&&e.n!==e.pubkeys.length)throw new TypeError("Pubkey count mismatch");if(i.n=e.pubkeys.length,i.n<i.m)throw new TypeError("Pubkey count cannot be less than m")}if(e.signatures){if(e.signatures.length<i.m)throw new TypeError("Not enough signatures provided");if(e.signatures.length>i.m)throw new TypeError("Too many signatures provided")}if(e.input){if(e.input[0]!==Zr.OP_0)throw new TypeError("Input is invalid");if(i.signatures.length===0||!i.signatures.every(r))throw new TypeError("Input has invalid signature(s)");if(e.signatures&&!(0,ke.stacksEqual)(e.signatures,i.signatures))throw new TypeError("Signature mismatch");if(e.m!==void 0&&e.m!==e.signatures.length)throw new TypeError("Signature count mismatch")}}return Object.assign(i,e)}Ws.p2ms=Kb;var Ks={};Object.defineProperty(Ks,"__esModule",{value:!0});Ks.p2pk=void 0;const Yb=qe,en=ut(),bt=Ve,Xr=at,pu=en.OPS;function Xb(e,t){if(!e.input&&!e.output&&!e.pubkey&&!e.input&&!e.signature)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,bt.typeforce)({network:bt.typeforce.maybe(bt.typeforce.Object),output:bt.typeforce.maybe(bt.typeforce.Buffer),pubkey:bt.typeforce.maybe(bt.isPoint),signature:bt.typeforce.maybe(en.isCanonicalScriptSignature),input:bt.typeforce.maybe(bt.typeforce.Buffer)},e);const r=Xr.value(()=>en.decompile(e.input)),i={name:"p2pk",network:e.network||Yb.bitcoin};if(Xr.prop(i,"output",()=>{if(e.pubkey)return en.compile([e.pubkey,pu.OP_CHECKSIG])}),Xr.prop(i,"pubkey",()=>{if(e.output)return e.output.slice(1,-1)}),Xr.prop(i,"signature",()=>{if(e.input)return r()[0]}),Xr.prop(i,"input",()=>{if(e.signature)return en.compile([e.signature])}),Xr.prop(i,"witness",()=>{if(i.input)return[]}),t.validate){if(e.output){if(e.output[e.output.length-1]!==pu.OP_CHECKSIG)throw new TypeError("Output is invalid");if(!(0,bt.isPoint)(i.pubkey))throw new TypeError("Output pubkey is invalid");if(e.pubkey&&!e.pubkey.equals(i.pubkey))throw new TypeError("Pubkey mismatch")}if(e.signature&&e.input&&!e.input.equals(i.input))throw new TypeError("Signature mismatch");if(e.input){if(r().length!==1)throw new TypeError("Input is invalid");if(!en.isCanonicalScriptSignature(i.signature))throw new TypeError("Input has invalid signature")}}return Object.assign(i,e)}Ks.p2pk=Xb;var Ys={};function Jb(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r<t.length;r++)t[r]=255;for(var n=0;n<e.length;n++){var i=e.charAt(n),s=i.charCodeAt(0);if(t[s]!==255)throw new TypeError(i+" is ambiguous");t[s]=n}var o=e.length,a=e.charAt(0),c=Math.log(o)/Math.log(256),f=Math.log(256)/Math.log(o);function l(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var g=0,_=0,x=0,k=p.length;x!==k&&p[x]===0;)x++,g++;for(var T=(k-x)*f+1>>>0,A=new Uint8Array(T);x!==k;){for(var E=p[x],I=0,S=T-1;(E!==0||I<_)&&S!==-1;S--,I++)E+=256*A[S]>>>0,A[S]=E%o>>>0,E=E/o>>>0;if(E!==0)throw new Error("Non-zero carry");_=I,x++}for(var L=T-_;L!==T&&A[L]===0;)L++;for(var $=a.repeat(g);L<T;++L)$+=e.charAt(A[L]);return $}function h(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;for(var g=0,_=0,x=0;p[g]===a;)_++,g++;for(var k=(p.length-g)*c+1>>>0,T=new Uint8Array(k);p[g];){var A=p.charCodeAt(g);if(A>255)return;var E=t[A];if(E===255)return;for(var I=0,S=k-1;(E!==0||I<x)&&S!==-1;S--,I++)E+=o*T[S]>>>0,T[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");x=I,g++}for(var L=k-x;L!==k&&T[L]===0;)L++;for(var $=new Uint8Array(_+(k-L)),B=_;L!==k;)$[B++]=T[L++];return $}function y(p){var g=h(p);if(g)return g;throw new Error("Non-base"+o+" character")}return{encode:l,decodeUnsafe:h,decode:y}}var Qb=Jb;const Zb=Qb,eg="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";var tg=Zb(eg),Lo=tg,rg=function(e){function t(s){var o=Uint8Array.from(s),a=e(o),c=o.length+4,f=new Uint8Array(c);return f.set(o,0),f.set(a.subarray(0,4),o.length),Lo.encode(f,c)}function r(s){var o=s.slice(0,-4),a=s.slice(-4),c=e(o);if(!(a[0]^c[0]|a[1]^c[1]|a[2]^c[2]|a[3]^c[3]))return o}function n(s){var o=Lo.decodeUnsafe(s);if(o)return r(o)}function i(s){var o=Lo.decode(s),a=r(o);if(!a)throw new Error("Invalid checksum");return a}return{encode:t,decode:i,decodeUnsafe:n}},{sha256:yu}=Gt,ng=rg;function ig(e){return yu(yu(e))}var bc=ng(ig);Object.defineProperty(Ys,"__esModule",{value:!0});Ys.p2pkh=void 0;const Fo=vr,sg=qe,tn=ut(),Ye=Ve,Lt=at,mu=bc,cr=tn.OPS;function og(e,t){if(!e.address&&!e.hash&&!e.output&&!e.pubkey&&!e.input)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,Ye.typeforce)({network:Ye.typeforce.maybe(Ye.typeforce.Object),address:Ye.typeforce.maybe(Ye.typeforce.String),hash:Ye.typeforce.maybe(Ye.typeforce.BufferN(20)),output:Ye.typeforce.maybe(Ye.typeforce.BufferN(25)),pubkey:Ye.typeforce.maybe(Ye.isPoint),signature:Ye.typeforce.maybe(tn.isCanonicalScriptSignature),input:Ye.typeforce.maybe(Ye.typeforce.Buffer)},e);const r=Lt.value(()=>{const o=Buffer.from(mu.decode(e.address)),a=o.readUInt8(0),c=o.slice(1);return{version:a,hash:c}}),n=Lt.value(()=>tn.decompile(e.input)),i=e.network||sg.bitcoin,s={name:"p2pkh",network:i};if(Lt.prop(s,"address",()=>{if(!s.hash)return;const o=Buffer.allocUnsafe(21);return o.writeUInt8(i.pubKeyHash,0),s.hash.copy(o,1),mu.encode(o)}),Lt.prop(s,"hash",()=>{if(e.output)return e.output.slice(3,23);if(e.address)return r().hash;if(e.pubkey||s.pubkey)return Fo.hash160(e.pubkey||s.pubkey)}),Lt.prop(s,"output",()=>{if(s.hash)return tn.compile([cr.OP_DUP,cr.OP_HASH160,s.hash,cr.OP_EQUALVERIFY,cr.OP_CHECKSIG])}),Lt.prop(s,"pubkey",()=>{if(e.input)return n()[1]}),Lt.prop(s,"signature",()=>{if(e.input)return n()[0]}),Lt.prop(s,"input",()=>{if(e.pubkey&&e.signature)return tn.compile([e.signature,e.pubkey])}),Lt.prop(s,"witness",()=>{if(s.input)return[]}),t.validate){let o=Buffer.from([]);if(e.address){if(r().version!==i.pubKeyHash)throw new TypeError("Invalid version or Network mismatch");if(r().hash.length!==20)throw new TypeError("Invalid address");o=r().hash}if(e.hash){if(o.length>0&&!o.equals(e.hash))throw new TypeError("Hash mismatch");o=e.hash}if(e.output){if(e.output.length!==25||e.output[0]!==cr.OP_DUP||e.output[1]!==cr.OP_HASH160||e.output[2]!==20||e.output[23]!==cr.OP_EQUALVERIFY||e.output[24]!==cr.OP_CHECKSIG)throw new TypeError("Output is invalid");const a=e.output.slice(3,23);if(o.length>0&&!o.equals(a))throw new TypeError("Hash mismatch");o=a}if(e.pubkey){const a=Fo.hash160(e.pubkey);if(o.length>0&&!o.equals(a))throw new TypeError("Hash mismatch");o=a}if(e.input){const a=n();if(a.length!==2)throw new TypeError("Input is invalid");if(!tn.isCanonicalScriptSignature(a[0]))throw new TypeError("Input has invalid signature");if(!(0,Ye.isPoint)(a[1]))throw new TypeError("Input has invalid pubkey");if(e.signature&&!e.signature.equals(a[0]))throw new TypeError("Signature mismatch");if(e.pubkey&&!e.pubkey.equals(a[1]))throw new TypeError("Pubkey mismatch");const c=Fo.hash160(a[1]);if(o.length>0&&!o.equals(c))throw new TypeError("Hash mismatch")}}return Object.assign(s,e)}Ys.p2pkh=og;var Xs={};Object.defineProperty(Xs,"__esModule",{value:!0});Xs.p2sh=void 0;const bu=vr,ag=qe,St=ut(),me=Ve,xt=at,gu=bc,Ln=St.OPS;function cg(e,t){if(!e.address&&!e.hash&&!e.output&&!e.redeem&&!e.input)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,me.typeforce)({network:me.typeforce.maybe(me.typeforce.Object),address:me.typeforce.maybe(me.typeforce.String),hash:me.typeforce.maybe(me.typeforce.BufferN(20)),output:me.typeforce.maybe(me.typeforce.BufferN(23)),redeem:me.typeforce.maybe({network:me.typeforce.maybe(me.typeforce.Object),output:me.typeforce.maybe(me.typeforce.Buffer),input:me.typeforce.maybe(me.typeforce.Buffer),witness:me.typeforce.maybe(me.typeforce.arrayOf(me.typeforce.Buffer))}),input:me.typeforce.maybe(me.typeforce.Buffer),witness:me.typeforce.maybe(me.typeforce.arrayOf(me.typeforce.Buffer))},e);let r=e.network;r||(r=e.redeem&&e.redeem.network||ag.bitcoin);const n={network:r},i=xt.value(()=>{const a=Buffer.from(gu.decode(e.address)),c=a.readUInt8(0),f=a.slice(1);return{version:c,hash:f}}),s=xt.value(()=>St.decompile(e.input)),o=xt.value(()=>{const a=s(),c=a[a.length-1];return{network:r,output:c===Ln.OP_FALSE?Buffer.from([]):c,input:St.compile(a.slice(0,-1)),witness:e.witness||[]}});if(xt.prop(n,"address",()=>{if(!n.hash)return;const a=Buffer.allocUnsafe(21);return a.writeUInt8(n.network.scriptHash,0),n.hash.copy(a,1),gu.encode(a)}),xt.prop(n,"hash",()=>{if(e.output)return e.output.slice(2,22);if(e.address)return i().hash;if(n.redeem&&n.redeem.output)return bu.hash160(n.redeem.output)}),xt.prop(n,"output",()=>{if(n.hash)return St.compile([Ln.OP_HASH160,n.hash,Ln.OP_EQUAL])}),xt.prop(n,"redeem",()=>{if(e.input)return o()}),xt.prop(n,"input",()=>{if(!(!e.redeem||!e.redeem.input||!e.redeem.output))return St.compile([].concat(St.decompile(e.redeem.input),e.redeem.output))}),xt.prop(n,"witness",()=>{if(n.redeem&&n.redeem.witness)return n.redeem.witness;if(n.input)return[]}),xt.prop(n,"name",()=>{const a=["p2sh"];return n.redeem!==void 0&&n.redeem.name!==void 0&&a.push(n.redeem.name),a.join("-")}),t.validate){let a=Buffer.from([]);if(e.address){if(i().version!==r.scriptHash)throw new TypeError("Invalid version or Network mismatch");if(i().hash.length!==20)throw new TypeError("Invalid address");a=i().hash}if(e.hash){if(a.length>0&&!a.equals(e.hash))throw new TypeError("Hash mismatch");a=e.hash}if(e.output){if(e.output.length!==23||e.output[0]!==Ln.OP_HASH160||e.output[1]!==20||e.output[22]!==Ln.OP_EQUAL)throw new TypeError("Output is invalid");const f=e.output.slice(2,22);if(a.length>0&&!a.equals(f))throw new TypeError("Hash mismatch");a=f}const c=f=>{if(f.output){const l=St.decompile(f.output);if(!l||l.length<1)throw new TypeError("Redeem.output too short");if(f.output.byteLength>520)throw new TypeError("Redeem.output unspendable if larger than 520 bytes");if(St.countNonPushOnlyOPs(l)>201)throw new TypeError("Redeem.output unspendable with more than 201 non-push ops");const h=bu.hash160(f.output);if(a.length>0&&!a.equals(h))throw new TypeError("Hash mismatch");a=h}if(f.input){const l=f.input.length>0,h=f.witness&&f.witness.length>0;if(!l&&!h)throw new TypeError("Empty input");if(l&&h)throw new TypeError("Input and witness provided");if(l){const y=St.decompile(f.input);if(!St.isPushOnly(y))throw new TypeError("Non push-only scriptSig")}}};if(e.input){const f=s();if(!f||f.length<1)throw new TypeError("Input too short");if(!Buffer.isBuffer(o().output))throw new TypeError("Input is invalid");c(o())}if(e.redeem){if(e.redeem.network&&e.redeem.network!==r)throw new TypeError("Network mismatch");if(e.input){const f=o();if(e.redeem.output&&!e.redeem.output.equals(f.output))throw new TypeError("Redeem.output mismatch");if(e.redeem.input&&!e.redeem.input.equals(f.input))throw new TypeError("Redeem.input mismatch")}c(e.redeem)}if(e.witness&&e.redeem&&e.redeem.witness&&!(0,me.stacksEqual)(e.redeem.witness,e.witness))throw new TypeError("Witness and redeem.witness mismatch")}return Object.assign(n,e)}Xs.p2sh=cg;var Js={},Yt={};Object.defineProperty(Yt,"__esModule",{value:!0});Yt.bech32m=Yt.bech32=void 0;const As="qpzry9x8gf2tvdw0s3jn54khce6mua7l",Xd={};for(let e=0;e<As.length;e++){const t=As.charAt(e);Xd[t]=e}function un(e){const t=e>>25;return(e&33554431)<<5^-(t>>0&1)&996825010^-(t>>1&1)&642813549^-(t>>2&1)&513874426^-(t>>3&1)&1027748829^-(t>>4&1)&705979059}function wu(e){let t=1;for(let r=0;r<e.length;++r){const n=e.charCodeAt(r);if(n<33||n>126)return"Invalid prefix ("+e+")";t=un(t)^n>>5}t=un(t);for(let r=0;r<e.length;++r){const n=e.charCodeAt(r);t=un(t)^n&31}return t}function gc(e,t,r,n){let i=0,s=0;const o=(1<<r)-1,a=[];for(let c=0;c<e.length;++c)for(i=i<<t|e[c],s+=t;s>=r;)s-=r,a.push(i>>s&o);if(n)s>0&&a.push(i<<r-s&o);else{if(s>=t)return"Excess padding";if(i<<r-s&o)return"Non-zero padding"}return a}function ug(e){return gc(e,8,5,!0)}function fg(e){const t=gc(e,5,8,!1);if(Array.isArray(t))return t}function dg(e){const t=gc(e,5,8,!1);if(Array.isArray(t))return t;throw new Error(t)}function Jd(e){let t;e==="bech32"?t=1:t=734539939;function r(o,a,c){if(c=c||90,o.length+7+a.length>c)throw new TypeError("Exceeds length limit");o=o.toLowerCase();let f=wu(o);if(typeof f=="string")throw new Error(f);let l=o+"1";for(let h=0;h<a.length;++h){const y=a[h];if(y>>5)throw new Error("Non 5-bit word");f=un(f)^y,l+=As.charAt(y)}for(let h=0;h<6;++h)f=un(f);f^=t;for(let h=0;h<6;++h){const y=f>>(5-h)*5&31;l+=As.charAt(y)}return l}function n(o,a){if(a=a||90,o.length<8)return o+" too short";if(o.length>a)return"Exceeds length limit";const c=o.toLowerCase(),f=o.toUpperCase();if(o!==c&&o!==f)return"Mixed-case string "+o;o=c;const l=o.lastIndexOf("1");if(l===-1)return"No separator character for "+o;if(l===0)return"Missing prefix for "+o;const h=o.slice(0,l),y=o.slice(l+1);if(y.length<6)return"Data too short";let p=wu(h);if(typeof p=="string")return p;const g=[];for(let _=0;_<y.length;++_){const x=y.charAt(_),k=Xd[x];if(k===void 0)return"Unknown character "+x;p=un(p)^k,!(_+6>=y.length)&&g.push(k)}return p!==t?"Invalid checksum for "+o:{prefix:h,words:g}}function i(o,a){const c=n(o,a);if(typeof c=="object")return c}function s(o,a){const c=n(o,a);if(typeof c=="object")return c;throw new Error(c)}return{decodeUnsafe:i,decode:s,encode:r,toWords:ug,fromWordsUnsafe:fg,fromWords:dg}}Yt.bech32=Jd("bech32");Yt.bech32m=Jd("bech32m");Object.defineProperty(Js,"__esModule",{value:!0});Js.p2wpkh=void 0;const Mo=vr,lg=qe,ps=ut(),Re=Ve,ur=at,rs=Yt,_u=ps.OPS,hg=Buffer.alloc(0);function pg(e,t){if(!e.address&&!e.hash&&!e.output&&!e.pubkey&&!e.witness)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,Re.typeforce)({address:Re.typeforce.maybe(Re.typeforce.String),hash:Re.typeforce.maybe(Re.typeforce.BufferN(20)),input:Re.typeforce.maybe(Re.typeforce.BufferN(0)),network:Re.typeforce.maybe(Re.typeforce.Object),output:Re.typeforce.maybe(Re.typeforce.BufferN(22)),pubkey:Re.typeforce.maybe(Re.isPoint),signature:Re.typeforce.maybe(ps.isCanonicalScriptSignature),witness:Re.typeforce.maybe(Re.typeforce.arrayOf(Re.typeforce.Buffer))},e);const r=ur.value(()=>{const s=rs.bech32.decode(e.address),o=s.words.shift(),a=rs.bech32.fromWords(s.words);return{version:o,prefix:s.prefix,data:Buffer.from(a)}}),n=e.network||lg.bitcoin,i={name:"p2wpkh",network:n};if(ur.prop(i,"address",()=>{if(!i.hash)return;const s=rs.bech32.toWords(i.hash);return s.unshift(0),rs.bech32.encode(n.bech32,s)}),ur.prop(i,"hash",()=>{if(e.output)return e.output.slice(2,22);if(e.address)return r().data;if(e.pubkey||i.pubkey)return Mo.hash160(e.pubkey||i.pubkey)}),ur.prop(i,"output",()=>{if(i.hash)return ps.compile([_u.OP_0,i.hash])}),ur.prop(i,"pubkey",()=>{if(e.pubkey)return e.pubkey;if(e.witness)return e.witness[1]}),ur.prop(i,"signature",()=>{if(e.witness)return e.witness[0]}),ur.prop(i,"input",()=>{if(i.witness)return hg}),ur.prop(i,"witness",()=>{if(e.pubkey&&e.signature)return[e.signature,e.pubkey]}),t.validate){let s=Buffer.from([]);if(e.address){if(n&&n.bech32!==r().prefix)throw new TypeError("Invalid prefix or Network mismatch");if(r().version!==0)throw new TypeError("Invalid address version");if(r().data.length!==20)throw new TypeError("Invalid address data");s=r().data}if(e.hash){if(s.length>0&&!s.equals(e.hash))throw new TypeError("Hash mismatch");s=e.hash}if(e.output){if(e.output.length!==22||e.output[0]!==_u.OP_0||e.output[1]!==20)throw new TypeError("Output is invalid");if(s.length>0&&!s.equals(e.output.slice(2)))throw new TypeError("Hash mismatch");s=e.output.slice(2)}if(e.pubkey){const o=Mo.hash160(e.pubkey);if(s.length>0&&!s.equals(o))throw new TypeError("Hash mismatch");if(s=o,!(0,Re.isPoint)(e.pubkey)||e.pubkey.length!==33)throw new TypeError("Invalid pubkey for p2wpkh")}if(e.witness){if(e.witness.length!==2)throw new TypeError("Witness is invalid");if(!ps.isCanonicalScriptSignature(e.witness[0]))throw new TypeError("Witness has invalid signature");if(!(0,Re.isPoint)(e.witness[1])||e.witness[1].length!==33)throw new TypeError("Witness has invalid pubkey");if(e.signature&&!e.signature.equals(e.witness[0]))throw new TypeError("Signature mismatch");if(e.pubkey&&!e.pubkey.equals(e.witness[1]))throw new TypeError("Pubkey mismatch");const o=Mo.hash160(e.witness[1]);if(s.length>0&&!s.equals(o))throw new TypeError("Hash mismatch")}}return Object.assign(i,e)}Js.p2wpkh=pg;var Qs={};Object.defineProperty(Qs,"__esModule",{value:!0});Qs.p2wsh=void 0;const vu=vr,yg=qe,$t=ut(),pe=Ve,Ft=at,ns=Yt,Eu=$t.OPS,$o=Buffer.alloc(0);function is(e){return!!(Buffer.isBuffer(e)&&e.length===65&&e[0]===4&&(0,pe.isPoint)(e))}function mg(e,t){if(!e.address&&!e.hash&&!e.output&&!e.redeem&&!e.witness)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,pe.typeforce)({network:pe.typeforce.maybe(pe.typeforce.Object),address:pe.typeforce.maybe(pe.typeforce.String),hash:pe.typeforce.maybe(pe.typeforce.BufferN(32)),output:pe.typeforce.maybe(pe.typeforce.BufferN(34)),redeem:pe.typeforce.maybe({input:pe.typeforce.maybe(pe.typeforce.Buffer),network:pe.typeforce.maybe(pe.typeforce.Object),output:pe.typeforce.maybe(pe.typeforce.Buffer),witness:pe.typeforce.maybe(pe.typeforce.arrayOf(pe.typeforce.Buffer))}),input:pe.typeforce.maybe(pe.typeforce.BufferN(0)),witness:pe.typeforce.maybe(pe.typeforce.arrayOf(pe.typeforce.Buffer))},e);const r=Ft.value(()=>{const o=ns.bech32.decode(e.address),a=o.words.shift(),c=ns.bech32.fromWords(o.words);return{version:a,prefix:o.prefix,data:Buffer.from(c)}}),n=Ft.value(()=>$t.decompile(e.redeem.input));let i=e.network;i||(i=e.redeem&&e.redeem.network||yg.bitcoin);const s={network:i};if(Ft.prop(s,"address",()=>{if(!s.hash)return;const o=ns.bech32.toWords(s.hash);return o.unshift(0),ns.bech32.encode(i.bech32,o)}),Ft.prop(s,"hash",()=>{if(e.output)return e.output.slice(2);if(e.address)return r().data;if(s.redeem&&s.redeem.output)return vu.sha256(s.redeem.output)}),Ft.prop(s,"output",()=>{if(s.hash)return $t.compile([Eu.OP_0,s.hash])}),Ft.prop(s,"redeem",()=>{if(e.witness)return{output:e.witness[e.witness.length-1],input:$o,witness:e.witness.slice(0,-1)}}),Ft.prop(s,"input",()=>{if(s.witness)return $o}),Ft.prop(s,"witness",()=>{if(e.redeem&&e.redeem.input&&e.redeem.input.length>0&&e.redeem.output&&e.redeem.output.length>0){const o=$t.toStack(n());return s.redeem=Object.assign({witness:o},e.redeem),s.redeem.input=$o,[].concat(o,e.redeem.output)}if(e.redeem&&e.redeem.output&&e.redeem.witness)return[].concat(e.redeem.witness,e.redeem.output)}),Ft.prop(s,"name",()=>{const o=["p2wsh"];return s.redeem!==void 0&&s.redeem.name!==void 0&&o.push(s.redeem.name),o.join("-")}),t.validate){let o=Buffer.from([]);if(e.address){if(r().prefix!==i.bech32)throw new TypeError("Invalid prefix or Network mismatch");if(r().version!==0)throw new TypeError("Invalid address version");if(r().data.length!==32)throw new TypeError("Invalid address data");o=r().data}if(e.hash){if(o.length>0&&!o.equals(e.hash))throw new TypeError("Hash mismatch");o=e.hash}if(e.output){if(e.output.length!==34||e.output[0]!==Eu.OP_0||e.output[1]!==32)throw new TypeError("Output is invalid");const a=e.output.slice(2);if(o.length>0&&!o.equals(a))throw new TypeError("Hash mismatch");o=a}if(e.redeem){if(e.redeem.network&&e.redeem.network!==i)throw new TypeError("Network mismatch");if(e.redeem.input&&e.redeem.input.length>0&&e.redeem.witness&&e.redeem.witness.length>0)throw new TypeError("Ambiguous witness source");if(e.redeem.output){const a=$t.decompile(e.redeem.output);if(!a||a.length<1)throw new TypeError("Redeem.output is invalid");if(e.redeem.output.byteLength>3600)throw new TypeError("Redeem.output unspendable if larger than 3600 bytes");if($t.countNonPushOnlyOPs(a)>201)throw new TypeError("Redeem.output unspendable with more than 201 non-push ops");const c=vu.sha256(e.redeem.output);if(o.length>0&&!o.equals(c))throw new TypeError("Hash mismatch");o=c}if(e.redeem.input&&!$t.isPushOnly(n()))throw new TypeError("Non push-only scriptSig");if(e.witness&&e.redeem.witness&&!(0,pe.stacksEqual)(e.witness,e.redeem.witness))throw new TypeError("Witness and redeem.witness mismatch");if(e.redeem.input&&n().some(is)||e.redeem.output&&($t.decompile(e.redeem.output)||[]).some(is))throw new TypeError("redeem.input or redeem.output contains uncompressed pubkey")}if(e.witness&&e.witness.length>0){const a=e.witness[e.witness.length-1];if(e.redeem&&e.redeem.output&&!e.redeem.output.equals(a))throw new TypeError("Witness and redeem.output mismatch");if(e.witness.some(is)||($t.decompile(a)||[]).some(is))throw new TypeError("Witness contains uncompressed pubkey")}}return Object.assign(s,e)}Qs.p2wsh=mg;var Fn={},$r={};Object.defineProperty($r,"__esModule",{value:!0});$r.getEccLib=$r.initEccLib=void 0;const Jn={};function bg(e,t){e?e!==Jn.eccLib&&(t!=null&&t.DANGER_DO_NOT_VERIFY_ECCLIB||wg(e),Jn.eccLib=e):Jn.eccLib=e}$r.initEccLib=bg;function gg(){if(!Jn.eccLib)throw new Error("No ECC Library provided. You must call initEccLib() with a valid TinySecp256k1Interface instance");return Jn.eccLib}$r.getEccLib=gg;const Mt=e=>Buffer.from(e,"hex");function wg(e){dt(typeof e.isXOnlyPoint=="function"),dt(e.isXOnlyPoint(Mt("79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"))),dt(e.isXOnlyPoint(Mt("fffffffffffffffffffffffffffffffffffffffffffffffffffffffeeffffc2e"))),dt(e.isXOnlyPoint(Mt("f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9"))),dt(e.isXOnlyPoint(Mt("0000000000000000000000000000000000000000000000000000000000000001"))),dt(!e.isXOnlyPoint(Mt("0000000000000000000000000000000000000000000000000000000000000000"))),dt(!e.isXOnlyPoint(Mt("fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"))),dt(typeof e.xOnlyPointAddTweak=="function"),_g.forEach(t=>{const r=e.xOnlyPointAddTweak(Mt(t.pubkey),Mt(t.tweak));t.result===null?dt(r===null):(dt(r!==null),dt(r.parity===t.parity),dt(Buffer.from(r.xOnlyPubkey).equals(Mt(t.result))))})}function dt(e){if(!e)throw new Error("ecc library invalid")}const _g=[{pubkey:"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",tweak:"fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140",parity:-1,result:null},{pubkey:"1617d38ed8d8657da4d4761e8057bc396ea9e4b9d29776d4be096016dbd2509b",tweak:"a8397a935f0dfceba6ba9618f6451ef4d80637abf4e6af2669fbc9de6a8fd2ac",parity:1,result:"e478f99dab91052ab39a33ea35fd5e6e4933f4d28023cd597c9a1f6760346adf"},{pubkey:"2c0b7cf95324a07d05398b240174dc0c2be444d96b159aa6c7f7b1e668680991",tweak:"823c3cd2142744b075a87eade7e1b8678ba308d566226a0056ca2b7a76f86b47",parity:0,result:"9534f8dc8c6deda2dc007655981c78b49c5d96c778fbf363462a11ec9dfd948c"}];var wc={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.tweakKey=e.tapTweakHash=e.tapleafHash=e.findScriptPath=e.toHashTree=e.rootHashFromPath=e.MAX_TAPTREE_DEPTH=e.LEAF_VERSION_TAPSCRIPT=void 0;const t=Zt,r=$r,n=vr,i=$e,s=Ve;e.LEAF_VERSION_TAPSCRIPT=192,e.MAX_TAPTREE_DEPTH=128;const o=_=>"left"in _&&"right"in _;function a(_,x){if(_.length<33)throw new TypeError(`The control-block length is too small. Got ${_.length}, expected min 33.`);const k=(_.length-33)/32;let T=x;for(let A=0;A<k;A++){const E=_.slice(33+32*A,65+32*A);T.compare(E)<0?T=p(T,E):T=p(E,T)}return T}e.rootHashFromPath=a;function c(_){if((0,s.isTapleaf)(_))return{hash:l(_)};const x=[c(_[0]),c(_[1])];x.sort((A,E)=>A.hash.compare(E.hash));const[k,T]=x;return{hash:p(k.hash,T.hash),left:k,right:T}}e.toHashTree=c;function f(_,x){if(o(_)){const k=f(_.left,x);if(k!==void 0)return[...k,_.right.hash];const T=f(_.right,x);if(T!==void 0)return[...T,_.left.hash]}else if(_.hash.equals(x))return[]}e.findScriptPath=f;function l(_){const x=_.version||e.LEAF_VERSION_TAPSCRIPT;return n.taggedHash("TapLeaf",t.Buffer.concat([t.Buffer.from([x]),g(_.output)]))}e.tapleafHash=l;function h(_,x){return n.taggedHash("TapTweak",t.Buffer.concat(x?[_,x]:[_]))}e.tapTweakHash=h;function y(_,x){if(!t.Buffer.isBuffer(_)||_.length!==32||x&&x.length!==32)return null;const k=h(_,x),T=(0,r.getEccLib)().xOnlyPointAddTweak(_,k);return!T||T.xOnlyPubkey===null?null:{parity:T.parity,x:t.Buffer.from(T.xOnlyPubkey)}}e.tweakKey=y;function p(_,x){return n.taggedHash("TapBranch",t.Buffer.concat([_,x]))}function g(_){const x=i.varuint.encodingLength(_.length),k=t.Buffer.allocUnsafe(x);return i.varuint.encode(_.length,k),t.Buffer.concat([k,_])}})(wc);var Xe={},xu;function vg(){if(xu)return Xe;xu=1,Object.defineProperty(Xe,"__esModule",{value:!0}),Xe.toOutputScript=Xe.fromOutputScript=Xe.toBech32=Xe.toBase58Check=Xe.fromBech32=Xe.fromBase58Check=void 0;const e=qe,t=_c(),r=ut(),n=Ve,i=Yt,s=bc,o=40,a=2,c=16,f=2,l=80,h="WARNING: Sending to a future segwit version address can lead to loss of funds. End users MUST be warned carefully in the GUI and asked if they wish to proceed with caution. Wallets should verify the segwit version from the output of fromBech32, then decide when it is safe to use which version of segwit.";function y(A,E){const I=A.slice(2);if(I.length<a||I.length>o)throw new TypeError("Invalid program length for segwit address");const S=A[0]-l;if(S<f||S>c)throw new TypeError("Invalid version for segwit address");if(A[1]!==I.length)throw new TypeError("Invalid script for segwit address");return console.warn(h),x(I,S,E.bech32)}function p(A){const E=Buffer.from(s.decode(A));if(E.length<21)throw new TypeError(A+" is too short");if(E.length>21)throw new TypeError(A+" is too long");const I=E.readUInt8(0),S=E.slice(1);return{version:I,hash:S}}Xe.fromBase58Check=p;function g(A){let E,I;try{E=i.bech32.decode(A)}catch{}if(E){if(I=E.words[0],I!==0)throw new TypeError(A+" uses wrong encoding")}else if(E=i.bech32m.decode(A),I=E.words[0],I===0)throw new TypeError(A+" uses wrong encoding");const S=i.bech32.fromWords(E.words.slice(1));return{version:I,prefix:E.prefix,data:Buffer.from(S)}}Xe.fromBech32=g;function _(A,E){(0,n.typeforce)((0,n.tuple)(n.Hash160bit,n.UInt8),arguments);const I=Buffer.allocUnsafe(21);return I.writeUInt8(E,0),A.copy(I,1),s.encode(I)}Xe.toBase58Check=_;function x(A,E,I){const S=i.bech32.toWords(A);return S.unshift(E),E===0?i.bech32.encode(I,S):i.bech32m.encode(I,S)}Xe.toBech32=x;function k(A,E){E=E||e.bitcoin;try{return t.p2pkh({output:A,network:E}).address}catch{}try{return t.p2sh({output:A,network:E}).address}catch{}try{return t.p2wpkh({output:A,network:E}).address}catch{}try{return t.p2wsh({output:A,network:E}).address}catch{}try{return t.p2tr({output:A,network:E}).address}catch{}try{return y(A,E)}catch{}throw new Error(r.toASM(A)+" has no matching Address")}Xe.fromOutputScript=k;function T(A,E){E=E||e.bitcoin;let I,S;try{I=p(A)}catch{}if(I){if(I.version===E.pubKeyHash)return t.p2pkh({hash:I.hash}).output;if(I.version===E.scriptHash)return t.p2sh({hash:I.hash}).output}else{try{S=g(A)}catch{}if(S){if(S.prefix!==E.bech32)throw new Error(A+" has an invalid prefix");if(S.version===0){if(S.data.length===20)return t.p2wpkh({hash:S.data}).output;if(S.data.length===32)return t.p2wsh({hash:S.data}).output}else if(S.version===1){if(S.data.length===32)return t.p2tr({pubkey:S.data}).output}else if(S.version>=f&&S.version<=c&&S.data.length>=a&&S.data.length<=o)return console.warn(h),r.compile([S.version+l,S.data])}}throw new Error(A+" has no matching Script")}return Xe.toOutputScript=T,Xe}var Au;function Eg(){if(Au)return Fn;Au=1,Object.defineProperty(Fn,"__esModule",{value:!0}),Fn.p2tr=void 0;const e=Zt,t=qe,r=ut(),n=Ve,i=$r,s=wc,o=at,a=Yt,c=vg(),f=r.OPS,l=1,h=80;function y(p,g){if(!p.address&&!p.output&&!p.pubkey&&!p.internalPubkey&&!(p.witness&&p.witness.length>1))throw new TypeError("Not enough data");g=Object.assign({validate:!0},g||{}),(0,n.typeforce)({address:n.typeforce.maybe(n.typeforce.String),input:n.typeforce.maybe(n.typeforce.BufferN(0)),network:n.typeforce.maybe(n.typeforce.Object),output:n.typeforce.maybe(n.typeforce.BufferN(34)),internalPubkey:n.typeforce.maybe(n.typeforce.BufferN(32)),hash:n.typeforce.maybe(n.typeforce.BufferN(32)),pubkey:n.typeforce.maybe(n.typeforce.BufferN(32)),signature:n.typeforce.maybe(n.typeforce.anyOf(n.typeforce.BufferN(64),n.typeforce.BufferN(65))),witness:n.typeforce.maybe(n.typeforce.arrayOf(n.typeforce.Buffer)),scriptTree:n.typeforce.maybe(n.isTaptree),redeem:n.typeforce.maybe({output:n.typeforce.maybe(n.typeforce.Buffer),redeemVersion:n.typeforce.maybe(n.typeforce.Number),witness:n.typeforce.maybe(n.typeforce.arrayOf(n.typeforce.Buffer))}),redeemVersion:n.typeforce.maybe(n.typeforce.Number)},p);const _=o.value(()=>(0,c.fromBech32)(p.address)),x=o.value(()=>{if(!(!p.witness||!p.witness.length))return p.witness.length>=2&&p.witness[p.witness.length-1][0]===h?p.witness.slice(0,-1):p.witness.slice()}),k=o.value(()=>{if(p.scriptTree)return(0,s.toHashTree)(p.scriptTree);if(p.hash)return{hash:p.hash}}),T=p.network||t.bitcoin,A={name:"p2tr",network:T};if(o.prop(A,"address",()=>{if(!A.pubkey)return;const E=a.bech32m.toWords(A.pubkey);return E.unshift(l),a.bech32m.encode(T.bech32,E)}),o.prop(A,"hash",()=>{const E=k();if(E)return E.hash;const I=x();if(I&&I.length>1){const S=I[I.length-1],L=S[0]&n.TAPLEAF_VERSION_MASK,$=I[I.length-2],B=(0,s.tapleafHash)({output:$,version:L});return(0,s.rootHashFromPath)(S,B)}return null}),o.prop(A,"output",()=>{if(A.pubkey)return r.compile([f.OP_1,A.pubkey])}),o.prop(A,"redeemVersion",()=>p.redeemVersion?p.redeemVersion:p.redeem&&p.redeem.redeemVersion!==void 0&&p.redeem.redeemVersion!==null?p.redeem.redeemVersion:s.LEAF_VERSION_TAPSCRIPT),o.prop(A,"redeem",()=>{const E=x();if(!(!E||E.length<2))return{output:E[E.length-2],witness:E.slice(0,-2),redeemVersion:E[E.length-1][0]&n.TAPLEAF_VERSION_MASK}}),o.prop(A,"pubkey",()=>{if(p.pubkey)return p.pubkey;if(p.output)return p.output.slice(2);if(p.address)return _().data;if(A.internalPubkey){const E=(0,s.tweakKey)(A.internalPubkey,A.hash);if(E)return E.x}}),o.prop(A,"internalPubkey",()=>{if(p.internalPubkey)return p.internalPubkey;const E=x();if(E&&E.length>1)return E[E.length-1].slice(1,33)}),o.prop(A,"signature",()=>{if(p.signature)return p.signature;const E=x();if(!(!E||E.length!==1))return E[0]}),o.prop(A,"witness",()=>{if(p.witness)return p.witness;const E=k();if(E&&p.redeem&&p.redeem.output&&p.internalPubkey){const I=(0,s.tapleafHash)({output:p.redeem.output,version:A.redeemVersion}),S=(0,s.findScriptPath)(E,I);if(!S)return;const L=(0,s.tweakKey)(p.internalPubkey,E.hash);if(!L)return;const $=e.Buffer.concat([e.Buffer.from([A.redeemVersion|L.parity]),p.internalPubkey].concat(S));return[p.redeem.output,$]}if(p.signature)return[p.signature]}),g.validate){let E=e.Buffer.from([]);if(p.address){if(T&&T.bech32!==_().prefix)throw new TypeError("Invalid prefix or Network mismatch");if(_().version!==l)throw new TypeError("Invalid address version");if(_().data.length!==32)throw new TypeError("Invalid address data");E=_().data}if(p.pubkey){if(E.length>0&&!E.equals(p.pubkey))throw new TypeError("Pubkey mismatch");E=p.pubkey}if(p.output){if(p.output.length!==34||p.output[0]!==f.OP_1||p.output[1]!==32)throw new TypeError("Output is invalid");if(E.length>0&&!E.equals(p.output.slice(2)))throw new TypeError("Pubkey mismatch");E=p.output.slice(2)}if(p.internalPubkey){const L=(0,s.tweakKey)(p.internalPubkey,A.hash);if(E.length>0&&!E.equals(L.x))throw new TypeError("Pubkey mismatch");E=L.x}if(E&&E.length&&!(0,i.getEccLib)().isXOnlyPoint(E))throw new TypeError("Invalid pubkey for p2tr");const I=k();if(p.hash&&I&&!p.hash.equals(I.hash))throw new TypeError("Hash mismatch");if(p.redeem&&p.redeem.output&&I){const L=(0,s.tapleafHash)({output:p.redeem.output,version:A.redeemVersion});if(!(0,s.findScriptPath)(I,L))throw new TypeError("Redeem script not in tree")}const S=x();if(p.redeem&&A.redeem){if(p.redeem.redeemVersion&&p.redeem.redeemVersion!==A.redeem.redeemVersion)throw new TypeError("Redeem.redeemVersion and witness mismatch");if(p.redeem.output){if(r.decompile(p.redeem.output).length===0)throw new TypeError("Redeem.output is invalid");if(A.redeem.output&&!p.redeem.output.equals(A.redeem.output))throw new TypeError("Redeem.output and witness mismatch")}if(p.redeem.witness&&A.redeem.witness&&!(0,n.stacksEqual)(p.redeem.witness,A.redeem.witness))throw new TypeError("Redeem.witness and witness mismatch")}if(S&&S.length)if(S.length===1){if(p.signature&&!p.signature.equals(S[0]))throw new TypeError("Signature mismatch")}else{const L=S[S.length-1];if(L.length<33)throw new TypeError(`The control-block length is too small. Got ${L.length}, expected min 33.`);if((L.length-33)%32!==0)throw new TypeError(`The control-block length of ${L.length} is incorrect!`);const $=(L.length-33)/32;if($>128)throw new TypeError(`The script path is too long. Got ${$}, expected max 128.`);const B=L.slice(1,33);if(p.internalPubkey&&!p.internalPubkey.equals(B))throw new TypeError("Internal pubkey mismatch");if(!(0,i.getEccLib)().isXOnlyPoint(B))throw new TypeError("Invalid internalPubkey for p2tr witness");const W=L[0]&n.TAPLEAF_VERSION_MASK,R=S[S.length-2],D=(0,s.tapleafHash)({output:R,version:W}),j=(0,s.rootHashFromPath)(L,D),V=(0,s.tweakKey)(B,j);if(!V)throw new TypeError("Invalid outputKey for p2tr witness");if(E.length&&!E.equals(V.x))throw new TypeError("Pubkey mismatch for p2tr witness");if(V.parity!==(L[0]&1))throw new Error("Incorrect parity")}}return Object.assign(A,p)}return Fn.p2tr=y,Fn}var Su;function _c(){return Su||(Su=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.p2tr=e.p2wsh=e.p2wpkh=e.p2sh=e.p2pkh=e.p2pk=e.p2ms=e.embed=void 0;const t=Vs;Object.defineProperty(e,"embed",{enumerable:!0,get:function(){return t.p2data}});const r=Ws;Object.defineProperty(e,"p2ms",{enumerable:!0,get:function(){return r.p2ms}});const n=Ks;Object.defineProperty(e,"p2pk",{enumerable:!0,get:function(){return n.p2pk}});const i=Ys;Object.defineProperty(e,"p2pkh",{enumerable:!0,get:function(){return i.p2pkh}});const s=Xs;Object.defineProperty(e,"p2sh",{enumerable:!0,get:function(){return s.p2sh}});const o=Js;Object.defineProperty(e,"p2wpkh",{enumerable:!0,get:function(){return o.p2wpkh}});const a=Qs;Object.defineProperty(e,"p2wsh",{enumerable:!0,get:function(){return a.p2wsh}});const c=Eg();Object.defineProperty(e,"p2tr",{enumerable:!0,get:function(){return c.p2tr}})}(Uo)),Uo}Object.defineProperty(le,"__esModule",{value:!0});le.signatureBlocksAction=le.checkInputForSig=le.pubkeyInScript=le.pubkeyPositionInScript=le.witnessStackToScriptWitness=le.isP2TR=le.isP2SHScript=le.isP2WSHScript=le.isP2WPKH=le.isP2PKH=le.isP2PK=le.isP2MS=void 0;const Pu=ji,Qn=ut(),ss=Di,xg=vr,Dr=_c();function jr(e){return t=>{try{return e({output:t}),!0}catch{return!1}}}le.isP2MS=jr(Dr.p2ms);le.isP2PK=jr(Dr.p2pk);le.isP2PKH=jr(Dr.p2pkh);le.isP2WPKH=jr(Dr.p2wpkh);le.isP2WSHScript=jr(Dr.p2wsh);le.isP2SHScript=jr(Dr.p2sh);le.isP2TR=jr(Dr.p2tr);function Ag(e){let t=Buffer.allocUnsafe(0);function r(o){t=Buffer.concat([t,Buffer.from(o)])}function n(o){const a=t.length,c=Pu.encodingLength(o);t=Buffer.concat([t,Buffer.allocUnsafe(c)]),Pu.encode(o,t,a)}function i(o){n(o.length),r(o)}function s(o){n(o.length),o.forEach(i)}return s(e),t}le.witnessStackToScriptWitness=Ag;function Qd(e,t){const r=(0,xg.hash160)(e),n=e.slice(1,33),i=Qn.decompile(t);if(i===null)throw new Error("Unknown script error");return i.findIndex(s=>typeof s=="number"?!1:s.equals(e)||s.equals(r)||s.equals(n))}le.pubkeyPositionInScript=Qd;function Sg(e,t){return Qd(e,t)!==-1}le.pubkeyInScript=Sg;function Pg(e,t){return Tg(e).some(n=>Zd(n,Qn.signature.decode,t))}le.checkInputForSig=Pg;function Zd(e,t,r){const{hashType:n}=t(e),i=[];switch(n&ss.Transaction.SIGHASH_ANYONECANPAY&&i.push("addInput"),n&31){case ss.Transaction.SIGHASH_ALL:break;case ss.Transaction.SIGHASH_SINGLE:case ss.Transaction.SIGHASH_NONE:i.push("addOutput"),i.push("setInputSequence");break}return i.indexOf(r)===-1}le.signatureBlocksAction=Zd;function Tg(e){let t=[];if((e.partialSig||[]).length===0){if(!e.finalScriptSig&&!e.finalScriptWitness)return[];t=kg(e)}else t=e.partialSig;return t.map(r=>r.signature)}function kg(e){const t=e.finalScriptSig?Qn.decompile(e.finalScriptSig)||[]:[],r=e.finalScriptWitness?Qn.decompile(e.finalScriptWitness)||[]:[];return t.concat(r).filter(n=>Buffer.isBuffer(n)&&Qn.isCanonicalScriptSignature(n)).map(n=>({signature:n}))}Object.defineProperty(Ae,"__esModule",{value:!0});Ae.checkTaprootInputForSigs=Ae.tapTreeFromList=Ae.tapTreeToList=Ae.tweakInternalPubKey=Ae.checkTaprootOutputFields=Ae.checkTaprootInputFields=Ae.isTaprootOutput=Ae.isTaprootInput=ys=Ae.serializeTaprootSignature=Ae.tapScriptFinalizer=Ae.toXOnly=void 0;const vc=Ve,Ig=Di,Zs=le,gr=wc,Bg=_c(),Cg=le,Og=e=>e.length===32?e:e.slice(1,33);Ae.toXOnly=Og;function Rg(e,t,r){const n=Jg(t,e,r);try{const s=Yg(t,n).concat(n.script).concat(n.controlBlock);return{finalScriptWitness:(0,Zs.witnessStackToScriptWitness)(s)}}catch(i){throw new Error(`Can not finalize taproot input #${e}: ${i}`)}}Ae.tapScriptFinalizer=Rg;function Ng(e,t){const r=t?Buffer.from([t]):Buffer.from([]);return Buffer.concat([e,r])}var ys=Ae.serializeTaprootSignature=Ng;function ms(e){return e&&!!(e.tapInternalKey||e.tapMerkleRoot||e.tapLeafScript&&e.tapLeafScript.length||e.tapBip32Derivation&&e.tapBip32Derivation.length||e.witnessUtxo&&(0,Zs.isP2TR)(e.witnessUtxo.script))}Ae.isTaprootInput=ms;function bs(e,t){return e&&!!(e.tapInternalKey||e.tapTree||e.tapBip32Derivation&&e.tapBip32Derivation.length||t&&(0,Zs.isP2TR)(t))}Ae.isTaprootOutput=bs;function Ug(e,t,r){Vg(e,t,r),Kg(e,t,r)}Ae.checkTaprootInputFields=Ug;function Lg(e,t,r){Wg(e,t,r),Fg(e,t)}Ae.checkTaprootOutputFields=Lg;function Fg(e,t){if(!t.tapTree&&!t.tapInternalKey)return;const r=t.tapInternalKey||e.tapInternalKey,n=t.tapTree||e.tapTree;if(r){const{script:i}=e,s=Mg(r,n);if(i&&!i.equals(s))throw new Error("Error adding output. Script or address missmatch.")}}function Mg(e,t){const r=t&&el(t.leaves),{output:n}=(0,Bg.p2tr)({internalPubkey:e,scriptTree:r});return n}function $g(e,t){const r=t.tapInternalKey,n=r&&(0,gr.tweakKey)(r,t.tapMerkleRoot);if(!n)throw new Error(`Cannot tweak tap internal key for input #${e}. Public key: ${r&&r.toString("hex")}`);return n.x}Ae.tweakInternalPubKey=$g;function Hg(e){if(!(0,vc.isTaptree)(e))throw new Error("Cannot convert taptree to tapleaf list. Expecting a tapree structure.");return Ea(e)}Ae.tapTreeToList=Hg;function el(e=[]){return e.length===1&&e[0].depth===0?{output:e[0].script,version:e[0].leafVersion}:qg(e)}Ae.tapTreeFromList=el;function Dg(e,t){return Gg(e).some(n=>(0,Cg.signatureBlocksAction)(n,jg,t))}Ae.checkTaprootInputForSigs=Dg;function jg(e){return{signature:e.slice(0,64),hashType:e.slice(64)[0]||Ig.Transaction.SIGHASH_DEFAULT}}function Gg(e){const t=[];if(e.tapKeySig&&t.push(e.tapKeySig),e.tapScriptSig&&t.push(...e.tapScriptSig.map(r=>r.signature)),!t.length){const r=zg(e.finalScriptWitness);r&&t.push(r)}return t}function zg(e){if(!e)return;const t=e.slice(2);if(t.length===64||t.length===65)return t}function Ea(e,t=[],r=0){if(r>gr.MAX_TAPTREE_DEPTH)throw new Error("Max taptree depth exceeded.");return e?(0,vc.isTapleaf)(e)?(t.push({depth:r,leafVersion:e.version||gr.LEAF_VERSION_TAPSCRIPT,script:e.output}),t):(e[0]&&Ea(e[0],t,r+1),e[1]&&Ea(e[1],t,r+1),t):[]}function qg(e){let t;for(const r of e)if(t=xa(r,t),!t)throw new Error("No room left to insert tapleaf in tree");return t}function xa(e,t,r=0){if(r>gr.MAX_TAPTREE_DEPTH)throw new Error("Max taptree depth exceeded.");if(e.depth===r)return t?void 0:{output:e.script,version:e.leafVersion};if((0,vc.isTapleaf)(t))return;const n=xa(e,t&&t[0],r+1);if(n)return[n,t&&t[1]];const i=xa(e,t&&t[1],r+1);if(i)return[t&&t[0],i]}function Vg(e,t,r){const n=ms(e)&&fn(t),i=fn(e)&&ms(t),s=e===t&&ms(t)&&fn(t);if(n||i||s)throw new Error(`Invalid arguments for Psbt.${r}. Cannot use both taproot and non-taproot fields.`)}function Wg(e,t,r){const n=bs(e)&&fn(t),i=fn(e)&&bs(t),s=e===t&&bs(t)&&fn(t);if(n||i||s)throw new Error(`Invalid arguments for Psbt.${r}. Cannot use both taproot and non-taproot fields.`)}function Kg(e,t,r){if(t.tapMerkleRoot){const n=(t.tapLeafScript||[]).every(s=>Ho(s,t.tapMerkleRoot)),i=(e.tapLeafScript||[]).every(s=>Ho(s,t.tapMerkleRoot));if(!n||!i)throw new Error(`Invalid arguments for Psbt.${r}. Tapleaf not part of taptree.`)}else if(e.tapMerkleRoot&&!(t.tapLeafScript||[]).every(i=>Ho(i,e.tapMerkleRoot)))throw new Error(`Invalid arguments for Psbt.${r}. Tapleaf not part of taptree.`)}function Ho(e,t){if(!t)return!0;const r=(0,gr.tapleafHash)({output:e.script,version:e.leafVersion});return(0,gr.rootHashFromPath)(e.controlBlock,r).equals(t)}function Yg(e,t){const r=(0,gr.tapleafHash)({output:t.script,version:t.leafVersion});return(e.tapScriptSig||[]).filter(n=>n.leafHash.equals(r)).map(n=>Xg(t.script,n)).sort((n,i)=>i.positionInScript-n.positionInScript).map(n=>n.signature)}function Xg(e,t){return Object.assign({positionInScript:(0,Zs.pubkeyPositionInScript)(t.pubkey,e)},t)}function Jg(e,t,r){if(!e.tapScriptSig||!e.tapScriptSig.length)throw new Error(`Can not finalize taproot input #${t}. No tapleaf script signature provided.`);const n=(e.tapLeafScript||[]).sort((i,s)=>i.controlBlock.length-s.controlBlock.length).find(i=>Qg(i,e.tapScriptSig,r));if(!n)throw new Error(`Can not finalize taproot input #${t}. Signature for tapleaf script not found.`);return n}function Qg(e,t,r){const n=(0,gr.tapleafHash)({output:e.script,version:e.leafVersion});return(!r||r.equals(n))&&t.find(s=>s.leafHash.equals(n))!==void 0}function fn(e){return e&&!!(e.redeemScript||e.witnessScript||e.bip32Derivation&&e.bip32Derivation.length)}const Fe={secretMismatch:"invalid secret",secretHashLenMismatch:"secret hash should be 32 bytes",pubkeyLenMismatch:"pubkey should be 32 bytes",zeroOrNegativeExpiry:"expiry should be greater than 0",htlcAddressGenerationFailed:"failed to generate htlc address",notFunded:"address not funded",noCounterpartySigs:"counterparty signatures are required",counterPartySigNotFound:e=>"counterparty signature not found for utxo "+e,invalidCounterpartySigForUTXO:e=>"invalid counterparty signature for utxo "+e,htlcNotExpired:e=>`HTLC not expired, need more ${e} blocks`,controlBlockGenerationFailed:"failed to generate control block",invalidLeaf:"invalid leaf"},os=192;ce.initEccLib(Or);class Zn{constructor(t,r,n,i,s,o,a,c){this.secretHash=n,this.redeemerPubkey=i,this.initiatorPubkey=s,this.expiry=o,this.signer=t,this.network=a,this.internalPubkey=fb(),this.initiateAmount=r,this.utxoHashes=c}static async from(t,r,n,i,s,o,a){n=n.startsWith("0x")?n.slice(2):n,Pr(n.length===64,Fe.secretHashLenMismatch),Pr(i.length===64||i.length===66,`initiator ${Fe.pubkeyLenMismatch}`),Pr(s.length===64||s.length===66,`redeemer ${Fe.pubkeyLenMismatch}`),Pr(o>0,Fe.zeroOrNegativeExpiry);const c=await t.getNetwork();return new Zn(t,r,n,wa(s).toString("hex"),wa(i).toString("hex"),o,c,a)}address(){const{address:t}=ce.payments.p2tr({internalPubkey:this.internalPubkey,network:this.network,scriptTree:this.leaves()});if(!t)throw new Error(Fe.htlcAddressGenerationFailed);return t}id(){return this.address()}async _buildRawTx(t,r){const n=new ce.Transaction;n.version=2;const i=this.address(),s=await this.signer.getProvider();let o=[];if(this.utxoHashes&&this.utxoHashes.length>0)for(const c of this.utxoHashes){const f=await s.getTransaction(c);for(let l=0;l<f.vout.length;l++){const h=f.vout[l];h.scriptpubkey_address===i&&o.push({txid:f.txid,vout:l,value:h.value,status:{confirmed:!1}})}}else o=await s.getUTXOs(i);const a=o.reduce((c,f)=>c+f.value,0);if(a===0)throw new Error(`${i} ${Fe.notFunded}`);for(let c=0;c<o.length;c++)n.addInput(Buffer.from(o[c].txid,"hex").reverse(),o[c].vout);return r??(r=await s.suggestFee(i,a,ln.Urgency.MEDIUM)),n.addOutput(ce.address.toOutputScript(t,this.network),a-r),{tx:n,usedUtxos:o}}async _tempBuildRawTx(t,r){const n=new ce.Transaction;n.version=2;const i=this.address(),s=await this.signer.getProvider();let o=[];if(this.utxoHashes&&this.utxoHashes.length>0)for(const c of this.utxoHashes){const f=await s.getTransaction(c);for(let l=0;l<f.vout.length;l++){const h=f.vout[l];h.scriptpubkey_address===i&&o.push({txid:f.txid,vout:l,value:h.value,status:{confirmed:!1}})}}else o=await s.getUTXOs(i);const a=o.reduce((c,f)=>c+f.value,0);if(a===0)throw new Error(`${i} ${Fe.notFunded}`);for(let c=0;c<o.length;c++)n.addInput(Buffer.from(o[c].txid,"hex").reverse(),o[c].vout);if(n.addOutput(ce.address.toOutputScript(t,this.network),a),r){const c=await s.getFeeRates(),f=Math.ceil(c.hourFee*r),l=a-f;n.outs[0].value=l}return{tx:n,usedUtxos:o}}async buildRawTx(t){return await this._buildRawTx(await this.signer.getAddress(),t)}getOutputScript(){return ce.address.toOutputScript(this.address(),this.network)}async init(t){return t??(t=await(await this.signer.getProvider()).suggestFee(await this.signer.getAddress(),this.initiateAmount,ln.Urgency.MEDIUM)),await this.signer.send(this.address(),this.initiateAmount,t)}async generateRedeemSACP(t,r,n){const{tx:i,usedUtxos:s}=await this._buildRawTx(r,n),o=this.getOutputScript(),a=ce.Transaction.SIGHASH_SINGLE|ce.Transaction.SIGHASH_ANYONECANPAY,c=this.leafHash(1),f=s.map(h=>h.value),l=Jr(o,s.length);for(let h=0;h<i.ins.length;h++){const y=i.hashForWitnessV1(h,l,f,a,c),p=await this.signer.signSchnorr(y);i.setWitness(h,[ys(p,a),Buffer.from(t,"hex"),this.redeemLeaf(),this.generateControlBlockFor(1)])}return i.toHex()}async generateInstantRefundSACP(t,r){const{tx:n,usedUtxos:i}=await this._buildRawTx(t,r),s=this.getOutputScript(),o=ce.Transaction.SIGHASH_SINGLE|ce.Transaction.SIGHASH_ANYONECANPAY,a=this.leafHash(2),c=i.map(l=>l.value),f=Jr(s,i.length);for(let l=0;l<n.ins.length;l++){const h=n.hashForWitnessV1(l,f,c,o,a),y=await this.signer.signSchnorr(h);n.setWitness(l,[ys(y,o),ys(y,o),this.instantRefundLeaf(),this.generateControlBlockFor(2)])}return n.toHex()}async instantRefund(t,r){Pr(t.length>0,Fe.noCounterpartySigs);const{tx:n,usedUtxos:i}=await this.buildRawTx(r);for(const h of i)if(!t.find(y=>y.utxo===h.txid))throw new Error(Fe.counterPartySigNotFound(h.txid));const s=this.getOutputScript(),o=ce.Transaction.SIGHASH_DEFAULT,a=this.leafHash(2),c=i.map(h=>h.value),f=Jr(s,i.length);for(let h=0;h<n.ins.length;h++){const y=n.hashForWitnessV1(h,f,c,o,a);if(!Or.verifySchnorr(y,Buffer.from(this.redeemerPubkey,"hex"),Buffer.from(t[h].sig,"hex")))throw new Error(Fe.invalidCounterpartySigForUTXO(t[h].utxo));const p=await this.signer.signSchnorr(y),g=Buffer.from(n.ins[h].hash).reverse().toString("hex"),_=t.find(x=>x.utxo===g);if(!_)throw new Error(Fe.counterPartySigNotFound(g));n.setWitness(h,[Buffer.from(_.sig,"hex"),p,this.instantRefundLeaf(),this.generateControlBlockFor(2)])}return await(await this.signer.getProvider()).broadcast(n.toHex())}async redeem(t,r){Pr(ce.crypto.sha256(Buffer.from(t,"hex")).toString("hex")===this.secretHash,Fe.secretMismatch);const n=r??await this.signer.getAddress(),{tx:i,usedUtxos:s}=await this._tempBuildRawTx(n),o=this.leafHash(1),a=s.map(y=>y.value),c=Jr(this.getOutputScript(),s.length),f=ce.Transaction.SIGHASH_DEFAULT;for(let y=0;y<i.ins.length;y++){const p=i.hashForWitnessV1(y,c,a,f,o),g=await this.signer.signSchnorr(p);i.setWitness(y,[g,Buffer.from(t,"hex"),this.redeemLeaf(),this.generateControlBlockFor(1)])}const{tx:l}=await this._tempBuildRawTx(n,i.virtualSize());for(let y=0;y<l.ins.length;y++){const p=l.hashForWitnessV1(y,c,a,f,o),g=await this.signer.signSchnorr(p);l.setWitness(y,[g,Buffer.from(t,"hex"),this.redeemLeaf(),this.generateControlBlockFor(1)])}return await(await this.signer.getProvider()).broadcast(l.toHex())}async getRedeemHex(t,r){Pr(ce.crypto.sha256(Buffer.from(t,"hex")).toString("hex")===this.secretHash,Fe.secretMismatch);const n=r??await this.signer.getAddress(),{tx:i,usedUtxos:s}=await this._tempBuildRawTx(n),o=this.leafHash(1),a=s.map(h=>h.value),c=Jr(this.getOutputScript(),s.length),f=ce.Transaction.SIGHASH_DEFAULT;for(let h=0;h<i.ins.length;h++){const y=i.hashForWitnessV1(h,c,a,f,o),p=await this.signer.signSchnorr(y);i.setWitness(h,[p,Buffer.from(t,"hex"),this.redeemLeaf(),this.generateControlBlockFor(1)])}const{tx:l}=await this._tempBuildRawTx(n,i.virtualSize());for(let h=0;h<l.ins.length;h++){const y=l.hashForWitnessV1(h,c,a,f,o),p=await this.signer.signSchnorr(y);l.setWitness(h,[p,Buffer.from(t,"hex"),this.redeemLeaf(),this.generateControlBlockFor(1)])}return l.toHex()}async refund(t,r){const{tx:n,usedUtxos:i}=await this._buildRawTx(t??await this.signer.getAddress(),r),[s,o]=await this.canRefund(i);if(!s)throw new Error(Fe.htlcNotExpired(o));const a=this.leafHash(0),c=i.map(y=>y.value),f=Jr(this.getOutputScript(),i.length),l=ce.Transaction.SIGHASH_DEFAULT;for(let y=0;y<n.ins.length;y++){n.ins[y].sequence=this.expiry;const p=n.hashForWitnessV1(y,f,c,l,a),g=await this.signer.signSchnorr(p);n.setWitness(y,[g,this.refundLeaf(),this.generateControlBlockFor(0)])}return await(await this.signer.getProvider()).broadcast(n.toHex())}async canRefund(t){const n=await(await this.signer.getProvider()).getLatestTip();for(const i of t){let s=0;if(i.status.confirmed&&i.status.block_height+this.expiry>n?s=i.status.block_height+this.expiry-n+1:i.status.confirmed||(s=this.expiry+1),s>0)return[!1,s]}return[!0,0]}generateControlBlockFor(t){let r;switch(t){case 1:r=this.redeemLeaf();break;case 0:r=this.refundLeaf();break;case 2:r=this.instantRefundLeaf();break;default:throw new Error(Fe.invalidLeaf)}const n=ce.payments.p2tr({internalPubkey:this.internalPubkey,network:this.network,scriptTree:this.leaves(),redeem:{output:r,redeemVersion:os}});if(!n.witness)throw new Error(Fe.controlBlockGenerationFailed);return n.witness[n.witness.length-1]}leafHash(t){let r=this.redeemLeaf();return t===0&&(r=this.refundLeaf()),t===2&&(r=this.instantRefundLeaf()),ce.crypto.taggedHash("TapLeaf",Xm(r))}refundLeaf(){return ce.script.fromASM(`
|
|
50
|
+
${ce.script.number.encode(this.expiry).toString("hex")}
|
|
51
|
+
OP_CHECKSEQUENCEVERIFY
|
|
52
|
+
OP_DROP
|
|
53
|
+
${this.initiatorPubkey}
|
|
54
|
+
OP_CHECKSIG
|
|
55
|
+
`.trim().replace(/\s+/g," "))}redeemLeaf(){return ce.script.fromASM(`
|
|
56
|
+
OP_SHA256
|
|
57
|
+
${this.secretHash}
|
|
58
|
+
OP_EQUALVERIFY
|
|
59
|
+
${this.redeemerPubkey}
|
|
60
|
+
OP_CHECKSIG
|
|
61
|
+
`.trim().replace(/\s+/g," "))}instantRefundLeaf(){return ce.script.fromASM(`
|
|
62
|
+
${this.initiatorPubkey}
|
|
63
|
+
OP_CHECKSIG
|
|
64
|
+
${this.redeemerPubkey}
|
|
65
|
+
OP_CHECKSIGADD
|
|
66
|
+
OP_2
|
|
67
|
+
OP_NUMEQUAL
|
|
68
|
+
`.trim().replace(/\s+/g," "))}leaves(){return[{version:os,output:this.redeemLeaf()},[{version:os,output:this.refundLeaf()},{version:os,output:this.instantRefundLeaf()}]]}generateMerkleProofFor(t){const r=this.leafHash(1),n=this.leafHash(2),i=this.leafHash(0);switch(t){case 1:{const s=Qm(i,n);return[ce.crypto.taggedHash("TapBranch",Buffer.concat(s))]}case 0:return[n,r];case 2:return[i,r];default:throw new Error(Fe.invalidLeaf)}}}function Jr(e,t){const r=[];for(let n=0;n<t;n++)r.push(e);return r}class Zg{constructor(){this.cache={}}set(t,r,n,i){const s={txHash:n,timeStamp:Date.now(),btcRedeemUTXO:i};this.cache[`${r}_${t.create_order.create_id}`]=s}get(t,r){return this.cache[`${r}_${t.create_order.create_id}`]||null}remove(t,r){delete this.cache[`${r}_${t.create_order.create_id}`]}}class e1{constructor(){this.cache={}}set(t,r){this.cache[t]=r}get(t){return this.cache[t]||null}}class tl{constructor(t,r){this.url=new z.Url(t).endpoint("blocknumbers").endpoint(r)}async fetchBlockNumbers(){try{const t=await Dt.get(this.url);return ie(t)}catch(t){return G("Failed to fetch block numbers",t)}}}const Xn={mainnet:{orderbook:"https://api.garden.finance",auth:"https://api.garden.finance/auth",quote:"https://api.garden.finance/quote",info:"https://api.garden.finance/info",evmRelay:"https://api.garden.finance/relayer",starknetRelay:"https://api.garden.finance/starknet"},testnet:{orderbook:"https://testnet.api.garden.finance",auth:"https://testnet.api.garden.finance/auth",quote:"https://testnet.api.garden.finance/quote",info:"https://testnet.api.garden.finance/info",evmRelay:"https://testnet.api.garden.finance/relayer",starknetRelay:"https://testnet.api.garden.finance/starknet"},localnet:{orderbook:"",auth:"",quote:"",info:"",evmRelay:"",starknetRelay:""}},ki={[z.Network.MAINNET]:{chainId:"0x534e5f4d41494e",nodeUrl:"https://starknet-mainnet.public.blastapi.io/rpc/v0_8"},[z.Network.TESTNET]:{chainId:"0x534e5f5345504f4c4941",nodeUrl:"https://starknet-sepolia.public.blastapi.io/rpc/v0_8"}};class rl{constructor(t){this.quoteUrl=new z.Url(t)}async getQuote(t,r,n=!1,i){try{const s=this.quoteUrl.endpoint("/").addSearchParams({order_pair:t,amount:r.toString(),exact_out:n.toString()}),o=await Dt.get(s,{retryCount:0,...i});return o.error?G(o.error):o.result?ie(o.result):G("GetQuote: Unexpected error, result is undefined")}catch(s){return G("GetQuote:",String(s))}}async getAttestedQuote(t){try{const r=await Dt.post(this.quoteUrl.endpoint("/attested").toString(),{body:JSON.stringify(t),headers:{"Content-Type":"application/json"}});return r.error?G(r.error):r.result?ie(r.result):G("GetAttestedQuote: Unexpected error, result is undefined")}catch(r){return console.log("error :",r),G("GetAttestedQuote:",String(r))}}async getStrategies(){try{const t=await Dt.get(this.quoteUrl.endpoint("/strategies"));if(t.error)return G(t.error);if(!t.result)return G("GetStrategies: Unexpected error, result is undefined");const r={};for(const n of Object.values(t.result)){const i=Rd(n.source_chain,n.source_asset.asset,n.dest_chain,n.dest_asset.asset);r[i]={id:n.id,minAmount:n.min_amount,maxAmount:n.max_amount,fee:n.fee}}return ie(r)}catch(t){return G("GetStrategies:",String(t))}}}var nl={},wn={},_n={};Object.defineProperty(_n,"__esModule",{value:!0});_n.testnet=_n.bitcoin=void 0;_n.bitcoin={messagePrefix:`Bitcoin Signed Message:
|
|
69
|
+
`,bech32:"bc",bip32:{public:76067358,private:76066276},pubKeyHash:0,scriptHash:5,wif:128};_n.testnet={messagePrefix:`Bitcoin Signed Message:
|
|
70
|
+
`,bech32:"tb",bip32:{public:70617039,private:70615956},pubKeyHash:111,scriptHash:196,wif:239};var il={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.maybe=e.Boolean=e.Array=e.Buffer256bit=e.Network=e.typeforce=void 0,e.typeforce=Dd,e.Network=e.typeforce.compile({messagePrefix:e.typeforce.oneOf(e.typeforce.Buffer,e.typeforce.String),bip32:{public:e.typeforce.UInt32,private:e.typeforce.UInt32},pubKeyHash:e.typeforce.UInt8,scriptHash:e.typeforce.UInt8,wif:e.typeforce.UInt8}),e.Buffer256bit=e.typeforce.BufferN(32),e.Array=e.typeforce.Array,e.Boolean=e.typeforce.Boolean,e.maybe=e.typeforce.maybe})(il);var Aa={exports:{}},Sa={exports:{}};/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */(function(e,t){var r=Zt,n=r.Buffer;function i(o,a){for(var c in o)a[c]=o[c]}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?e.exports=r:(i(r,t),t.Buffer=s);function s(o,a,c){return n(o,a,c)}s.prototype=Object.create(n.prototype),i(n,s),s.from=function(o,a,c){if(typeof o=="number")throw new TypeError("Argument must not be a number");return n(o,a,c)},s.alloc=function(o,a,c){if(typeof o!="number")throw new TypeError("Argument must be a number");var f=n(o);return a!==void 0?typeof c=="string"?f.fill(a,c):f.fill(a):f.fill(0),f},s.allocUnsafe=function(o){if(typeof o!="number")throw new TypeError("Argument must be a number");return n(o)},s.allocUnsafeSlow=function(o){if(typeof o!="number")throw new TypeError("Argument must be a number");return r.SlowBuffer(o)}})(Sa,Sa.exports);var tt=Sa.exports,Do=65536,t1=4294967295;function r1(){throw new Error(`Secure random number generation is not supported by this browser.
|
|
71
|
+
Use Chrome, Firefox or Internet Explorer 11`)}var n1=tt.Buffer,Ss=br.crypto||br.msCrypto;Ss&&Ss.getRandomValues?Aa.exports=i1:Aa.exports=r1;function i1(e,t){if(e>t1)throw new RangeError("requested too many random bytes");var r=n1.allocUnsafe(e);if(e>0)if(e>Do)for(var n=0;n<e;n+=Do)Ss.getRandomValues(r.slice(n,n+Do));else Ss.getRandomValues(r);return typeof t=="function"?process.nextTick(function(){t(null,r)}):r}var s1=Aa.exports,Pa={exports:{}};typeof Object.create=="function"?Pa.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:Pa.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}};var He=Pa.exports,Ta={exports:{}},Ec={exports:{}},dn=typeof Reflect=="object"?Reflect:null,Tu=dn&&typeof dn.apply=="function"?dn.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},gs;dn&&typeof dn.ownKeys=="function"?gs=dn.ownKeys:Object.getOwnPropertySymbols?gs=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:gs=function(t){return Object.getOwnPropertyNames(t)};function o1(e){console&&console.warn&&console.warn(e)}var sl=Number.isNaN||function(t){return t!==t};function ue(){ue.init.call(this)}Ec.exports=ue;Ec.exports.once=f1;ue.EventEmitter=ue;ue.prototype._events=void 0;ue.prototype._eventsCount=0;ue.prototype._maxListeners=void 0;var ku=10;function eo(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(ue,"defaultMaxListeners",{enumerable:!0,get:function(){return ku},set:function(e){if(typeof e!="number"||e<0||sl(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");ku=e}});ue.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};ue.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||sl(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function ol(e){return e._maxListeners===void 0?ue.defaultMaxListeners:e._maxListeners}ue.prototype.getMaxListeners=function(){return ol(this)};ue.prototype.emit=function(t){for(var r=[],n=1;n<arguments.length;n++)r.push(arguments[n]);var i=t==="error",s=this._events;if(s!==void 0)i=i&&s.error===void 0;else if(!i)return!1;if(i){var o;if(r.length>0&&(o=r[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var c=s[t];if(c===void 0)return!1;if(typeof c=="function")Tu(c,this,r);else for(var f=c.length,l=dl(c,f),n=0;n<f;++n)Tu(l[n],this,r);return!0};function al(e,t,r,n){var i,s,o;if(eo(r),s=e._events,s===void 0?(s=e._events=Object.create(null),e._eventsCount=0):(s.newListener!==void 0&&(e.emit("newListener",t,r.listener?r.listener:r),s=e._events),o=s[t]),o===void 0)o=s[t]=r,++e._eventsCount;else if(typeof o=="function"?o=s[t]=n?[r,o]:[o,r]:n?o.unshift(r):o.push(r),i=ol(e),i>0&&o.length>i&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=e,a.type=t,a.count=o.length,o1(a)}return e}ue.prototype.addListener=function(t,r){return al(this,t,r,!1)};ue.prototype.on=ue.prototype.addListener;ue.prototype.prependListener=function(t,r){return al(this,t,r,!0)};function a1(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function cl(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=a1.bind(n);return i.listener=r,n.wrapFn=i,i}ue.prototype.once=function(t,r){return eo(r),this.on(t,cl(this,t,r)),this};ue.prototype.prependOnceListener=function(t,r){return eo(r),this.prependListener(t,cl(this,t,r)),this};ue.prototype.removeListener=function(t,r){var n,i,s,o,a;if(eo(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(s=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){a=n[o].listener,s=o;break}if(s<0)return this;s===0?n.shift():c1(n,s),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,a||r)}return this};ue.prototype.off=ue.prototype.removeListener;ue.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var s=Object.keys(n),o;for(i=0;i<s.length;++i)o=s[i],o!=="removeListener"&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(r=n[t],typeof r=="function")this.removeListener(t,r);else if(r!==void 0)for(i=r.length-1;i>=0;i--)this.removeListener(t,r[i]);return this};function ul(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?u1(i):dl(i,i.length)}ue.prototype.listeners=function(t){return ul(this,t,!0)};ue.prototype.rawListeners=function(t){return ul(this,t,!1)};ue.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):fl.call(e,t)};ue.prototype.listenerCount=fl;function fl(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}ue.prototype.eventNames=function(){return this._eventsCount>0?gs(this._events):[]};function dl(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e[n];return r}function c1(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}function u1(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}function f1(e,t){return new Promise(function(r,n){function i(o){e.removeListener(t,s),n(o)}function s(){typeof e.removeListener=="function"&&e.removeListener("error",i),r([].slice.call(arguments))}ll(e,t,s,{once:!0}),t!=="error"&&d1(e,i,{once:!0})})}function d1(e,t,r){typeof e.on=="function"&&ll(e,"error",t,r)}function ll(e,t,r,n){if(typeof e.on=="function")n.once?e.once(t,r):e.on(t,r);else if(typeof e.addEventListener=="function")e.addEventListener(t,function i(s){n.once&&e.removeEventListener(t,i),r(s)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e)}var hl=Ec.exports,pl=hl.EventEmitter;const l1={},h1=Object.freeze(Object.defineProperty({__proto__:null,default:l1},Symbol.toStringTag,{value:"Module"})),xc=bm(h1);var jo,Iu;function p1(){if(Iu)return jo;Iu=1;function e(g,_){var x=Object.keys(g);if(Object.getOwnPropertySymbols){var k=Object.getOwnPropertySymbols(g);_&&(k=k.filter(function(T){return Object.getOwnPropertyDescriptor(g,T).enumerable})),x.push.apply(x,k)}return x}function t(g){for(var _=1;_<arguments.length;_++){var x=arguments[_]!=null?arguments[_]:{};_%2?e(Object(x),!0).forEach(function(k){r(g,k,x[k])}):Object.getOwnPropertyDescriptors?Object.defineProperties(g,Object.getOwnPropertyDescriptors(x)):e(Object(x)).forEach(function(k){Object.defineProperty(g,k,Object.getOwnPropertyDescriptor(x,k))})}return g}function r(g,_,x){return _=o(_),_ in g?Object.defineProperty(g,_,{value:x,enumerable:!0,configurable:!0,writable:!0}):g[_]=x,g}function n(g,_){if(!(g instanceof _))throw new TypeError("Cannot call a class as a function")}function i(g,_){for(var x=0;x<_.length;x++){var k=_[x];k.enumerable=k.enumerable||!1,k.configurable=!0,"value"in k&&(k.writable=!0),Object.defineProperty(g,o(k.key),k)}}function s(g,_,x){return _&&i(g.prototype,_),Object.defineProperty(g,"prototype",{writable:!1}),g}function o(g){var _=a(g,"string");return typeof _=="symbol"?_:String(_)}function a(g,_){if(typeof g!="object"||g===null)return g;var x=g[Symbol.toPrimitive];if(x!==void 0){var k=x.call(g,_);if(typeof k!="object")return k;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(g)}var c=Zt,f=c.Buffer,l=xc,h=l.inspect,y=h&&h.custom||"inspect";function p(g,_,x){f.prototype.copy.call(g,_,x)}return jo=function(){function g(){n(this,g),this.head=null,this.tail=null,this.length=0}return s(g,[{key:"push",value:function(x){var k={data:x,next:null};this.length>0?this.tail.next=k:this.head=k,this.tail=k,++this.length}},{key:"unshift",value:function(x){var k={data:x,next:this.head};this.length===0&&(this.tail=k),this.head=k,++this.length}},{key:"shift",value:function(){if(this.length!==0){var x=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,x}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(x){if(this.length===0)return"";for(var k=this.head,T=""+k.data;k=k.next;)T+=x+k.data;return T}},{key:"concat",value:function(x){if(this.length===0)return f.alloc(0);for(var k=f.allocUnsafe(x>>>0),T=this.head,A=0;T;)p(T.data,k,A),A+=T.data.length,T=T.next;return k}},{key:"consume",value:function(x,k){var T;return x<this.head.data.length?(T=this.head.data.slice(0,x),this.head.data=this.head.data.slice(x)):x===this.head.data.length?T=this.shift():T=k?this._getString(x):this._getBuffer(x),T}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(x){var k=this.head,T=1,A=k.data;for(x-=A.length;k=k.next;){var E=k.data,I=x>E.length?E.length:x;if(I===E.length?A+=E:A+=E.slice(0,x),x-=I,x===0){I===E.length?(++T,k.next?this.head=k.next:this.head=this.tail=null):(this.head=k,k.data=E.slice(I));break}++T}return this.length-=T,A}},{key:"_getBuffer",value:function(x){var k=f.allocUnsafe(x),T=this.head,A=1;for(T.data.copy(k),x-=T.data.length;T=T.next;){var E=T.data,I=x>E.length?E.length:x;if(E.copy(k,k.length-x,0,I),x-=I,x===0){I===E.length?(++A,T.next?this.head=T.next:this.head=this.tail=null):(this.head=T,T.data=E.slice(I));break}++A}return this.length-=A,k}},{key:y,value:function(x,k){return h(this,t(t({},k),{},{depth:0,customInspect:!1}))}}]),g}(),jo}function y1(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(ka,this,e)):process.nextTick(ka,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(s){!t&&s?r._writableState?r._writableState.errorEmitted?process.nextTick(ws,r):(r._writableState.errorEmitted=!0,process.nextTick(Bu,r,s)):process.nextTick(Bu,r,s):t?(process.nextTick(ws,r),t(s)):process.nextTick(ws,r)}),this)}function Bu(e,t){ka(e,t),ws(e)}function ws(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function m1(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function ka(e,t){e.emit("error",t)}function b1(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}var yl={destroy:y1,undestroy:m1,errorOrDestroy:b1},Gr={};function g1(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var ml={};function mt(e,t,r){r||(r=Error);function n(s,o,a){return typeof t=="string"?t:t(s,o,a)}var i=function(s){g1(o,s);function o(a,c,f){return s.call(this,n(a,c,f))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,ml[e]=i}function Cu(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function w1(e,t,r){return e.substr(0,t.length)===t}function _1(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function v1(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}mt("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);mt("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&w1(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(_1(e," argument"))i="The ".concat(e," ").concat(n," ").concat(Cu(t,"type"));else{var s=v1(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(s," ").concat(n," ").concat(Cu(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);mt("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");mt("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});mt("ERR_STREAM_PREMATURE_CLOSE","Premature close");mt("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});mt("ERR_MULTIPLE_CALLBACK","Callback called multiple times");mt("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");mt("ERR_STREAM_WRITE_AFTER_END","write after end");mt("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);mt("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);mt("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");Gr.codes=ml;var E1=Gr.codes.ERR_INVALID_OPT_VALUE;function x1(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function A1(e,t,r,n){var i=x1(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var s=n?r:"highWaterMark";throw new E1(s,i)}return Math.floor(i)}return e.objectMode?16:16*1024}var bl={getHighWaterMark:A1},S1=P1;function P1(e,t){if(Go("noDeprecation"))return e;var r=!1;function n(){if(!r){if(Go("throwDeprecation"))throw new Error(t);Go("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function Go(e){try{if(!br.localStorage)return!1}catch{return!1}var t=br.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}var zo,Ou;function gl(){if(Ou)return zo;Ou=1,zo=$;function e(O){var C=this;this.next=null,this.entry=null,this.finish=function(){Rt(C,O)}}var t;$.WritableState=S;var r={deprecate:S1},n=pl,i=Zt.Buffer,s=(typeof br<"u"?br:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function o(O){return i.from(O)}function a(O){return i.isBuffer(O)||O instanceof s}var c=yl,f=bl,l=f.getHighWaterMark,h=Gr.codes,y=h.ERR_INVALID_ARG_TYPE,p=h.ERR_METHOD_NOT_IMPLEMENTED,g=h.ERR_MULTIPLE_CALLBACK,_=h.ERR_STREAM_CANNOT_PIPE,x=h.ERR_STREAM_DESTROYED,k=h.ERR_STREAM_NULL_VALUES,T=h.ERR_STREAM_WRITE_AFTER_END,A=h.ERR_UNKNOWN_ENCODING,E=c.errorOrDestroy;He($,n);function I(){}function S(O,C,H){t=t||vn(),O=O||{},typeof H!="boolean"&&(H=C instanceof t),this.objectMode=!!O.objectMode,H&&(this.objectMode=this.objectMode||!!O.writableObjectMode),this.highWaterMark=l(this,O,"writableHighWaterMark",H),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var K=O.decodeStrings===!1;this.decodeStrings=!K,this.defaultEncoding=O.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(Z){ne(C,Z)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=O.emitClose!==!1,this.autoDestroy=!!O.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new e(this)}S.prototype.getBuffer=function(){for(var C=this.bufferedRequest,H=[];C;)H.push(C),C=C.next;return H},function(){try{Object.defineProperty(S.prototype,"buffer",{get:r.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var L;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(L=Function.prototype[Symbol.hasInstance],Object.defineProperty($,Symbol.hasInstance,{value:function(C){return L.call(this,C)?!0:this!==$?!1:C&&C._writableState instanceof S}})):L=function(C){return C instanceof this};function $(O){t=t||vn();var C=this instanceof t;if(!C&&!L.call($,this))return new $(O);this._writableState=new S(O,this,C),this.writable=!0,O&&(typeof O.write=="function"&&(this._write=O.write),typeof O.writev=="function"&&(this._writev=O.writev),typeof O.destroy=="function"&&(this._destroy=O.destroy),typeof O.final=="function"&&(this._final=O.final)),n.call(this)}$.prototype.pipe=function(){E(this,new _)};function B(O,C){var H=new T;E(O,H),process.nextTick(C,H)}function W(O,C,H,K){var Z;return H===null?Z=new k:typeof H!="string"&&!C.objectMode&&(Z=new y("chunk",["string","Buffer"],H)),Z?(E(O,Z),process.nextTick(K,Z),!1):!0}$.prototype.write=function(O,C,H){var K=this._writableState,Z=!1,w=!K.objectMode&&a(O);return w&&!i.isBuffer(O)&&(O=o(O)),typeof C=="function"&&(H=C,C=null),w?C="buffer":C||(C=K.defaultEncoding),typeof H!="function"&&(H=I),K.ending?B(this,H):(w||W(this,K,O,H))&&(K.pendingcb++,Z=D(this,K,w,O,C,H)),Z},$.prototype.cork=function(){this._writableState.corked++},$.prototype.uncork=function(){var O=this._writableState;O.corked&&(O.corked--,!O.writing&&!O.corked&&!O.bufferProcessing&&O.bufferedRequest&&Te(this,O))},$.prototype.setDefaultEncoding=function(C){if(typeof C=="string"&&(C=C.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((C+"").toLowerCase())>-1))throw new A(C);return this._writableState.defaultEncoding=C,this},Object.defineProperty($.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function R(O,C,H){return!O.objectMode&&O.decodeStrings!==!1&&typeof C=="string"&&(C=i.from(C,H)),C}Object.defineProperty($.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function D(O,C,H,K,Z,w){if(!H){var v=R(C,K,Z);K!==v&&(H=!0,Z="buffer",K=v)}var M=C.objectMode?1:K.length;C.length+=M;var q=C.length<C.highWaterMark;if(q||(C.needDrain=!0),C.writing||C.corked){var ve=C.lastBufferedRequest;C.lastBufferedRequest={chunk:K,encoding:Z,isBuf:H,callback:w,next:null},ve?ve.next=C.lastBufferedRequest:C.bufferedRequest=C.lastBufferedRequest,C.bufferedRequestCount+=1}else j(O,C,!1,M,K,Z,w);return q}function j(O,C,H,K,Z,w,v){C.writelen=K,C.writecb=v,C.writing=!0,C.sync=!0,C.destroyed?C.onwrite(new x("write")):H?O._writev(Z,C.onwrite):O._write(Z,w,C.onwrite),C.sync=!1}function V(O,C,H,K,Z){--C.pendingcb,H?(process.nextTick(Z,K),process.nextTick(st,O,C),O._writableState.errorEmitted=!0,E(O,K)):(Z(K),O._writableState.errorEmitted=!0,E(O,K),st(O,C))}function X(O){O.writing=!1,O.writecb=null,O.length-=O.writelen,O.writelen=0}function ne(O,C){var H=O._writableState,K=H.sync,Z=H.writecb;if(typeof Z!="function")throw new g;if(X(H),C)V(O,H,K,C,Z);else{var w=We(H)||O.destroyed;!w&&!H.corked&&!H.bufferProcessing&&H.bufferedRequest&&Te(O,H),K?process.nextTick(he,O,H,w,Z):he(O,H,w,Z)}}function he(O,C,H,K){H||_e(O,C),C.pendingcb--,K(),st(O,C)}function _e(O,C){C.length===0&&C.needDrain&&(C.needDrain=!1,O.emit("drain"))}function Te(O,C){C.bufferProcessing=!0;var H=C.bufferedRequest;if(O._writev&&H&&H.next){var K=C.bufferedRequestCount,Z=new Array(K),w=C.corkedRequestsFree;w.entry=H;for(var v=0,M=!0;H;)Z[v]=H,H.isBuf||(M=!1),H=H.next,v+=1;Z.allBuffers=M,j(O,C,!0,C.length,Z,"",w.finish),C.pendingcb++,C.lastBufferedRequest=null,w.next?(C.corkedRequestsFree=w.next,w.next=null):C.corkedRequestsFree=new e(C),C.bufferedRequestCount=0}else{for(;H;){var q=H.chunk,ve=H.encoding,ee=H.callback,ae=C.objectMode?1:q.length;if(j(O,C,!1,ae,q,ve,ee),H=H.next,C.bufferedRequestCount--,C.writing)break}H===null&&(C.lastBufferedRequest=null)}C.bufferedRequest=H,C.bufferProcessing=!1}$.prototype._write=function(O,C,H){H(new p("_write()"))},$.prototype._writev=null,$.prototype.end=function(O,C,H){var K=this._writableState;return typeof O=="function"?(H=O,O=null,C=null):typeof C=="function"&&(H=C,C=null),O!=null&&this.write(O,C),K.corked&&(K.corked=1,this.uncork()),K.ending||er(this,K,H),this},Object.defineProperty($.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function We(O){return O.ending&&O.length===0&&O.bufferedRequest===null&&!O.finished&&!O.writing}function fe(O,C){O._final(function(H){C.pendingcb--,H&&E(O,H),C.prefinished=!0,O.emit("prefinish"),st(O,C)})}function ye(O,C){!C.prefinished&&!C.finalCalled&&(typeof O._final=="function"&&!C.destroyed?(C.pendingcb++,C.finalCalled=!0,process.nextTick(fe,O,C)):(C.prefinished=!0,O.emit("prefinish")))}function st(O,C){var H=We(C);if(H&&(ye(O,C),C.pendingcb===0&&(C.finished=!0,O.emit("finish"),C.autoDestroy))){var K=O._readableState;(!K||K.autoDestroy&&K.endEmitted)&&O.destroy()}return H}function er(O,C,H){C.ending=!0,st(O,C),H&&(C.finished?process.nextTick(H):O.once("finish",H)),C.ended=!0,O.writable=!1}function Rt(O,C,H){var K=O.entry;for(O.entry=null;K;){var Z=K.callback;C.pendingcb--,Z(H),K=K.next}C.corkedRequestsFree.next=O}return Object.defineProperty($.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(C){this._writableState&&(this._writableState.destroyed=C)}}),$.prototype.destroy=c.destroy,$.prototype._undestroy=c.undestroy,$.prototype._destroy=function(O,C){C(O)},zo}var qo,Ru;function vn(){if(Ru)return qo;Ru=1;var e=Object.keys||function(f){var l=[];for(var h in f)l.push(h);return l};qo=o;var t=_l(),r=gl();He(o,t);for(var n=e(r.prototype),i=0;i<n.length;i++){var s=n[i];o.prototype[s]||(o.prototype[s]=r.prototype[s])}function o(f){if(!(this instanceof o))return new o(f);t.call(this,f),r.call(this,f),this.allowHalfOpen=!0,f&&(f.readable===!1&&(this.readable=!1),f.writable===!1&&(this.writable=!1),f.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",a)))}Object.defineProperty(o.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(o.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(o.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function a(){this._writableState.ended||process.nextTick(c,this)}function c(f){f.end()}return Object.defineProperty(o.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(l){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=l,this._writableState.destroyed=l)}}),qo}var Ps={},Ac=tt.Buffer,Nu=Ac.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function T1(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function k1(e){var t=T1(e);if(typeof t!="string"&&(Ac.isEncoding===Nu||!Nu(e)))throw new Error("Unknown encoding: "+e);return t||e}Ps.StringDecoder=Gi;function Gi(e){this.encoding=k1(e);var t;switch(this.encoding){case"utf16le":this.text=N1,this.end=U1,t=4;break;case"utf8":this.fillLast=C1,t=4;break;case"base64":this.text=L1,this.end=F1,t=3;break;default:this.write=M1,this.end=$1;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=Ac.allocUnsafe(t)}Gi.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""};Gi.prototype.end=R1;Gi.prototype.text=O1;Gi.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length};function Vo(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function I1(e,t,r){var n=t.length-1;if(n<r)return 0;var i=Vo(t[n]);return i>=0?(i>0&&(e.lastNeed=i-1),i):--n<r||i===-2?0:(i=Vo(t[n]),i>=0?(i>0&&(e.lastNeed=i-2),i):--n<r||i===-2?0:(i=Vo(t[n]),i>=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function B1(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"�"}}function C1(e){var t=this.lastTotal-this.lastNeed,r=B1(this,e);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function O1(e,t){var r=I1(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function R1(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t}function N1(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function U1(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function L1(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function F1(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function M1(e){return e.toString(this.encoding)}function $1(e){return e&&e.length?this.write(e):""}var Uu=Gr.codes.ERR_STREAM_PREMATURE_CLOSE;function H1(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}function D1(){}function j1(e){return e.setHeader&&typeof e.abort=="function"}function wl(e,t,r){if(typeof t=="function")return wl(e,null,t);t||(t={}),r=H1(r||D1);var n=t.readable||t.readable!==!1&&e.readable,i=t.writable||t.writable!==!1&&e.writable,s=function(){e.writable||a()},o=e._writableState&&e._writableState.finished,a=function(){i=!1,o=!0,n||r.call(e)},c=e._readableState&&e._readableState.endEmitted,f=function(){n=!1,c=!0,i||r.call(e)},l=function(g){r.call(e,g)},h=function(){var g;if(n&&!c)return(!e._readableState||!e._readableState.ended)&&(g=new Uu),r.call(e,g);if(i&&!o)return(!e._writableState||!e._writableState.ended)&&(g=new Uu),r.call(e,g)},y=function(){e.req.on("finish",a)};return j1(e)?(e.on("complete",a),e.on("abort",h),e.req?y():e.on("request",y)):i&&!e._writableState&&(e.on("end",s),e.on("close",s)),e.on("end",f),e.on("finish",a),t.error!==!1&&e.on("error",l),e.on("close",h),function(){e.removeListener("complete",a),e.removeListener("abort",h),e.removeListener("request",y),e.req&&e.req.removeListener("finish",a),e.removeListener("end",s),e.removeListener("close",s),e.removeListener("finish",a),e.removeListener("end",f),e.removeListener("error",l),e.removeListener("close",h)}}var Sc=wl,Wo,Lu;function G1(){if(Lu)return Wo;Lu=1;var e;function t(A,E,I){return E=r(E),E in A?Object.defineProperty(A,E,{value:I,enumerable:!0,configurable:!0,writable:!0}):A[E]=I,A}function r(A){var E=n(A,"string");return typeof E=="symbol"?E:String(E)}function n(A,E){if(typeof A!="object"||A===null)return A;var I=A[Symbol.toPrimitive];if(I!==void 0){var S=I.call(A,E);if(typeof S!="object")return S;throw new TypeError("@@toPrimitive must return a primitive value.")}return(E==="string"?String:Number)(A)}var i=Sc,s=Symbol("lastResolve"),o=Symbol("lastReject"),a=Symbol("error"),c=Symbol("ended"),f=Symbol("lastPromise"),l=Symbol("handlePromise"),h=Symbol("stream");function y(A,E){return{value:A,done:E}}function p(A){var E=A[s];if(E!==null){var I=A[h].read();I!==null&&(A[f]=null,A[s]=null,A[o]=null,E(y(I,!1)))}}function g(A){process.nextTick(p,A)}function _(A,E){return function(I,S){A.then(function(){if(E[c]){I(y(void 0,!0));return}E[l](I,S)},S)}}var x=Object.getPrototypeOf(function(){}),k=Object.setPrototypeOf((e={get stream(){return this[h]},next:function(){var E=this,I=this[a];if(I!==null)return Promise.reject(I);if(this[c])return Promise.resolve(y(void 0,!0));if(this[h].destroyed)return new Promise(function(B,W){process.nextTick(function(){E[a]?W(E[a]):B(y(void 0,!0))})});var S=this[f],L;if(S)L=new Promise(_(S,this));else{var $=this[h].read();if($!==null)return Promise.resolve(y($,!1));L=new Promise(this[l])}return this[f]=L,L}},t(e,Symbol.asyncIterator,function(){return this}),t(e,"return",function(){var E=this;return new Promise(function(I,S){E[h].destroy(null,function(L){if(L){S(L);return}I(y(void 0,!0))})})}),e),x),T=function(E){var I,S=Object.create(k,(I={},t(I,h,{value:E,writable:!0}),t(I,s,{value:null,writable:!0}),t(I,o,{value:null,writable:!0}),t(I,a,{value:null,writable:!0}),t(I,c,{value:E._readableState.endEmitted,writable:!0}),t(I,l,{value:function($,B){var W=S[h].read();W?(S[f]=null,S[s]=null,S[o]=null,$(y(W,!1))):(S[s]=$,S[o]=B)},writable:!0}),I));return S[f]=null,i(E,function(L){if(L&&L.code!=="ERR_STREAM_PREMATURE_CLOSE"){var $=S[o];$!==null&&(S[f]=null,S[s]=null,S[o]=null,$(L)),S[a]=L;return}var B=S[s];B!==null&&(S[f]=null,S[s]=null,S[o]=null,B(y(void 0,!0))),S[c]=!0}),E.on("readable",g.bind(null,S)),S};return Wo=T,Wo}var Ko,Fu;function z1(){return Fu||(Fu=1,Ko=function(){throw new Error("Readable.from is not available in the browser")}),Ko}var Yo,Mu;function _l(){if(Mu)return Yo;Mu=1,Yo=B;var e;B.ReadableState=$,hl.EventEmitter;var t=function(v,M){return v.listeners(M).length},r=pl,n=Zt.Buffer,i=(typeof br<"u"?br:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function s(w){return n.from(w)}function o(w){return n.isBuffer(w)||w instanceof i}var a=xc,c;a&&a.debuglog?c=a.debuglog("stream"):c=function(){};var f=p1(),l=yl,h=bl,y=h.getHighWaterMark,p=Gr.codes,g=p.ERR_INVALID_ARG_TYPE,_=p.ERR_STREAM_PUSH_AFTER_EOF,x=p.ERR_METHOD_NOT_IMPLEMENTED,k=p.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,T,A,E;He(B,r);var I=l.errorOrDestroy,S=["error","close","destroy","pause","resume"];function L(w,v,M){if(typeof w.prependListener=="function")return w.prependListener(v,M);!w._events||!w._events[v]?w.on(v,M):Array.isArray(w._events[v])?w._events[v].unshift(M):w._events[v]=[M,w._events[v]]}function $(w,v,M){e=e||vn(),w=w||{},typeof M!="boolean"&&(M=v instanceof e),this.objectMode=!!w.objectMode,M&&(this.objectMode=this.objectMode||!!w.readableObjectMode),this.highWaterMark=y(this,w,"readableHighWaterMark",M),this.buffer=new f,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=w.emitClose!==!1,this.autoDestroy=!!w.autoDestroy,this.destroyed=!1,this.defaultEncoding=w.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,w.encoding&&(T||(T=Ps.StringDecoder),this.decoder=new T(w.encoding),this.encoding=w.encoding)}function B(w){if(e=e||vn(),!(this instanceof B))return new B(w);var v=this instanceof e;this._readableState=new $(w,this,v),this.readable=!0,w&&(typeof w.read=="function"&&(this._read=w.read),typeof w.destroy=="function"&&(this._destroy=w.destroy)),r.call(this)}Object.defineProperty(B.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(v){this._readableState&&(this._readableState.destroyed=v)}}),B.prototype.destroy=l.destroy,B.prototype._undestroy=l.undestroy,B.prototype._destroy=function(w,v){v(w)},B.prototype.push=function(w,v){var M=this._readableState,q;return M.objectMode?q=!0:typeof w=="string"&&(v=v||M.defaultEncoding,v!==M.encoding&&(w=n.from(w,v),v=""),q=!0),W(this,w,v,!1,q)},B.prototype.unshift=function(w){return W(this,w,null,!0,!1)};function W(w,v,M,q,ve){c("readableAddChunk",v);var ee=w._readableState;if(v===null)ee.reading=!1,ne(w,ee);else{var ae;if(ve||(ae=D(ee,v)),ae)I(w,ae);else if(ee.objectMode||v&&v.length>0)if(typeof v!="string"&&!ee.objectMode&&Object.getPrototypeOf(v)!==n.prototype&&(v=s(v)),q)ee.endEmitted?I(w,new k):R(w,ee,v,!0);else if(ee.ended)I(w,new _);else{if(ee.destroyed)return!1;ee.reading=!1,ee.decoder&&!M?(v=ee.decoder.write(v),ee.objectMode||v.length!==0?R(w,ee,v,!1):Te(w,ee)):R(w,ee,v,!1)}else q||(ee.reading=!1,Te(w,ee))}return!ee.ended&&(ee.length<ee.highWaterMark||ee.length===0)}function R(w,v,M,q){v.flowing&&v.length===0&&!v.sync?(v.awaitDrain=0,w.emit("data",M)):(v.length+=v.objectMode?1:M.length,q?v.buffer.unshift(M):v.buffer.push(M),v.needReadable&&he(w)),Te(w,v)}function D(w,v){var M;return!o(v)&&typeof v!="string"&&v!==void 0&&!w.objectMode&&(M=new g("chunk",["string","Buffer","Uint8Array"],v)),M}B.prototype.isPaused=function(){return this._readableState.flowing===!1},B.prototype.setEncoding=function(w){T||(T=Ps.StringDecoder);var v=new T(w);this._readableState.decoder=v,this._readableState.encoding=this._readableState.decoder.encoding;for(var M=this._readableState.buffer.head,q="";M!==null;)q+=v.write(M.data),M=M.next;return this._readableState.buffer.clear(),q!==""&&this._readableState.buffer.push(q),this._readableState.length=q.length,this};var j=1073741824;function V(w){return w>=j?w=j:(w--,w|=w>>>1,w|=w>>>2,w|=w>>>4,w|=w>>>8,w|=w>>>16,w++),w}function X(w,v){return w<=0||v.length===0&&v.ended?0:v.objectMode?1:w!==w?v.flowing&&v.length?v.buffer.head.data.length:v.length:(w>v.highWaterMark&&(v.highWaterMark=V(w)),w<=v.length?w:v.ended?v.length:(v.needReadable=!0,0))}B.prototype.read=function(w){c("read",w),w=parseInt(w,10);var v=this._readableState,M=w;if(w!==0&&(v.emittedReadable=!1),w===0&&v.needReadable&&((v.highWaterMark!==0?v.length>=v.highWaterMark:v.length>0)||v.ended))return c("read: emitReadable",v.length,v.ended),v.length===0&&v.ended?H(this):he(this),null;if(w=X(w,v),w===0&&v.ended)return v.length===0&&H(this),null;var q=v.needReadable;c("need readable",q),(v.length===0||v.length-w<v.highWaterMark)&&(q=!0,c("length less than watermark",q)),v.ended||v.reading?(q=!1,c("reading or ended",q)):q&&(c("do read"),v.reading=!0,v.sync=!0,v.length===0&&(v.needReadable=!0),this._read(v.highWaterMark),v.sync=!1,v.reading||(w=X(M,v)));var ve;return w>0?ve=C(w,v):ve=null,ve===null?(v.needReadable=v.length<=v.highWaterMark,w=0):(v.length-=w,v.awaitDrain=0),v.length===0&&(v.ended||(v.needReadable=!0),M!==w&&v.ended&&H(this)),ve!==null&&this.emit("data",ve),ve};function ne(w,v){if(c("onEofChunk"),!v.ended){if(v.decoder){var M=v.decoder.end();M&&M.length&&(v.buffer.push(M),v.length+=v.objectMode?1:M.length)}v.ended=!0,v.sync?he(w):(v.needReadable=!1,v.emittedReadable||(v.emittedReadable=!0,_e(w)))}}function he(w){var v=w._readableState;c("emitReadable",v.needReadable,v.emittedReadable),v.needReadable=!1,v.emittedReadable||(c("emitReadable",v.flowing),v.emittedReadable=!0,process.nextTick(_e,w))}function _e(w){var v=w._readableState;c("emitReadable_",v.destroyed,v.length,v.ended),!v.destroyed&&(v.length||v.ended)&&(w.emit("readable"),v.emittedReadable=!1),v.needReadable=!v.flowing&&!v.ended&&v.length<=v.highWaterMark,O(w)}function Te(w,v){v.readingMore||(v.readingMore=!0,process.nextTick(We,w,v))}function We(w,v){for(;!v.reading&&!v.ended&&(v.length<v.highWaterMark||v.flowing&&v.length===0);){var M=v.length;if(c("maybeReadMore read 0"),w.read(0),M===v.length)break}v.readingMore=!1}B.prototype._read=function(w){I(this,new x("_read()"))},B.prototype.pipe=function(w,v){var M=this,q=this._readableState;switch(q.pipesCount){case 0:q.pipes=w;break;case 1:q.pipes=[q.pipes,w];break;default:q.pipes.push(w);break}q.pipesCount+=1,c("pipe count=%d opts=%j",q.pipesCount,v);var ve=(!v||v.end!==!1)&&w!==process.stdout&&w!==process.stderr,ee=ve?tr:Sr;q.endEmitted?process.nextTick(ee):M.once("end",ee),w.on("unpipe",ae);function ae(m,u){c("onunpipe"),m===M&&u&&u.hasUnpiped===!1&&(u.hasUnpiped=!0,Vr())}function tr(){c("onend"),w.end()}var qr=fe(M);w.on("drain",qr);var kn=!1;function Vr(){c("cleanup"),w.removeListener("close",In),w.removeListener("finish",ft),w.removeListener("drain",qr),w.removeListener("error",Ar),w.removeListener("unpipe",ae),M.removeListener("end",tr),M.removeListener("end",Sr),M.removeListener("data",ot),kn=!0,q.awaitDrain&&(!w._writableState||w._writableState.needDrain)&&qr()}M.on("data",ot);function ot(m){c("ondata");var u=w.write(m);c("dest.write",u),u===!1&&((q.pipesCount===1&&q.pipes===w||q.pipesCount>1&&Z(q.pipes,w)!==-1)&&!kn&&(c("false write response, pause",q.awaitDrain),q.awaitDrain++),M.pause())}function Ar(m){c("onerror",m),Sr(),w.removeListener("error",Ar),t(w,"error")===0&&I(w,m)}L(w,"error",Ar);function In(){w.removeListener("finish",ft),Sr()}w.once("close",In);function ft(){c("onfinish"),w.removeListener("close",In),Sr()}w.once("finish",ft);function Sr(){c("unpipe"),M.unpipe(w)}return w.emit("pipe",M),q.flowing||(c("pipe resume"),M.resume()),w};function fe(w){return function(){var M=w._readableState;c("pipeOnDrain",M.awaitDrain),M.awaitDrain&&M.awaitDrain--,M.awaitDrain===0&&t(w,"data")&&(M.flowing=!0,O(w))}}B.prototype.unpipe=function(w){var v=this._readableState,M={hasUnpiped:!1};if(v.pipesCount===0)return this;if(v.pipesCount===1)return w&&w!==v.pipes?this:(w||(w=v.pipes),v.pipes=null,v.pipesCount=0,v.flowing=!1,w&&w.emit("unpipe",this,M),this);if(!w){var q=v.pipes,ve=v.pipesCount;v.pipes=null,v.pipesCount=0,v.flowing=!1;for(var ee=0;ee<ve;ee++)q[ee].emit("unpipe",this,{hasUnpiped:!1});return this}var ae=Z(v.pipes,w);return ae===-1?this:(v.pipes.splice(ae,1),v.pipesCount-=1,v.pipesCount===1&&(v.pipes=v.pipes[0]),w.emit("unpipe",this,M),this)},B.prototype.on=function(w,v){var M=r.prototype.on.call(this,w,v),q=this._readableState;return w==="data"?(q.readableListening=this.listenerCount("readable")>0,q.flowing!==!1&&this.resume()):w==="readable"&&!q.endEmitted&&!q.readableListening&&(q.readableListening=q.needReadable=!0,q.flowing=!1,q.emittedReadable=!1,c("on readable",q.length,q.reading),q.length?he(this):q.reading||process.nextTick(st,this)),M},B.prototype.addListener=B.prototype.on,B.prototype.removeListener=function(w,v){var M=r.prototype.removeListener.call(this,w,v);return w==="readable"&&process.nextTick(ye,this),M},B.prototype.removeAllListeners=function(w){var v=r.prototype.removeAllListeners.apply(this,arguments);return(w==="readable"||w===void 0)&&process.nextTick(ye,this),v};function ye(w){var v=w._readableState;v.readableListening=w.listenerCount("readable")>0,v.resumeScheduled&&!v.paused?v.flowing=!0:w.listenerCount("data")>0&&w.resume()}function st(w){c("readable nexttick read 0"),w.read(0)}B.prototype.resume=function(){var w=this._readableState;return w.flowing||(c("resume"),w.flowing=!w.readableListening,er(this,w)),w.paused=!1,this};function er(w,v){v.resumeScheduled||(v.resumeScheduled=!0,process.nextTick(Rt,w,v))}function Rt(w,v){c("resume",v.reading),v.reading||w.read(0),v.resumeScheduled=!1,w.emit("resume"),O(w),v.flowing&&!v.reading&&w.read(0)}B.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function O(w){var v=w._readableState;for(c("flow",v.flowing);v.flowing&&w.read()!==null;);}B.prototype.wrap=function(w){var v=this,M=this._readableState,q=!1;w.on("end",function(){if(c("wrapped end"),M.decoder&&!M.ended){var ae=M.decoder.end();ae&&ae.length&&v.push(ae)}v.push(null)}),w.on("data",function(ae){if(c("wrapped data"),M.decoder&&(ae=M.decoder.write(ae)),!(M.objectMode&&ae==null)&&!(!M.objectMode&&(!ae||!ae.length))){var tr=v.push(ae);tr||(q=!0,w.pause())}});for(var ve in w)this[ve]===void 0&&typeof w[ve]=="function"&&(this[ve]=function(tr){return function(){return w[tr].apply(w,arguments)}}(ve));for(var ee=0;ee<S.length;ee++)w.on(S[ee],this.emit.bind(this,S[ee]));return this._read=function(ae){c("wrapped _read",ae),q&&(q=!1,w.resume())},this},typeof Symbol=="function"&&(B.prototype[Symbol.asyncIterator]=function(){return A===void 0&&(A=G1()),A(this)}),Object.defineProperty(B.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(B.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(B.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(v){this._readableState&&(this._readableState.flowing=v)}}),B._fromList=C,Object.defineProperty(B.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function C(w,v){if(v.length===0)return null;var M;return v.objectMode?M=v.buffer.shift():!w||w>=v.length?(v.decoder?M=v.buffer.join(""):v.buffer.length===1?M=v.buffer.first():M=v.buffer.concat(v.length),v.buffer.clear()):M=v.buffer.consume(w,v.decoder),M}function H(w){var v=w._readableState;c("endReadable",v.endEmitted),v.endEmitted||(v.ended=!0,process.nextTick(K,v,w))}function K(w,v){if(c("endReadableNT",w.endEmitted,w.length),!w.endEmitted&&w.length===0&&(w.endEmitted=!0,v.readable=!1,v.emit("end"),w.autoDestroy)){var M=v._writableState;(!M||M.autoDestroy&&M.finished)&&v.destroy()}}typeof Symbol=="function"&&(B.from=function(w,v){return E===void 0&&(E=z1()),E(B,w,v)});function Z(w,v){for(var M=0,q=w.length;M<q;M++)if(w[M]===v)return M;return-1}return Yo}var vl=Xt,to=Gr.codes,q1=to.ERR_METHOD_NOT_IMPLEMENTED,V1=to.ERR_MULTIPLE_CALLBACK,W1=to.ERR_TRANSFORM_ALREADY_TRANSFORMING,K1=to.ERR_TRANSFORM_WITH_LENGTH_0,ro=vn();He(Xt,ro);function Y1(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new V1);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function Xt(e){if(!(this instanceof Xt))return new Xt(e);ro.call(this,e),this._transformState={afterTransform:Y1.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&(typeof e.transform=="function"&&(this._transform=e.transform),typeof e.flush=="function"&&(this._flush=e.flush)),this.on("prefinish",X1)}function X1(){var e=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(t,r){$u(e,t,r)}):$u(this,null,null)}Xt.prototype.push=function(e,t){return this._transformState.needTransform=!1,ro.prototype.push.call(this,e,t)};Xt.prototype._transform=function(e,t,r){r(new q1("_transform()"))};Xt.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}};Xt.prototype._read=function(e){var t=this._transformState;t.writechunk!==null&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0};Xt.prototype._destroy=function(e,t){ro.prototype._destroy.call(this,e,function(r){t(r)})};function $u(e,t,r){if(t)return e.emit("error",t);if(r!=null&&e.push(r),e._writableState.length)throw new K1;if(e._transformState.transforming)throw new W1;return e.push(null)}var J1=Ii,El=vl;He(Ii,El);function Ii(e){if(!(this instanceof Ii))return new Ii(e);El.call(this,e)}Ii.prototype._transform=function(e,t,r){r(null,e)};var Xo;function Q1(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var xl=Gr.codes,Z1=xl.ERR_MISSING_ARGS,ew=xl.ERR_STREAM_DESTROYED;function Hu(e){if(e)throw e}function tw(e){return e.setHeader&&typeof e.abort=="function"}function rw(e,t,r,n){n=Q1(n);var i=!1;e.on("close",function(){i=!0}),Xo===void 0&&(Xo=Sc),Xo(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var s=!1;return function(o){if(!i&&!s){if(s=!0,tw(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new ew("pipe"))}}}function Du(e){e()}function nw(e,t){return e.pipe(t)}function iw(e){return!e.length||typeof e[e.length-1]!="function"?Hu:e.pop()}function sw(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=iw(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Z1("streams");var i,s=t.map(function(o,a){var c=a<t.length-1,f=a>0;return rw(o,c,f,function(l){i||(i=l),l&&s.forEach(Du),!c&&(s.forEach(Du),n(i))})});return t.reduce(nw)}var ow=sw;(function(e,t){t=e.exports=_l(),t.Stream=t,t.Readable=t,t.Writable=gl(),t.Duplex=vn(),t.Transform=vl,t.PassThrough=J1,t.finished=Sc,t.pipeline=ow})(Ta,Ta.exports);var Al=Ta.exports,Ts=tt.Buffer,Sl=Al.Transform,aw=He;function cw(e,t){if(!Ts.isBuffer(e)&&typeof e!="string")throw new TypeError(t+" must be a string or a buffer")}function Er(e){Sl.call(this),this._block=Ts.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}aw(Er,Sl);Er.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(i){n=i}r(n)};Er.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)};Er.prototype.update=function(e,t){if(cw(e,"Data"),this._finalized)throw new Error("Digest already called");Ts.isBuffer(e)||(e=Ts.from(e,t));for(var r=this._block,n=0;this._blockOffset+e.length-n>=this._blockSize;){for(var i=this._blockOffset;i<this._blockSize;)r[i++]=e[n++];this._update(),this._blockOffset=0}for(;n<e.length;)r[this._blockOffset++]=e[n++];for(var s=0,o=e.length*8;o>0;++s)this._length[s]+=o,o=this._length[s]/4294967296|0,o>0&&(this._length[s]-=4294967296*o);return this};Er.prototype._update=function(){throw new Error("_update is not implemented")};Er.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();e!==void 0&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t};Er.prototype._digest=function(){throw new Error("_digest is not implemented")};var uw=Er,fw=He,Pl=uw,dw=tt.Buffer,lw=new Array(16);function no(){Pl.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}fw(no,Pl);no.prototype._update=function(){for(var e=lw,t=0;t<16;++t)e[t]=this._block.readInt32LE(t*4);var r=this._a,n=this._b,i=this._c,s=this._d;r=De(r,n,i,s,e[0],3614090360,7),s=De(s,r,n,i,e[1],3905402710,12),i=De(i,s,r,n,e[2],606105819,17),n=De(n,i,s,r,e[3],3250441966,22),r=De(r,n,i,s,e[4],4118548399,7),s=De(s,r,n,i,e[5],1200080426,12),i=De(i,s,r,n,e[6],2821735955,17),n=De(n,i,s,r,e[7],4249261313,22),r=De(r,n,i,s,e[8],1770035416,7),s=De(s,r,n,i,e[9],2336552879,12),i=De(i,s,r,n,e[10],4294925233,17),n=De(n,i,s,r,e[11],2304563134,22),r=De(r,n,i,s,e[12],1804603682,7),s=De(s,r,n,i,e[13],4254626195,12),i=De(i,s,r,n,e[14],2792965006,17),n=De(n,i,s,r,e[15],1236535329,22),r=je(r,n,i,s,e[1],4129170786,5),s=je(s,r,n,i,e[6],3225465664,9),i=je(i,s,r,n,e[11],643717713,14),n=je(n,i,s,r,e[0],3921069994,20),r=je(r,n,i,s,e[5],3593408605,5),s=je(s,r,n,i,e[10],38016083,9),i=je(i,s,r,n,e[15],3634488961,14),n=je(n,i,s,r,e[4],3889429448,20),r=je(r,n,i,s,e[9],568446438,5),s=je(s,r,n,i,e[14],3275163606,9),i=je(i,s,r,n,e[3],4107603335,14),n=je(n,i,s,r,e[8],1163531501,20),r=je(r,n,i,s,e[13],2850285829,5),s=je(s,r,n,i,e[2],4243563512,9),i=je(i,s,r,n,e[7],1735328473,14),n=je(n,i,s,r,e[12],2368359562,20),r=Ge(r,n,i,s,e[5],4294588738,4),s=Ge(s,r,n,i,e[8],2272392833,11),i=Ge(i,s,r,n,e[11],1839030562,16),n=Ge(n,i,s,r,e[14],4259657740,23),r=Ge(r,n,i,s,e[1],2763975236,4),s=Ge(s,r,n,i,e[4],1272893353,11),i=Ge(i,s,r,n,e[7],4139469664,16),n=Ge(n,i,s,r,e[10],3200236656,23),r=Ge(r,n,i,s,e[13],681279174,4),s=Ge(s,r,n,i,e[0],3936430074,11),i=Ge(i,s,r,n,e[3],3572445317,16),n=Ge(n,i,s,r,e[6],76029189,23),r=Ge(r,n,i,s,e[9],3654602809,4),s=Ge(s,r,n,i,e[12],3873151461,11),i=Ge(i,s,r,n,e[15],530742520,16),n=Ge(n,i,s,r,e[2],3299628645,23),r=ze(r,n,i,s,e[0],4096336452,6),s=ze(s,r,n,i,e[7],1126891415,10),i=ze(i,s,r,n,e[14],2878612391,15),n=ze(n,i,s,r,e[5],4237533241,21),r=ze(r,n,i,s,e[12],1700485571,6),s=ze(s,r,n,i,e[3],2399980690,10),i=ze(i,s,r,n,e[10],4293915773,15),n=ze(n,i,s,r,e[1],2240044497,21),r=ze(r,n,i,s,e[8],1873313359,6),s=ze(s,r,n,i,e[15],4264355552,10),i=ze(i,s,r,n,e[6],2734768916,15),n=ze(n,i,s,r,e[13],1309151649,21),r=ze(r,n,i,s,e[4],4149444226,6),s=ze(s,r,n,i,e[11],3174756917,10),i=ze(i,s,r,n,e[2],718787259,15),n=ze(n,i,s,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+s|0};no.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=dw.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e};function io(e,t){return e<<t|e>>>32-t}function De(e,t,r,n,i,s,o){return io(e+(t&r|~t&n)+i+s|0,o)+t|0}function je(e,t,r,n,i,s,o){return io(e+(t&n|r&~n)+i+s|0,o)+t|0}function Ge(e,t,r,n,i,s,o){return io(e+(t^r^n)+i+s|0,o)+t|0}function ze(e,t,r,n,i,s,o){return io(e+(r^(t|~n))+i+s|0,o)+t|0}var hw=no,ks=tt.Buffer,Tl=Al.Transform,pw=He;function yw(e,t){if(!ks.isBuffer(e)&&typeof e!="string")throw new TypeError(t+" must be a string or a buffer")}function xr(e){Tl.call(this),this._block=ks.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}pw(xr,Tl);xr.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(i){n=i}r(n)};xr.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)};xr.prototype.update=function(e,t){if(yw(e,"Data"),this._finalized)throw new Error("Digest already called");ks.isBuffer(e)||(e=ks.from(e,t));for(var r=this._block,n=0;this._blockOffset+e.length-n>=this._blockSize;){for(var i=this._blockOffset;i<this._blockSize;)r[i++]=e[n++];this._update(),this._blockOffset=0}for(;n<e.length;)r[this._blockOffset++]=e[n++];for(var s=0,o=e.length*8;o>0;++s)this._length[s]+=o,o=this._length[s]/4294967296|0,o>0&&(this._length[s]-=4294967296*o);return this};xr.prototype._update=function(){throw new Error("_update is not implemented")};xr.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();e!==void 0&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t};xr.prototype._digest=function(){throw new Error("_digest is not implemented")};var mw=xr,Jo=Zt.Buffer,bw=He,kl=mw,gw=new Array(16),Mn=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],$n=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],Hn=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],Dn=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],jn=[0,1518500249,1859775393,2400959708,2840853838],Gn=[1352829926,1548603684,1836072691,2053994217,0];function so(){kl.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}bw(so,kl);so.prototype._update=function(){for(var e=gw,t=0;t<16;++t)e[t]=this._block.readInt32LE(t*4);for(var r=this._a|0,n=this._b|0,i=this._c|0,s=this._d|0,o=this._e|0,a=this._a|0,c=this._b|0,f=this._c|0,l=this._d|0,h=this._e|0,y=0;y<80;y+=1){var p,g;y<16?(p=ju(r,n,i,s,o,e[Mn[y]],jn[0],Hn[y]),g=Vu(a,c,f,l,h,e[$n[y]],Gn[0],Dn[y])):y<32?(p=Gu(r,n,i,s,o,e[Mn[y]],jn[1],Hn[y]),g=qu(a,c,f,l,h,e[$n[y]],Gn[1],Dn[y])):y<48?(p=zu(r,n,i,s,o,e[Mn[y]],jn[2],Hn[y]),g=zu(a,c,f,l,h,e[$n[y]],Gn[2],Dn[y])):y<64?(p=qu(r,n,i,s,o,e[Mn[y]],jn[3],Hn[y]),g=Gu(a,c,f,l,h,e[$n[y]],Gn[3],Dn[y])):(p=Vu(r,n,i,s,o,e[Mn[y]],jn[4],Hn[y]),g=ju(a,c,f,l,h,e[$n[y]],Gn[4],Dn[y])),r=o,o=s,s=Hr(i,10),i=n,n=p,a=h,h=l,l=Hr(f,10),f=c,c=g}var _=this._b+i+l|0;this._b=this._c+s+h|0,this._c=this._d+o+a|0,this._d=this._e+r+c|0,this._e=this._a+n+f|0,this._a=_};so.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=Jo.alloc?Jo.alloc(20):new Jo(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e};function Hr(e,t){return e<<t|e>>>32-t}function ju(e,t,r,n,i,s,o,a){return Hr(e+(t^r^n)+s+o|0,a)+i|0}function Gu(e,t,r,n,i,s,o,a){return Hr(e+(t&r|~t&n)+s+o|0,a)+i|0}function zu(e,t,r,n,i,s,o,a){return Hr(e+((t|~r)^n)+s+o|0,a)+i|0}function qu(e,t,r,n,i,s,o,a){return Hr(e+(t&n|r&~n)+s+o|0,a)+i|0}function Vu(e,t,r,n,i,s,o,a){return Hr(e+(t^(r|~n))+s+o|0,a)+i|0}var ww=so,Il={exports:{}},Bl=tt.Buffer;function oo(e,t){this._block=Bl.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}oo.prototype.update=function(e,t){typeof e=="string"&&(t=t||"utf8",e=Bl.from(e,t));for(var r=this._block,n=this._blockSize,i=e.length,s=this._len,o=0;o<i;){for(var a=s%n,c=Math.min(i-o,n-a),f=0;f<c;f++)r[a+f]=e[o+f];s+=c,o+=c,s%n===0&&this._update(r)}return this._len+=i,this};oo.prototype.digest=function(e){var t=this._len%this._blockSize;this._block[t]=128,this._block.fill(0,t+1),t>=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=this._len*8;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(r&4294967295)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var s=this._hash();return e?s.toString(e):s};oo.prototype._update=function(){throw new Error("_update must be implemented by subclass")};var Tn=oo,_w=He,Cl=Tn,vw=tt.Buffer,Ew=[1518500249,1859775393,-1894007588,-899497514],xw=new Array(80);function zi(){this.init(),this._w=xw,Cl.call(this,64,56)}_w(zi,Cl);zi.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function Aw(e){return e<<5|e>>>27}function Sw(e){return e<<30|e>>>2}function Pw(e,t,r,n){return e===0?t&r|~t&n:e===2?t&r|t&n|r&n:t^r^n}zi.prototype._update=function(e){for(var t=this._w,r=this._a|0,n=this._b|0,i=this._c|0,s=this._d|0,o=this._e|0,a=0;a<16;++a)t[a]=e.readInt32BE(a*4);for(;a<80;++a)t[a]=t[a-3]^t[a-8]^t[a-14]^t[a-16];for(var c=0;c<80;++c){var f=~~(c/20),l=Aw(r)+Pw(f,n,i,s)+o+t[c]+Ew[f]|0;o=s,s=i,i=Sw(n),n=r,r=l}this._a=r+this._a|0,this._b=n+this._b|0,this._c=i+this._c|0,this._d=s+this._d|0,this._e=o+this._e|0};zi.prototype._hash=function(){var e=vw.allocUnsafe(20);return e.writeInt32BE(this._a|0,0),e.writeInt32BE(this._b|0,4),e.writeInt32BE(this._c|0,8),e.writeInt32BE(this._d|0,12),e.writeInt32BE(this._e|0,16),e};var Tw=zi,kw=He,Ol=Tn,Iw=tt.Buffer,Bw=[1518500249,1859775393,-1894007588,-899497514],Cw=new Array(80);function qi(){this.init(),this._w=Cw,Ol.call(this,64,56)}kw(qi,Ol);qi.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function Ow(e){return e<<1|e>>>31}function Rw(e){return e<<5|e>>>27}function Nw(e){return e<<30|e>>>2}function Uw(e,t,r,n){return e===0?t&r|~t&n:e===2?t&r|t&n|r&n:t^r^n}qi.prototype._update=function(e){for(var t=this._w,r=this._a|0,n=this._b|0,i=this._c|0,s=this._d|0,o=this._e|0,a=0;a<16;++a)t[a]=e.readInt32BE(a*4);for(;a<80;++a)t[a]=Ow(t[a-3]^t[a-8]^t[a-14]^t[a-16]);for(var c=0;c<80;++c){var f=~~(c/20),l=Rw(r)+Uw(f,n,i,s)+o+t[c]+Bw[f]|0;o=s,s=i,i=Nw(n),n=r,r=l}this._a=r+this._a|0,this._b=n+this._b|0,this._c=i+this._c|0,this._d=s+this._d|0,this._e=o+this._e|0};qi.prototype._hash=function(){var e=Iw.allocUnsafe(20);return e.writeInt32BE(this._a|0,0),e.writeInt32BE(this._b|0,4),e.writeInt32BE(this._c|0,8),e.writeInt32BE(this._d|0,12),e.writeInt32BE(this._e|0,16),e};var Lw=qi,Fw=He,Rl=Tn,Mw=tt.Buffer,$w=[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],Hw=new Array(64);function Vi(){this.init(),this._w=Hw,Rl.call(this,64,56)}Fw(Vi,Rl);Vi.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this};function Dw(e,t,r){return r^e&(t^r)}function jw(e,t,r){return e&t|r&(e|t)}function Gw(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function zw(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function qw(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}function Vw(e){return(e>>>17|e<<15)^(e>>>19|e<<13)^e>>>10}Vi.prototype._update=function(e){for(var t=this._w,r=this._a|0,n=this._b|0,i=this._c|0,s=this._d|0,o=this._e|0,a=this._f|0,c=this._g|0,f=this._h|0,l=0;l<16;++l)t[l]=e.readInt32BE(l*4);for(;l<64;++l)t[l]=Vw(t[l-2])+t[l-7]+qw(t[l-15])+t[l-16]|0;for(var h=0;h<64;++h){var y=f+zw(o)+Dw(o,a,c)+$w[h]+t[h]|0,p=Gw(r)+jw(r,n,i)|0;f=c,c=a,a=o,o=s+y|0,s=i,i=n,n=r,r=y+p|0}this._a=r+this._a|0,this._b=n+this._b|0,this._c=i+this._c|0,this._d=s+this._d|0,this._e=o+this._e|0,this._f=a+this._f|0,this._g=c+this._g|0,this._h=f+this._h|0};Vi.prototype._hash=function(){var e=Mw.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e};var Nl=Vi,Ww=He,Kw=Nl,Yw=Tn,Xw=tt.Buffer,Jw=new Array(64);function ao(){this.init(),this._w=Jw,Yw.call(this,64,56)}Ww(ao,Kw);ao.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this};ao.prototype._hash=function(){var e=Xw.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e};var Qw=ao,Zw=He,Ul=Tn,e2=tt.Buffer,Wu=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],t2=new Array(160);function Wi(){this.init(),this._w=t2,Ul.call(this,128,112)}Zw(Wi,Ul);Wi.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this};function Ku(e,t,r){return r^e&(t^r)}function Yu(e,t,r){return e&t|r&(e|t)}function Xu(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function Ju(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function r2(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function n2(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function i2(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function s2(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function Ne(e,t){return e>>>0<t>>>0?1:0}Wi.prototype._update=function(e){for(var t=this._w,r=this._ah|0,n=this._bh|0,i=this._ch|0,s=this._dh|0,o=this._eh|0,a=this._fh|0,c=this._gh|0,f=this._hh|0,l=this._al|0,h=this._bl|0,y=this._cl|0,p=this._dl|0,g=this._el|0,_=this._fl|0,x=this._gl|0,k=this._hl|0,T=0;T<32;T+=2)t[T]=e.readInt32BE(T*4),t[T+1]=e.readInt32BE(T*4+4);for(;T<160;T+=2){var A=t[T-30],E=t[T-15*2+1],I=r2(A,E),S=n2(E,A);A=t[T-2*2],E=t[T-2*2+1];var L=i2(A,E),$=s2(E,A),B=t[T-7*2],W=t[T-7*2+1],R=t[T-16*2],D=t[T-16*2+1],j=S+W|0,V=I+B+Ne(j,S)|0;j=j+$|0,V=V+L+Ne(j,$)|0,j=j+D|0,V=V+R+Ne(j,D)|0,t[T]=V,t[T+1]=j}for(var X=0;X<160;X+=2){V=t[X],j=t[X+1];var ne=Yu(r,n,i),he=Yu(l,h,y),_e=Xu(r,l),Te=Xu(l,r),We=Ju(o,g),fe=Ju(g,o),ye=Wu[X],st=Wu[X+1],er=Ku(o,a,c),Rt=Ku(g,_,x),O=k+fe|0,C=f+We+Ne(O,k)|0;O=O+Rt|0,C=C+er+Ne(O,Rt)|0,O=O+st|0,C=C+ye+Ne(O,st)|0,O=O+j|0,C=C+V+Ne(O,j)|0;var H=Te+he|0,K=_e+ne+Ne(H,Te)|0;f=c,k=x,c=a,x=_,a=o,_=g,g=p+O|0,o=s+C+Ne(g,p)|0,s=i,p=y,i=n,y=h,n=r,h=l,l=O+H|0,r=C+K+Ne(l,O)|0}this._al=this._al+l|0,this._bl=this._bl+h|0,this._cl=this._cl+y|0,this._dl=this._dl+p|0,this._el=this._el+g|0,this._fl=this._fl+_|0,this._gl=this._gl+x|0,this._hl=this._hl+k|0,this._ah=this._ah+r+Ne(this._al,l)|0,this._bh=this._bh+n+Ne(this._bl,h)|0,this._ch=this._ch+i+Ne(this._cl,y)|0,this._dh=this._dh+s+Ne(this._dl,p)|0,this._eh=this._eh+o+Ne(this._el,g)|0,this._fh=this._fh+a+Ne(this._fl,_)|0,this._gh=this._gh+c+Ne(this._gl,x)|0,this._hh=this._hh+f+Ne(this._hl,k)|0};Wi.prototype._hash=function(){var e=e2.allocUnsafe(64);function t(r,n,i){e.writeInt32BE(r,i),e.writeInt32BE(n,i+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e};var Ll=Wi,o2=He,a2=Ll,c2=Tn,u2=tt.Buffer,f2=new Array(160);function co(){this.init(),this._w=f2,c2.call(this,128,112)}o2(co,a2);co.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this};co.prototype._hash=function(){var e=u2.allocUnsafe(48);function t(r,n,i){e.writeInt32BE(r,i),e.writeInt32BE(n,i+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e};var d2=co,zr=Il.exports=function(t){t=t.toLowerCase();var r=zr[t];if(!r)throw new Error(t+" is not supported (we accept pull requests)");return new r};zr.sha=Tw;zr.sha1=Lw;zr.sha224=Qw;zr.sha256=Nl;zr.sha384=d2;zr.sha512=Ll;var l2=Il.exports,Tt=tt.Buffer,Fl=xc.Transform,h2=Ps.StringDecoder,p2=He;function wt(e){Fl.call(this),this.hashMode=typeof e=="string",this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}p2(wt,Fl);var y2=typeof Uint8Array<"u",m2=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&ArrayBuffer.isView&&(Tt.prototype instanceof Uint8Array||Tt.TYPED_ARRAY_SUPPORT);function b2(e,t){if(e instanceof Tt)return e;if(typeof e=="string")return Tt.from(e,t);if(m2&&ArrayBuffer.isView(e)){if(e.byteLength===0)return Tt.alloc(0);var r=Tt.from(e.buffer,e.byteOffset,e.byteLength);if(r.byteLength===e.byteLength)return r}if(y2&&e instanceof Uint8Array||Tt.isBuffer(e)&&e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e))return Tt.from(e);throw new TypeError('The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView.')}wt.prototype.update=function(e,t,r){var n=b2(e,t),i=this._update(n);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)};wt.prototype.setAutoPadding=function(){};wt.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")};wt.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")};wt.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")};wt.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(i){n=i}finally{r(n)}};wt.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(r){t=r}e(t)};wt.prototype._finalOrDigest=function(e){var t=this.__final()||Tt.alloc(0);return e&&(t=this._toString(t,e,!0)),t};wt.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new h2(t),this._encoding=t),this._encoding!==t)throw new Error("can’t switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n};var g2=wt,w2=He,_2=hw,v2=ww,E2=l2,Ml=g2;function uo(e){Ml.call(this,"digest"),this._hash=e}w2(uo,Ml);uo.prototype._update=function(e){this._hash.update(e)};uo.prototype._final=function(){return this._hash.digest()};var x2=function(t){return t=t.toLowerCase(),t==="md5"?new _2:t==="rmd160"||t==="ripemd160"?new v2:new uo(E2(t))},as=tt.Buffer;function A2(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r<t.length;r++)t[r]=255;for(var n=0;n<e.length;n++){var i=e.charAt(n),s=i.charCodeAt(0);if(t[s]!==255)throw new TypeError(i+" is ambiguous");t[s]=n}var o=e.length,a=e.charAt(0),c=Math.log(o)/Math.log(256),f=Math.log(256)/Math.log(o);function l(p){if((Array.isArray(p)||p instanceof Uint8Array)&&(p=as.from(p)),!as.isBuffer(p))throw new TypeError("Expected Buffer");if(p.length===0)return"";for(var g=0,_=0,x=0,k=p.length;x!==k&&p[x]===0;)x++,g++;for(var T=(k-x)*f+1>>>0,A=new Uint8Array(T);x!==k;){for(var E=p[x],I=0,S=T-1;(E!==0||I<_)&&S!==-1;S--,I++)E+=256*A[S]>>>0,A[S]=E%o>>>0,E=E/o>>>0;if(E!==0)throw new Error("Non-zero carry");_=I,x++}for(var L=T-_;L!==T&&A[L]===0;)L++;for(var $=a.repeat(g);L<T;++L)$+=e.charAt(A[L]);return $}function h(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return as.alloc(0);for(var g=0,_=0,x=0;p[g]===a;)_++,g++;for(var k=(p.length-g)*c+1>>>0,T=new Uint8Array(k);g<p.length;){var A=p.charCodeAt(g);if(A>255)return;var E=t[A];if(E===255)return;for(var I=0,S=k-1;(E!==0||I<x)&&S!==-1;S--,I++)E+=o*T[S]>>>0,T[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");x=I,g++}for(var L=k-x;L!==k&&T[L]===0;)L++;var $=as.allocUnsafe(_+(k-L));$.fill(0,0,_);for(var B=_;L!==k;)$[B++]=T[L++];return $}function y(p){var g=h(p);if(g)return g;throw new Error("Non-base"+o+" character")}return{encode:l,decodeUnsafe:h,decode:y}}var S2=A2,P2=S2,T2="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",k2=P2(T2),Qo=k2,I2=tt.Buffer,B2=function(e){function t(s){var o=e(s);return Qo.encode(I2.concat([s,o],s.length+4))}function r(s){var o=s.slice(0,-4),a=s.slice(-4),c=e(o);if(!(a[0]^c[0]|a[1]^c[1]|a[2]^c[2]|a[3]^c[3]))return o}function n(s){var o=Qo.decodeUnsafe(s);if(o)return r(o)}function i(s){var o=Qo.decode(s),a=r(o);if(!a)throw new Error("Invalid checksum");return a}return{encode:t,decode:i,decodeUnsafe:n}},Qu=x2,C2=B2;function O2(e){var t=Qu("sha256").update(e).digest();return Qu("sha256").update(t).digest()}var R2=C2(O2),Ia=R2;function $l(e,t){if(t!==void 0&&e[0]!==t)throw new Error("Invalid network version");if(e.length===33)return{version:e[0],privateKey:e.slice(1,33),compressed:!1};if(e.length!==34)throw new Error("Invalid WIF length");if(e[33]!==1)throw new Error("Invalid compression flag");return{version:e[0],privateKey:e.slice(1,33),compressed:!0}}function Ba(e,t,r){var n=new Buffer(r?34:33);return n.writeUInt8(e,0),t.copy(n,1),r&&(n[33]=1),n}function N2(e,t){return $l(Ia.decode(e),t)}function U2(e,t,r){return typeof e=="number"?Ia.encode(Ba(e,t,r)):Ia.encode(Ba(e.version,e.privateKey,e.compressed))}var L2={decode:N2,decodeRaw:$l,encode:U2,encodeRaw:Ba},fo={};Object.defineProperty(fo,"__esModule",{value:!0});fo.testEcc=void 0;const Y=e=>Buffer.from(e,"hex");function F2(e){be(e.isPoint(Y("0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"))),be(!e.isPoint(Y("030000000000000000000000000000000000000000000000000000000000000005"))),be(e.isPrivate(Y("79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"))),be(e.isPrivate(Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140"))),be(!e.isPrivate(Y("0000000000000000000000000000000000000000000000000000000000000000"))),be(!e.isPrivate(Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"))),be(!e.isPrivate(Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364142"))),be(Buffer.from(e.privateAdd(Y("0000000000000000000000000000000000000000000000000000000000000001"),Y("0000000000000000000000000000000000000000000000000000000000000000"))).equals(Y("0000000000000000000000000000000000000000000000000000000000000001"))),be(e.privateAdd(Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036413e"),Y("0000000000000000000000000000000000000000000000000000000000000003"))===null),be(Buffer.from(e.privateAdd(Y("e211078564db65c3ce7704f08262b1f38f1ef412ad15b5ac2d76657a63b2c500"),Y("b51fbb69051255d1becbd683de5848242a89c229348dd72896a87ada94ae8665"))).equals(Y("9730c2ee69edbb958d42db7460bafa18fef9d955325aec99044c81c8282b0a24"))),be(Buffer.from(e.privateNegate(Y("0000000000000000000000000000000000000000000000000000000000000001"))).equals(Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140"))),be(Buffer.from(e.privateNegate(Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036413e"))).equals(Y("0000000000000000000000000000000000000000000000000000000000000003"))),be(Buffer.from(e.privateNegate(Y("b1121e4088a66a28f5b6b0f5844943ecd9f610196d7bb83b25214b60452c09af"))).equals(Y("4eede1bf775995d70a494f0a7bb6bc11e0b8cccd41cce8009ab1132c8b0a3792"))),be(Buffer.from(e.pointCompress(Y("0479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8"),!0)).equals(Y("0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"))),be(Buffer.from(e.pointCompress(Y("0479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8"),!1)).equals(Y("0479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8"))),be(Buffer.from(e.pointCompress(Y("0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),!0)).equals(Y("0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"))),be(Buffer.from(e.pointCompress(Y("0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),!1)).equals(Y("0479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8"))),be(Buffer.from(e.pointFromScalar(Y("b1121e4088a66a28f5b6b0f5844943ecd9f610196d7bb83b25214b60452c09af"))).equals(Y("02b07ba9dca9523b7ef4bd97703d43d20399eb698e194704791a25ce77a400df99"))),be(e.xOnlyPointAddTweak(Y("79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140"))===null);let t=e.xOnlyPointAddTweak(Y("1617d38ed8d8657da4d4761e8057bc396ea9e4b9d29776d4be096016dbd2509b"),Y("a8397a935f0dfceba6ba9618f6451ef4d80637abf4e6af2669fbc9de6a8fd2ac"));be(Buffer.from(t.xOnlyPubkey).equals(Y("e478f99dab91052ab39a33ea35fd5e6e4933f4d28023cd597c9a1f6760346adf"))&&t.parity===1),t=e.xOnlyPointAddTweak(Y("2c0b7cf95324a07d05398b240174dc0c2be444d96b159aa6c7f7b1e668680991"),Y("823c3cd2142744b075a87eade7e1b8678ba308d566226a0056ca2b7a76f86b47")),be(Buffer.from(t.xOnlyPubkey).equals(Y("9534f8dc8c6deda2dc007655981c78b49c5d96c778fbf363462a11ec9dfd948c"))&&t.parity===0),be(Buffer.from(e.sign(Y("5e9f0a0d593efdcf78ac923bc3313e4e7d408d574354ee2b3288c0da9fbba6ed"),Y("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140"))).equals(Y("54c4a33c6423d689378f160a7ff8b61330444abb58fb470f96ea16d99d4a2fed07082304410efa6b2943111b6a4e0aaa7b7db55a07e9861d1fb3cb1f421044a5"))),be(e.verify(Y("5e9f0a0d593efdcf78ac923bc3313e4e7d408d574354ee2b3288c0da9fbba6ed"),Y("0379be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Y("54c4a33c6423d689378f160a7ff8b61330444abb58fb470f96ea16d99d4a2fed07082304410efa6b2943111b6a4e0aaa7b7db55a07e9861d1fb3cb1f421044a5"))),e.signSchnorr&&be(Buffer.from(e.signSchnorr(Y("7e2d58d8b3bcdf1abadec7829054f90dda9805aab56c77333024b9d0a508b75c"),Y("c90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b14e5c9"),Y("c87aa53824b4d7ae2eb035a2b5bbbccc080e76cdc6d1692c4b0b62d798e6d906"))).equals(Y("5831aaeed7b44bb74e5eab94ba9d4294c49bcf2a60728d8b4c200f50dd313c1bab745879a5ad954a72c45a91c3a51d3c7adea98d82f8481e0e1e03674a6f3fb7"))),e.verifySchnorr&&be(e.verifySchnorr(Y("7e2d58d8b3bcdf1abadec7829054f90dda9805aab56c77333024b9d0a508b75c"),Y("dd308afec5777e13121fa72b9cc1b7cc0139715309b086c960e18fd969774eb8"),Y("5831aaeed7b44bb74e5eab94ba9d4294c49bcf2a60728d8b4c200f50dd313c1bab745879a5ad954a72c45a91c3a51d3c7adea98d82f8481e0e1e03674a6f3fb7")))}fo.testEcc=F2;function be(e){if(!e)throw new Error("ecc library invalid")}Object.defineProperty(wn,"__esModule",{value:!0});wn.ECPairFactory=wn.networks=void 0;const Ca=_n;wn.networks=Ca;const Je=il,M2=s1,Zu=L2,$2=fo,Zo=Je.typeforce.maybe(Je.typeforce.compile({compressed:Je.maybe(Je.Boolean),network:Je.maybe(Je.Network)})),H2=e=>e.length===32?e:e.slice(1,33);function D2(e){(0,$2.testEcc)(e);function t(a){return e.isPoint(a)}function r(a,c){if(Je.typeforce(Je.Buffer256bit,a),!e.isPrivate(a))throw new TypeError("Private key not in range [1, n)");return Je.typeforce(Zo,c),new o(a,void 0,c)}function n(a,c){return Je.typeforce(e.isPoint,a),Je.typeforce(Zo,c),new o(void 0,a,c)}function i(a,c){const f=Zu.decode(a),l=f.version;if(Je.Array(c)){if(c=c.filter(h=>l===h.wif).pop(),!c)throw new Error("Unknown network version")}else if(c=c||Ca.bitcoin,l!==c.wif)throw new Error("Invalid network version");return r(f.privateKey,{compressed:f.compressed,network:c})}function s(a){Je.typeforce(Zo,a),a===void 0&&(a={});const c=a.rng||M2;let f;do f=c(32),Je.typeforce(Je.Buffer256bit,f);while(!e.isPrivate(f));return r(f,a)}class o{constructor(c,f,l){Wr(this,"__D");Wr(this,"__Q");Wr(this,"compressed");Wr(this,"network");Wr(this,"lowR");this.__D=c,this.__Q=f,this.lowR=!1,l===void 0&&(l={}),this.compressed=l.compressed===void 0?!0:l.compressed,this.network=l.network||Ca.bitcoin,f!==void 0&&(this.__Q=Buffer.from(e.pointCompress(f,this.compressed)))}get privateKey(){return this.__D}get publicKey(){if(!this.__Q){const c=e.pointFromScalar(this.__D,this.compressed);this.__Q=Buffer.from(c)}return this.__Q}toWIF(){if(!this.__D)throw new Error("Missing private key");return Zu.encode(this.network.wif,this.__D,this.compressed)}tweak(c){return this.privateKey?this.tweakFromPrivateKey(c):this.tweakFromPublicKey(c)}sign(c,f){if(!this.__D)throw new Error("Missing private key");if(f===void 0&&(f=this.lowR),f===!1)return Buffer.from(e.sign(c,this.__D));{let l=e.sign(c,this.__D);const h=Buffer.alloc(32,0);let y=0;for(;l[0]>127;)y++,h.writeUIntLE(y,0,6),l=e.sign(c,this.__D,h);return Buffer.from(l)}}signSchnorr(c){if(!this.privateKey)throw new Error("Missing private key");if(!e.signSchnorr)throw new Error("signSchnorr not supported by ecc library");return Buffer.from(e.signSchnorr(c,this.privateKey))}verify(c,f){return e.verify(c,this.publicKey,f)}verifySchnorr(c,f){if(!e.verifySchnorr)throw new Error("verifySchnorr not supported by ecc library");return e.verifySchnorr(c,this.publicKey.subarray(1,33),f)}tweakFromPublicKey(c){const f=H2(this.publicKey),l=e.xOnlyPointAddTweak(f,c);if(!l||l.xOnlyPubkey===null)throw new Error("Cannot tweak public key!");const h=Buffer.from([l.parity===0?2:3]);return n(Buffer.concat([h,l.xOnlyPubkey]),{network:this.network,compressed:this.compressed})}tweakFromPrivateKey(c){const l=this.publicKey[0]===3||this.publicKey[0]===4&&(this.publicKey[64]&1)===1?e.privateNegate(this.privateKey):this.privateKey,h=e.privateAdd(l,c);if(!h)throw new Error("Invalid tweaked private key!");return r(Buffer.from(h),{network:this.network,compressed:this.compressed})}}return{isPoint:t,fromPrivateKey:r,fromPublicKey:n,fromWIF:i,makeRandom:s}}wn.ECPairFactory=D2;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.networks=e.ECPairFactory=e.default=void 0;var t=wn;Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ECPairFactory}}),Object.defineProperty(e,"ECPairFactory",{enumerable:!0,get:function(){return t.ECPairFactory}}),Object.defineProperty(e,"networks",{enumerable:!0,get:function(){return t.networks}})})(nl);const j2=mm(nl);class Bi extends z.EventBroker{get isInitialized(){return!!this.digestKey}constructor(t,r){super(),this.digestKey=t,this.walletClient=r}static fromDigestKey(t){return new Bi(kr(t))}static fromWalletClient(t){return new Bi(void 0,t)}async initialize(){if(this.digestKey)return ie("Already initialized");const t=await this.deriveDigestKeyFromWalletClient();return t.error?G(t.error):(this.emit("initialized",!0),ie("Initialized"))}async deriveDigestKeyFromWalletClient(){if(!this.walletClient)return G("No walletClient found");if(!this.walletClient.account)return G("No account found");try{const t=await this.walletClient.signTypedData({account:this.walletClient.account,types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"}],Data:[{name:"Message",type:"string"},{name:"Version",type:"string"},{name:"Nonce",type:"uint256"}]},domain:{name:"GARDEN FINANCE",version:"1"},primaryType:"Data",message:{Message:"Initialize your account",Version:"1.0.2",Nonce:1n}});return this.digestKey=kr(Vn(t)),this.emit("initialized",!0),ie(this.digestKey)}catch(t){return G("Failed to initialize: "+t)}}async getDigestKey(){if(!this.digestKey&&!this.walletClient)return G("No private key or wallet client found");if(!this.digestKey&&this.walletClient){const t=await this.deriveDigestKeyFromWalletClient();if(t.error)return G(t.error)}return this.digestKey?ie(this.digestKey):G("No private key found")}async generateSecret(t){const r=await this.signMessage(t);if(r.error)return G(r.error);const n=Vn(z.with0x(r.val)),i=Vn(n);return ie({secret:n,secretHash:i})}async signMessage(t){if(!this.digestKey){const f=await this.getDigestKey();if(f.error)return G(f.error);this.digestKey=f.val}const r=j2(Or),n="Garden.fi"+t.toString(),i=Buffer.from(n,"utf8"),s=Vn(i),o=Buffer.from(kr(this.digestKey),"hex");if(o.length!==32)return G("Invalid private key length. Expected 32 bytes.");const c=r.fromPrivateKey(o).sign(Buffer.from(kr(s),"hex"));return ie(c.toString("hex"))}}const ef=[{inputs:[{internalType:"address",name:"token_",type:"address"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"InvalidShortString",type:"error"},{inputs:[{internalType:"string",name:"str",type:"string"}],name:"StringTooLong",type:"error"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"orderID",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"secretHash",type:"bytes32"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Initiated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"orderID",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"secretHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"secret",type:"bytes"}],name:"Redeemed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"orderID",type:"bytes32"}],name:"Refunded",type:"event"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"redeemer",type:"address"},{internalType:"uint256",name:"timelock",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"bytes32",name:"secretHash",type:"bytes32"}],name:"initiate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"redeemer",type:"address"},{internalType:"uint256",name:"timelock",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"bytes32",name:"secretHash",type:"bytes32"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"initiateWithSignature",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"instantRefund",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"redeemer",type:"address"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"bytes32",name:"secretHash",type:"bytes32"},{internalType:"bytes",name:"signature",type:"bytes"}],internalType:"struct HTLC.InitWithSig[]",name:"inits",type:"tuple[]"},{components:[{internalType:"bytes32",name:"orderID",type:"bytes32"},{internalType:"bytes",name:"secret",type:"bytes"}],internalType:"struct HTLC.Redeem[]",name:"redeems",type:"tuple[]"},{components:[{internalType:"bytes32",name:"orderID",type:"bytes32"}],internalType:"struct HTLC.Refund[]",name:"refunds",type:"tuple[]"}],name:"multicall",outputs:[{internalType:"bool[]",name:"results",type:"bool[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"orders",outputs:[{internalType:"bool",name:"isFulfilled",type:"bool"},{internalType:"address",name:"initiator",type:"address"},{internalType:"address",name:"redeemer",type:"address"},{internalType:"uint256",name:"initiatedAt",type:"uint256"},{internalType:"uint256",name:"timelock",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"},{internalType:"bytes",name:"secret",type:"bytes"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"}],name:"refund",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"token",outputs:[{internalType:"contract IERC20",name:"",type:"address"}],stateMutability:"view",type:"function"}],G2={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}},z2={block:Yp({format(e){var r;return{transactions:(r=e.transactions)==null?void 0:r.map(n=>{if(typeof n=="string")return n;const i=Ya(n);return i.typeHex==="0x7e"&&(i.isSystemTx=n.isSystemTx,i.mint=n.mint?pt(n.mint):void 0,i.sourceHash=n.sourceHash,i.type="deposit"),i}),stateRoot:e.stateRoot}}}),transaction:Wp({format(e){const t={};return e.type==="0x7e"&&(t.isSystemTx=e.isSystemTx,t.mint=e.mint?pt(e.mint):void 0,t.sourceHash=e.sourceHash,t.type="deposit"),t}}),transactionReceipt:$y({format(e){return{l1GasPrice:e.l1GasPrice?pt(e.l1GasPrice):null,l1GasUsed:e.l1GasUsed?pt(e.l1GasUsed):null,l1Fee:e.l1Fee?pt(e.l1Fee):null,l1FeeScalar:e.l1FeeScalar?Number(e.l1FeeScalar):null}}})};function q2(e,t){return K2(e)?W2(e):um(e,t)}const V2={transaction:q2};function W2(e){Y2(e);const{sourceHash:t,data:r,from:n,gas:i,isSystemTx:s,mint:o,to:a,value:c}=e,f=[t,n,a??"0x",o?J(o):"0x",c?J(c):"0x",i?J(i):"0x",s?"0x1":"0x",r??"0x"];return Ct(["0x7e",mr(f)])}function K2(e){return e.type==="deposit"||typeof e.sourceHash<"u"}function Y2(e){const{from:t,to:r}=e;if(t&&!Ue(t))throw new et({address:t});if(r&&!Ue(r))throw new et({address:r})}const Is={contracts:G2,formatters:z2,serializers:V2},X2=Ot({id:42161,name:"Arbitrum One",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://arbiscan.io",apiUrl:"https://api.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7654707}}}),J2=Ot({id:421614,name:"Arbitrum Sepolia",nativeCurrency:{name:"Arbitrum Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://sepolia.arbiscan.io",apiUrl:"https://api-sepolia.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:81930}},testnet:!0}),zn=1,Q2=Ot({...Is,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{...Is.contracts,disputeGameFactory:{[zn]:{address:"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e"}},l2OutputOracle:{[zn]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[zn]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[zn]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:zn}),qn=11155111,Z2=Ot({...Is,id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://sepolia.basescan.org",apiUrl:"https://api-sepolia.basescan.org/api"}},contracts:{...Is.contracts,disputeGameFactory:{[qn]:{address:"0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1"}},l2OutputOracle:{[qn]:{address:"0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254"}},portal:{[qn]:{address:"0x49f53e41452c74589e85ca1677426ba426459e85",blockCreated:4446677}},l1StandardBridge:{[qn]:{address:"0xfd0Bf71F60660E2f608ed56e1659C450eB113120",blockCreated:4446677}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1059647}},testnet:!0,sourceId:qn}),e_=Ot({id:80094,name:"Berachain",nativeCurrency:{decimals:18,name:"BERA Token",symbol:"BERA"},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:0},ensRegistry:{address:"0x5b22280886a2f5e09a49bea7e320eab0e5320e28",blockCreated:877007},ensUniversalResolver:{address:"0xddfb18888a9466688235887dec2a10c4f5effee9",blockCreated:877008}},rpcUrls:{default:{http:["https://rpc.berachain.com"]}},blockExplorers:{default:{name:"Berascan",url:"https://berascan.com"}},ensTlds:[".bera"],testnet:!1}),t_=Ot({id:80084,name:"Berachain bArtio",nativeCurrency:{decimals:18,name:"BERA Token",symbol:"BERA"},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:109269},ensRegistry:{address:"0xB0eef18971290b333450586D33dcA6cE122651D2",blockCreated:7736794},ensUniversalResolver:{address:"0x41692Ef1EA0C79E6b73077E4A67572D2BDbD7057",blockCreated:7736795}},ensTlds:[".bera"],rpcUrls:{default:{http:["https://bartio.rpc.berachain.com"]}},blockExplorers:{default:{name:"Berachain bArtio Beratrail",url:"https://bartio.beratrail.io"}},testnet:!0}),r_=Ot({id:5115,name:"Citrea Testnet",nativeCurrency:{name:"cBTC",symbol:"cBTC",decimals:18},rpcUrls:{default:{http:["https://rpc.testnet.citrea.xyz"]}},blockExplorers:{default:{name:"Citrea Explorer",url:"https://explorer.testnet.citrea.xyz",apiUrl:"https://explorer.testnet.citrea.xyz/api"}},testnet:!0}),n_=Ot({id:1,name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://eth.merkle.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://etherscan.io",apiUrl:"https://api.etherscan.io/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xce01f8eee7E479C928F8919abD53E553a36CeF67",blockCreated:19258213},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),i_=Ot({id:10143,name:"Monad Testnet",nativeCurrency:{name:"Testnet MON Token",symbol:"MON",decimals:18},rpcUrls:{default:{http:["https://testnet-rpc.monad.xyz"]}},blockExplorers:{default:{name:"Monad Testnet explorer",url:"https://testnet.monadexplorer.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:251449}},testnet:!0}),s_=Ot({id:11155111,name:"Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.drpc.org"]}},blockExplorers:{default:{name:"Etherscan",url:"https://sepolia.etherscan.io",apiUrl:"https://api-sepolia.etherscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:751532},ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xc8Af999e38273D658BE1b921b88A9Ddf005769cC",blockCreated:5317080}},testnet:!0}),o_={...s_,rpcUrls:{default:{http:["https://ethereum-sepolia-rpc.publicnode.com"]}}},Hl={id:998,name:"Hyperliquid EVM Testnet",nativeCurrency:{name:"Hyperliquid",symbol:"HYPE",decimals:18},blockExplorers:{default:{name:"Hyperliquid Explorer",url:"https://testnet.purrsec.com/"}},rpcUrls:{default:{http:["https://rpc.hyperliquid-testnet.xyz/evm"]}}},Dl={id:999,name:"HyperEVM",nativeCurrency:{name:"Hyperliquid",symbol:"HYPE",decimals:18},blockExplorers:{default:{name:"Hyperliquid Explorer",url:"https://hyperscan.gas.zip/"}},rpcUrls:{default:{http:["https://rpc.hyperliquid.xyz/evm"]}}},jl={ethereum:n_,arbitrum:X2,ethereum_sepolia:o_,arbitrum_sepolia:J2,ethereum_localnet:ge.EthereumLocalnet,arbitrum_localnet:ge.ArbitrumLocalnet,base_sepolia:Z2,base:Q2,bera_testnet:t_,citrea_testnet:r_,bera:e_,monad_testnet:i_,hyperliquid_testnet:Hl,hyperliquid:Dl},Gl=async(e,t)=>{var n,i,s,o;const r=jl[e];if(r)try{if(r.id===((n=t.chain)==null?void 0:n.id))return ie({message:"Already on the network",walletClient:t});await t.switchChain({id:r.id});const a=ko({account:t.account,chain:r,transport:tu(t.transport)});return ie({message:"Switched chain",walletClient:a})}catch(a){if(a_(a))if(a.code===4902)try{await t.addChain({chain:r});const c=ko({account:t.account,chain:r,transport:tu(t.transport)});return ie({message:"Added network",walletClient:c})}catch{return G("Failed to add network")}else if((s=(i=a.body)==null?void 0:i.method)!=null&&s.includes("wallet_switchEthereumChain")||(o=a.message)!=null&&o.includes("wallet_switchEthereumChain")){const c=ko({account:t.account,chain:r,transport:Jy()});return ie({message:"Added network",walletClient:c})}else return G("Failed to switch network");else return G("Failed to switch network")}else return G("Chain not supported")},a_=e=>typeof e=="object"&&e!=null&&("code"in e||"message"in e||"body"in e),c_=[{inputs:[{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"InvalidShortString",type:"error"},{inputs:[],name:"NativeHTLC__DuplicateOrder",type:"error"},{inputs:[],name:"NativeHTLC__IncorrectFundsRecieved",type:"error"},{inputs:[],name:"NativeHTLC__IncorrectSecret",type:"error"},{inputs:[],name:"NativeHTLC__InsufficientBalance",type:"error"},{inputs:[],name:"NativeHTLC__InvalidRedeemerSignature",type:"error"},{inputs:[],name:"NativeHTLC__OrderFulfilled",type:"error"},{inputs:[],name:"NativeHTLC__OrderNotExpired",type:"error"},{inputs:[],name:"NativeHTLC__OrderNotInitiated",type:"error"},{inputs:[],name:"NativeHTLC__SameInitiatorAndRedeemer",type:"error"},{inputs:[],name:"NativeHTLC__ZeroAddressInitiator",type:"error"},{inputs:[],name:"NativeHTLC__ZeroAddressRedeemer",type:"error"},{inputs:[],name:"NativeHTLC__ZeroAmount",type:"error"},{inputs:[],name:"NativeHTLC__ZeroTimelock",type:"error"},{inputs:[{internalType:"string",name:"str",type:"string"}],name:"StringTooLong",type:"error"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"orderID",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"secretHash",type:"bytes32"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Initiated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"orderID",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"secretHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"secret",type:"bytes"}],name:"Redeemed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"orderID",type:"bytes32"}],name:"Refunded",type:"event"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address payable",name:"redeemer",type:"address"},{internalType:"uint256",name:"timelock",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"bytes32",name:"secretHash",type:"bytes32"}],name:"initiate",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"initiator",type:"address"},{internalType:"address payable",name:"redeemer",type:"address"},{internalType:"uint256",name:"timelock",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"bytes32",name:"secretHash",type:"bytes32"}],name:"initiateOnBehalf",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"instantRefund",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"}],name:"instantRefundDigest",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"orders",outputs:[{internalType:"bool",name:"isFulfilled",type:"bool"},{internalType:"address payable",name:"initiator",type:"address"},{internalType:"address payable",name:"redeemer",type:"address"},{internalType:"uint256",name:"initiatedAt",type:"uint256"},{internalType:"uint256",name:"timelock",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"},{internalType:"bytes",name:"secret",type:"bytes"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"orderID",type:"bytes32"}],name:"refund",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"token",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}];class zl{constructor(t,r,n){this.url=new z.Url("/relayer",t),this.auth=n,this.wallet=r}get htlcActorAddress(){if(!this.wallet.account)throw new Error("No account found");return this.wallet.account.address}async initiate(t){if(!this.wallet.account)return z.Err("No account found");if(this.wallet.account.address.toLowerCase()!==t.source_swap.initiator.toLowerCase())return z.Err("Account address and order initiator mismatch");if(!ge.isEVM(t.source_swap.chain))return z.Err("Source chain is not an EVM chain");const r=await Gl(t.source_swap.chain,this.wallet);if(r.error)return z.Err(r.error);if(this.wallet=r.val.walletClient,!this.wallet.account)return z.Err("No account found");const{create_order:n,source_swap:i}=t;if(!i.amount||!i.redeemer||!n.timelock||!n.secret_hash)return z.Err("Invalid order");const s=z.with0x(n.secret_hash),o=BigInt(n.timelock),a=z.with0x(i.redeemer),c=BigInt(i.amount),f=await this.getTokenAddress(t.source_swap.asset);return f.ok?ge.isEvmNativeToken(t.source_swap.chain,f.val)?this._initiateOnNativeHTLC(s,o,c,a,t.source_swap.asset):this._initiateOnErc20HTLC(s,o,c,a,t.source_swap.asset,f.val,n.create_id):z.Err(f.error)}async getTokenAddress(t){try{const n=await Ao({address:z.with0x(t),abi:ef,client:this.wallet}).read.token();return z.Ok(n)}catch(r){return z.Err("Failed to get token address",String(r))}}async _initiateOnNativeHTLC(t,r,n,i,s){if(!this.wallet.account)return z.Err("No account found");try{const a=await Ao({address:z.with0x(s),abi:c_,client:this.wallet}).write.initiate([i,r,n,t],{account:this.wallet.account,chain:this.wallet.chain,value:n});return z.Ok(a)}catch(o){return z.Err("Failed to initiate on native HTLC",String(o))}}async _initiateOnErc20HTLC(t,r,n,i,s,o,a){if(!this.wallet.account)return z.Err("No account found");try{const c=await this.auth.getAuthHeaders();if(c.error)return z.Err(c.error);const f=Ao({address:z.with0x(s),abi:ef,client:this.wallet}),l=await z.checkAllowanceAndApprove(Number(n),o,s,this.wallet);if(l.error)return z.Err(l.error);const h=await f.read.eip712Domain(),y=await this.wallet.signTypedData({account:this.wallet.account,domain:{name:h[1],version:h[2],chainId:Number(h[3]),verifyingContract:h[4]},types:{Initiate:[{name:"redeemer",type:"address"},{name:"timelock",type:"uint256"},{name:"amount",type:"uint256"},{name:"secretHash",type:"bytes32"}]},primaryType:"Initiate",message:{redeemer:i,timelock:r,amount:n,secretHash:t}}),p={...c.val,"Content-Type":"application/json"},g=await Dt.post(this.url.endpoint("initiate"),{body:JSON.stringify({order_id:a,signature:y,perform_on:"Source"}),headers:p});return g.error?z.Err(g.error):g.result?z.Ok(g.result):z.Err("Init: No result found")}catch(c){return console.log("init error :",c),z.Err(String(c))}}async redeem(t,r){try{const n=await this.auth.getAuthHeaders();if(n.error)return z.Err(n.error);const i=await Dt.post(this.url.endpoint("redeem"),{body:JSON.stringify({order_id:t.create_order.create_id,secret:kr(r),perform_on:"Destination"}),headers:{...n.val,"Content-Type":"application/json"}});return i.error?z.Err(i.error):i.result?z.Ok(i.result):z.Err("Redeem: No result found")}catch(n){return z.Err(String(n))}}async refund(){return z.Err("Refund not supported")}}const ql=[{name:"LockingContract",type:"impl",interface_name:"src::mintable_lock_interface::ILockingContract"},{name:"src::mintable_lock_interface::ILockingContract",type:"interface",items:[{name:"set_locking_contract",type:"function",inputs:[{name:"locking_contract",type:"core::starknet::contract_address::ContractAddress"}],outputs:[],state_mutability:"external"},{name:"get_locking_contract",type:"function",inputs:[],outputs:[{type:"core::starknet::contract_address::ContractAddress"}],state_mutability:"view"}]},{name:"LockAndDelegate",type:"impl",interface_name:"src::mintable_lock_interface::ILockAndDelegate"},{name:"core::integer::u256",type:"struct",members:[{name:"low",type:"core::integer::u128"},{name:"high",type:"core::integer::u128"}]},{name:"src::mintable_lock_interface::ILockAndDelegate",type:"interface",items:[{name:"lock_and_delegate",type:"function",inputs:[{name:"delegatee",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[],state_mutability:"external"},{name:"lock_and_delegate_by_sig",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"},{name:"delegatee",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"},{name:"nonce",type:"core::felt252"},{name:"expiry",type:"core::integer::u64"},{name:"signature",type:"core::array::Array::<core::felt252>"}],outputs:[],state_mutability:"external"}]},{name:"MintableToken",type:"impl",interface_name:"src::mintable_token_interface::IMintableToken"},{name:"src::mintable_token_interface::IMintableToken",type:"interface",items:[{name:"permissioned_mint",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[],state_mutability:"external"},{name:"permissioned_burn",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[],state_mutability:"external"}]},{name:"MintableTokenCamelImpl",type:"impl",interface_name:"src::mintable_token_interface::IMintableTokenCamel"},{name:"src::mintable_token_interface::IMintableTokenCamel",type:"interface",items:[{name:"permissionedMint",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[],state_mutability:"external"},{name:"permissionedBurn",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[],state_mutability:"external"}]},{name:"Replaceable",type:"impl",interface_name:"src::replaceability_interface::IReplaceable"},{name:"core::array::Span::<core::felt252>",type:"struct",members:[{name:"snapshot",type:"@core::array::Array::<core::felt252>"}]},{name:"src::replaceability_interface::EICData",type:"struct",members:[{name:"eic_hash",type:"core::starknet::class_hash::ClassHash"},{name:"eic_init_data",type:"core::array::Span::<core::felt252>"}]},{name:"core::option::Option::<src::replaceability_interface::EICData>",type:"enum",variants:[{name:"Some",type:"src::replaceability_interface::EICData"},{name:"None",type:"()"}]},{name:"core::bool",type:"enum",variants:[{name:"False",type:"()"},{name:"True",type:"()"}]},{name:"src::replaceability_interface::ImplementationData",type:"struct",members:[{name:"impl_hash",type:"core::starknet::class_hash::ClassHash"},{name:"eic_data",type:"core::option::Option::<src::replaceability_interface::EICData>"},{name:"final",type:"core::bool"}]},{name:"src::replaceability_interface::IReplaceable",type:"interface",items:[{name:"get_upgrade_delay",type:"function",inputs:[],outputs:[{type:"core::integer::u64"}],state_mutability:"view"},{name:"get_impl_activation_time",type:"function",inputs:[{name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}],outputs:[{type:"core::integer::u64"}],state_mutability:"view"},{name:"add_new_implementation",type:"function",inputs:[{name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}],outputs:[],state_mutability:"external"},{name:"remove_implementation",type:"function",inputs:[{name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}],outputs:[],state_mutability:"external"},{name:"replace_to",type:"function",inputs:[{name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}],outputs:[],state_mutability:"external"}]},{name:"AccessControlImplExternal",type:"impl",interface_name:"src::access_control_interface::IAccessControl"},{name:"src::access_control_interface::IAccessControl",type:"interface",items:[{name:"has_role",type:"function",inputs:[{name:"role",type:"core::felt252"},{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[{type:"core::bool"}],state_mutability:"view"},{name:"get_role_admin",type:"function",inputs:[{name:"role",type:"core::felt252"}],outputs:[{type:"core::felt252"}],state_mutability:"view"}]},{name:"RolesImpl",type:"impl",interface_name:"src::roles_interface::IMinimalRoles"},{name:"src::roles_interface::IMinimalRoles",type:"interface",items:[{name:"is_governance_admin",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[{type:"core::bool"}],state_mutability:"view"},{name:"is_upgrade_governor",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[{type:"core::bool"}],state_mutability:"view"},{name:"register_governance_admin",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[],state_mutability:"external"},{name:"remove_governance_admin",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[],state_mutability:"external"},{name:"register_upgrade_governor",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[],state_mutability:"external"},{name:"remove_upgrade_governor",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[],state_mutability:"external"},{name:"renounce",type:"function",inputs:[{name:"role",type:"core::felt252"}],outputs:[],state_mutability:"external"}]},{name:"ERC20Impl",type:"impl",interface_name:"openzeppelin::token::erc20::interface::IERC20"},{name:"openzeppelin::token::erc20::interface::IERC20",type:"interface",items:[{name:"name",type:"function",inputs:[],outputs:[{type:"core::felt252"}],state_mutability:"view"},{name:"symbol",type:"function",inputs:[],outputs:[{type:"core::felt252"}],state_mutability:"view"},{name:"decimals",type:"function",inputs:[],outputs:[{type:"core::integer::u8"}],state_mutability:"view"},{name:"total_supply",type:"function",inputs:[],outputs:[{type:"core::integer::u256"}],state_mutability:"view"},{name:"balance_of",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[{type:"core::integer::u256"}],state_mutability:"view"},{name:"allowance",type:"function",inputs:[{name:"owner",type:"core::starknet::contract_address::ContractAddress"},{name:"spender",type:"core::starknet::contract_address::ContractAddress"}],outputs:[{type:"core::integer::u256"}],state_mutability:"view"},{name:"transfer",type:"function",inputs:[{name:"recipient",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"},{name:"transfer_from",type:"function",inputs:[{name:"sender",type:"core::starknet::contract_address::ContractAddress"},{name:"recipient",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"},{name:"approve",type:"function",inputs:[{name:"spender",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"}]},{name:"ERC20CamelOnlyImpl",type:"impl",interface_name:"openzeppelin::token::erc20::interface::IERC20CamelOnly"},{name:"openzeppelin::token::erc20::interface::IERC20CamelOnly",type:"interface",items:[{name:"totalSupply",type:"function",inputs:[],outputs:[{type:"core::integer::u256"}],state_mutability:"view"},{name:"balanceOf",type:"function",inputs:[{name:"account",type:"core::starknet::contract_address::ContractAddress"}],outputs:[{type:"core::integer::u256"}],state_mutability:"view"},{name:"transferFrom",type:"function",inputs:[{name:"sender",type:"core::starknet::contract_address::ContractAddress"},{name:"recipient",type:"core::starknet::contract_address::ContractAddress"},{name:"amount",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"}]},{name:"constructor",type:"constructor",inputs:[{name:"name",type:"core::felt252"},{name:"symbol",type:"core::felt252"},{name:"decimals",type:"core::integer::u8"},{name:"initial_supply",type:"core::integer::u256"},{name:"recipient",type:"core::starknet::contract_address::ContractAddress"},{name:"permitted_minter",type:"core::starknet::contract_address::ContractAddress"},{name:"provisional_governance_admin",type:"core::starknet::contract_address::ContractAddress"},{name:"upgrade_delay",type:"core::integer::u64"}]},{name:"increase_allowance",type:"function",inputs:[{name:"spender",type:"core::starknet::contract_address::ContractAddress"},{name:"added_value",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"},{name:"decrease_allowance",type:"function",inputs:[{name:"spender",type:"core::starknet::contract_address::ContractAddress"},{name:"subtracted_value",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"},{name:"increaseAllowance",type:"function",inputs:[{name:"spender",type:"core::starknet::contract_address::ContractAddress"},{name:"addedValue",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"},{name:"decreaseAllowance",type:"function",inputs:[{name:"spender",type:"core::starknet::contract_address::ContractAddress"},{name:"subtractedValue",type:"core::integer::u256"}],outputs:[{type:"core::bool"}],state_mutability:"external"},{kind:"struct",name:"src::strk::erc20_lockable::ERC20Lockable::Transfer",type:"event",members:[{kind:"data",name:"from",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"to",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"value",type:"core::integer::u256"}]},{kind:"struct",name:"src::strk::erc20_lockable::ERC20Lockable::Approval",type:"event",members:[{kind:"data",name:"owner",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"spender",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"value",type:"core::integer::u256"}]},{kind:"struct",name:"src::replaceability_interface::ImplementationAdded",type:"event",members:[{kind:"data",name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}]},{kind:"struct",name:"src::replaceability_interface::ImplementationRemoved",type:"event",members:[{kind:"data",name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}]},{kind:"struct",name:"src::replaceability_interface::ImplementationReplaced",type:"event",members:[{kind:"data",name:"implementation_data",type:"src::replaceability_interface::ImplementationData"}]},{kind:"struct",name:"src::replaceability_interface::ImplementationFinalized",type:"event",members:[{kind:"data",name:"impl_hash",type:"core::starknet::class_hash::ClassHash"}]},{kind:"struct",name:"src::access_control_interface::RoleGranted",type:"event",members:[{kind:"data",name:"role",type:"core::felt252"},{kind:"data",name:"account",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"sender",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"struct",name:"src::access_control_interface::RoleRevoked",type:"event",members:[{kind:"data",name:"role",type:"core::felt252"},{kind:"data",name:"account",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"sender",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"struct",name:"src::access_control_interface::RoleAdminChanged",type:"event",members:[{kind:"data",name:"role",type:"core::felt252"},{kind:"data",name:"previous_admin_role",type:"core::felt252"},{kind:"data",name:"new_admin_role",type:"core::felt252"}]},{kind:"struct",name:"src::roles_interface::GovernanceAdminAdded",type:"event",members:[{kind:"data",name:"added_account",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"added_by",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"struct",name:"src::roles_interface::GovernanceAdminRemoved",type:"event",members:[{kind:"data",name:"removed_account",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"removed_by",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"struct",name:"src::roles_interface::UpgradeGovernorAdded",type:"event",members:[{kind:"data",name:"added_account",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"added_by",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"struct",name:"src::roles_interface::UpgradeGovernorRemoved",type:"event",members:[{kind:"data",name:"removed_account",type:"core::starknet::contract_address::ContractAddress"},{kind:"data",name:"removed_by",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"enum",name:"src::strk::erc20_lockable::ERC20Lockable::Event",type:"event",variants:[{kind:"nested",name:"Transfer",type:"src::strk::erc20_lockable::ERC20Lockable::Transfer"},{kind:"nested",name:"Approval",type:"src::strk::erc20_lockable::ERC20Lockable::Approval"},{kind:"nested",name:"ImplementationAdded",type:"src::replaceability_interface::ImplementationAdded"},{kind:"nested",name:"ImplementationRemoved",type:"src::replaceability_interface::ImplementationRemoved"},{kind:"nested",name:"ImplementationReplaced",type:"src::replaceability_interface::ImplementationReplaced"},{kind:"nested",name:"ImplementationFinalized",type:"src::replaceability_interface::ImplementationFinalized"},{kind:"nested",name:"RoleGranted",type:"src::access_control_interface::RoleGranted"},{kind:"nested",name:"RoleRevoked",type:"src::access_control_interface::RoleRevoked"},{kind:"nested",name:"RoleAdminChanged",type:"src::access_control_interface::RoleAdminChanged"},{kind:"nested",name:"GovernanceAdminAdded",type:"src::roles_interface::GovernanceAdminAdded"},{kind:"nested",name:"GovernanceAdminRemoved",type:"src::roles_interface::GovernanceAdminRemoved"},{kind:"nested",name:"UpgradeGovernorAdded",type:"src::roles_interface::UpgradeGovernorAdded"},{kind:"nested",name:"UpgradeGovernorRemoved",type:"src::roles_interface::UpgradeGovernorRemoved"}]}],u_=async(e,t,r,n,i)=>{try{const s=await Oa(e.address,t,r,i);if(s.error)return G(s.error);const o=Oe.cairo.uint256(BigInt(Oe.uint256.UINT_256_MAX));if(s.val<n){const a=await e.execute([{contractAddress:nn(t),entrypoint:"approve",calldata:[r,o.low,o.high]}]);await i.waitForTransaction(a.transaction_hash,{retryInterval:3e3,successStates:[Oe.TransactionExecutionStatus.SUCCEEDED]}),await z.sleep(2e3);let c=0n;for(let f=0;f<20;f++){const l=await Oa(e.address,t,r,i);if(l.error)return G(l.error);if(c=l.val,c>=n)break;await z.sleep(2e3)}return c<n?G("Allowance not approved"):ie(a.transaction_hash)}return ie("Allowance already approved")}catch(s){return G(`Failed to check or approve allowance: ${s instanceof Error?s.message:String(s)}`)}},Oa=async(e,t,r,n)=>{try{const s=await new Oe.Contract(ql,nn(t),n).call("allowance",[nn(e),nn(r)]);return ie(BigInt((s==null?void 0:s.toString())||"0"))}catch(i){return G(`Failed to check allowance: ${i instanceof Error?i.message:String(i)}`)}},f_=async(e,t,r,n,i)=>{const s=await Oa(e,t,r,n);return s.error?G(s.error):ie(s.val>=i)},Vl=[{name:"HTLC",type:"impl",interface_name:"starknet_htlc::interface::IHTLC"},{name:"core::integer::u256",type:"struct",members:[{name:"low",type:"core::integer::u128"},{name:"high",type:"core::integer::u128"}]},{name:"starknet_htlc::interface::IHTLC",type:"interface",items:[{name:"token",type:"function",inputs:[],outputs:[{type:"core::starknet::contract_address::ContractAddress"}],state_mutability:"view"},{name:"initiate",type:"function",inputs:[{name:"redeemer",type:"core::starknet::contract_address::ContractAddress"},{name:"timelock",type:"core::integer::u128"},{name:"amount",type:"core::integer::u256"},{name:"secret_hash",type:"[core::integer::u32; 8]"}],outputs:[],state_mutability:"external"},{name:"initiate_on_behalf",type:"function",inputs:[{name:"initiator",type:"core::starknet::contract_address::ContractAddress"},{name:"redeemer",type:"core::starknet::contract_address::ContractAddress"},{name:"timelock",type:"core::integer::u128"},{name:"amount",type:"core::integer::u256"},{name:"secret_hash",type:"[core::integer::u32; 8]"}],outputs:[],state_mutability:"external"},{name:"initiate_with_signature",type:"function",inputs:[{name:"initiator",type:"core::starknet::contract_address::ContractAddress"},{name:"redeemer",type:"core::starknet::contract_address::ContractAddress"},{name:"timelock",type:"core::integer::u128"},{name:"amount",type:"core::integer::u256"},{name:"secret_hash",type:"[core::integer::u32; 8]"},{name:"signature",type:"core::array::Array::<core::felt252>"}],outputs:[],state_mutability:"external"},{name:"redeem",type:"function",inputs:[{name:"order_id",type:"core::felt252"},{name:"secret",type:"core::array::Array::<core::integer::u32>"}],outputs:[],state_mutability:"external"},{name:"refund",type:"function",inputs:[{name:"order_id",type:"core::felt252"}],outputs:[],state_mutability:"external"},{name:"instant_refund",type:"function",inputs:[{name:"order_id",type:"core::felt252"},{name:"signature",type:"core::array::Array::<core::felt252>"}],outputs:[],state_mutability:"external"}]},{name:"constructor",type:"constructor",inputs:[{name:"token",type:"core::starknet::contract_address::ContractAddress"}]},{kind:"struct",name:"starknet_htlc::interface::events::Initiated",type:"event",members:[{kind:"key",name:"order_id",type:"core::felt252"},{kind:"data",name:"secret_hash",type:"[core::integer::u32; 8]"},{kind:"data",name:"amount",type:"core::integer::u256"}]},{kind:"struct",name:"starknet_htlc::interface::events::Redeemed",type:"event",members:[{kind:"key",name:"order_id",type:"core::felt252"},{kind:"data",name:"secret_hash",type:"[core::integer::u32; 8]"},{kind:"data",name:"secret",type:"core::array::Array::<core::integer::u32>"}]},{kind:"struct",name:"starknet_htlc::interface::events::Refunded",type:"event",members:[{kind:"key",name:"order_id",type:"core::felt252"}]},{kind:"enum",name:"starknet_htlc::htlc::HTLC::Event",type:"event",variants:[{kind:"nested",name:"Initiated",type:"starknet_htlc::interface::events::Initiated"},{kind:"nested",name:"Redeemed",type:"starknet_htlc::interface::events::Redeemed"},{kind:"nested",name:"Refunded",type:"starknet_htlc::interface::events::Refunded"}]}],d_={StarknetDomain:[{name:"name",type:"shortstring"},{name:"version",type:"shortstring"},{name:"chainId",type:"shortstring"},{name:"revision",type:"shortstring"}],Initiate:[{name:"redeemer",type:"ContractAddress"},{name:"amount",type:"u256"},{name:"timelock",type:"u128"},{name:"secretHash",type:"u128*"}]};class Wl{constructor(t,r,n,i){this.url=t instanceof z.Url?t:new z.Url(t),this.account=r,this.starknetProvider=new Oe.RpcProvider({nodeUrl:i||ki[n].nodeUrl}),this.chainId=ki[n].chainId}get htlcActorAddress(){if(!this.account.address)throw new Error("No account found");return this.account.address}async initiate(t){if(!this.account.address)return G("No account address");const{create_order:r,source_swap:n}=t,{redeemer:i,amount:s}=n;if(!s||!i||!r.secret_hash||!r.timelock)return G("Invalid order");try{const o=new Oe.Contract(Vl,t.source_swap.asset,this.account),a=await(o==null?void 0:o.token()),c=Oe.num.toHex(a),f=await f_(this.account.address,c,n.asset,this.starknetProvider,BigInt(s));return f.error?G(f.error):f.val?this.initiateRelay(t):this.approveAndInitiate(c,t)}catch(o){return G(String(o))}}async approveAndInitiate(t,r){const{create_order:n,source_swap:i}=r,{redeemer:s,amount:o}=i,{secret_hash:a,timelock:c}=n,f=i.asset;try{const l=Oe.cairo.uint256(BigInt(Oe.uint256.UINT_256_MAX)),h={contractAddress:nn(t),entrypoint:"approve",calldata:[f,l.low,l.high]},y=Oe.cairo.uint256(o),p={contractAddress:nn(f),entrypoint:"initiate",calldata:[s,c.toString(),y.low.toString(),y.high.toString(),...z.hexToU32Array(a)]},g=await this.account.execute([h,p]);return await this.starknetProvider.waitForTransaction(g.transaction_hash,{retryInterval:2e3,successStates:[Oe.TransactionExecutionStatus.SUCCEEDED]}),ie(g.transaction_hash)}catch(l){return G(`Failed to approve and initiate: ${String(l)}`)}}async initiateRelay(t){const{create_order:r,source_swap:n}=t,{redeemer:i,amount:s}=n,a={domain:{name:"HTLC",version:Oe.shortString.encodeShortString("1"),chainId:this.chainId,revision:Oe.TypedDataRevision.ACTIVE},primaryType:"Initiate",types:d_,message:{redeemer:i,amount:Oe.cairo.uint256(s),timelock:r.timelock,secretHash:z.hexToU32Array(r.secret_hash)}};try{const c=await this.account.signMessage(a),f=nb(c);if(f.error)return G(f.error);const l=await Dt.post(this.url.endpoint("initiate"),{body:JSON.stringify({order_id:r.create_id,signature:f.val,perform_on:"Source"}),headers:{"Content-Type":"application/json"},retryCount:10,retryDelay:2e3});return l.error?G(l.error):l.result?ie(l.result):G("Init: No result found")}catch(c){return G(`Failed to initiate relayer: ${String(c)}`)}}async redeem(t,r){try{const n=await Dt.post(this.url.endpoint("redeem"),{body:JSON.stringify({order_id:t.create_order.create_id,secret:r,perform_on:"Destination"}),headers:{"Content-Type":"application/json"},retryCount:10,retryDelay:2e3});return n.error?G(n.error):n.result?ie(n.result):G("Redeem: No result found")}catch(n){return G(String(n))}}async refund(){return G("Refund is taken care of by the relayer")}}class Pc extends z.EventBroker{constructor(t){if(super(),this.environment=z.Environment.TESTNET,this.getOrderThreshold=20,this.refundSacpCache=new Map,this.bitcoinRedeemCache=new e1,typeof t.digestKey=="string"){const n=z.DigestKey.from(t.digestKey);if(!n.ok)throw new Error(n.error);this._digestKey=n.val}else this._digestKey=t.digestKey;if(typeof t.environment=="string"){if(this.environment=t.environment,this._api=t.environment===z.Environment.MAINNET?Xn.mainnet:t.environment===z.Environment.TESTNET?Xn.testnet:void 0,!this._api)throw new Error("API not found, invalid environment "+t.environment)}else this._api=t.environment;this._quote=t.quote??new rl(this._api.quote),this._auth=t.auth??z.Siwe.fromDigestKey(new z.Url(this._api.auth),this._digestKey),this._orderbook=t.orderbook??new ge.Orderbook(new z.Url(this._api.orderbook)),this._evmHTLC=t.htlc.evm,this._starknetHTLC=t.htlc.starknet,this._secretManager=t.secretManager??Bi.fromDigestKey(this._digestKey.digestKey),this.orderExecutorCache=new Zg,this._blockNumberFetcher=t.blockNumberFetcher??new tl(this._api.info,this.environment);const r=new ln.BitcoinProvider(tb(this.environment));this._btcWallet=ln.BitcoinWallet.fromPrivateKey(this._digestKey.digestKey,r)}static fromWallets(t){let r;if(typeof t.digestKey=="string"){const s=z.DigestKey.from(t.digestKey);if(!s.ok)throw new Error(s.error);r=s.val}else r=t.digestKey;let n;if(typeof t.environment=="string"?n=t.environment===z.Environment.MAINNET?Xn.mainnet:t.environment===z.Environment.TESTNET?Xn.testnet:void 0:n=t.environment,!n)throw new Error("API not found, invalid environment "+t.environment);const i={evm:t.wallets.evm?new zl(n.evmRelay,t.wallets.evm,z.Siwe.fromDigestKey(new z.Url(n.auth),r)):void 0,starknet:t.wallets.starknet?new Wl(n.starknetRelay,t.wallets.starknet,t.environment===z.Environment.MAINNET?z.Network.MAINNET:z.Network.TESTNET):void 0};return new Pc({htlc:i,...t})}get evmHTLC(){return this._evmHTLC}get starknetHTLC(){return this._starknetHTLC}get quote(){return this._quote}get btcWallet(){return this._btcWallet}get orderbook(){return this._orderbook}get blockNumberFetcher(){return this._blockNumberFetcher}get secretManager(){return this._secretManager}get auth(){return this._auth}get digestKey(){return this._digestKey}async swap(t){const r=await this.validateAndFillParams(t);if(r.error)return G(r.error);const{sendAddress:n,receiveAddress:i,timelock:s}=r.val,o=Date.now().toString(),a=await this._secretManager.generateSecret(o);if(a.error)return G(a.error);const{strategyId:c,btcAddress:f}=t.additionalData,l={strategy_id:c,...f&&{bitcoin_optional_recipient:f}},h={source_chain:t.fromAsset.chain,destination_chain:t.toAsset.chain,source_asset:t.fromAsset.atomicSwapAddress,destination_asset:t.toAsset.atomicSwapAddress,initiator_source_address:n,initiator_destination_address:i,source_amount:t.sendAmount,destination_amount:t.receiveAmount,fee:"1",nonce:o,timelock:s,secret_hash:kr(a.val.secretHash),min_destination_confirmations:t.minDestinationConfirmations??0,additional_data:l},y=await this._quote.getAttestedQuote(h);if(y.error)return G(y.error);const p=await this._orderbook.createOrder(y.val,this.auth);if(p.error)return G(p.error);const g=await this.pollOrder(p.val);return g.error?G(g.error):ie(g.val)}async validateAndFillParams(t){if(!t.additionalData.strategyId)return G("StrategyId is required");if(!t.fromAsset||!t.toAsset)return G("Source and destination assets are required for swap");if(t.fromAsset.chain===t.toAsset.chain&&t.fromAsset.atomicSwapAddress===t.toAsset.atomicSwapAddress)return G("Source and destination assets cannot be the same");if(ge.isMainnet(t.fromAsset.chain)&&!ge.isMainnet(t.toAsset.chain)||!ge.isMainnet(t.fromAsset.chain)&&ge.isMainnet(t.toAsset.chain))return G("Both assets should be on the same network (either mainnet or testnet)");const r=this.validateAmount(t.sendAmount);if(r.error)return G(r.error);const n=this.validateAmount(t.receiveAmount);if(n.error)return G(n.error);if(r<n)return G("Send amount should be greater than receive amount");const i=ge.getTimeLock(t.fromAsset.chain);if(!i)return G("Unsupported chain for timelock");if((ge.isBitcoin(t.fromAsset.chain)||ge.isBitcoin(t.toAsset.chain))&&!t.additionalData.btcAddress)return G("btcAddress in additionalData is required if source or destination chain is bitcoin, it is used as refund or redeem address.");const s=await this.getAddresses(t.fromAsset.chain);if(s.error)return G(s.error);const o=await this.getAddresses(t.toAsset.chain);return o.error?G(o.error):ie({sendAddress:s.val,receiveAddress:o.val,timelock:t.timelock??i})}async getAddresses(t){var n;switch(ge.getBlockchainType(t)){case ge.BlockchainType.EVM:return this._evmHTLC?ie(this._evmHTLC.htlcActorAddress):G("Please provide evmHTLC when initializing garden");case ge.BlockchainType.Bitcoin:{const i=await((n=this._btcWallet)==null?void 0:n.getPublicKey());return!i||!Zm(i)?G("Invalid btc public key"):ie(fr(i))}case ge.BlockchainType.Starknet:return this._starknetHTLC?ie(this._starknetHTLC.htlcActorAddress):G("Please provide starknetHTLC when initializing garden");default:return G("Unsupported chain")}}validateAmount(t){if(t==null||t.includes("."))return G("Invalid amount ",t);const r=new Jl(t);return!r.isInteger()||r.isNaN()||r.lt(0)||r.isLessThanOrEqualTo(0)?G("Invalid amount ",t):ie(r)}async pollOrder(t){let r=await this._orderbook.getOrder(t,!0),n=0;for(;n<this.getOrderThreshold;){if(await z.sleep(1e3),n++,r.error){if(!r.error.includes("result is undefined"))return G(r.error)}else if(r.val&&r.val.create_order.create_id.toLowerCase()===t.toLowerCase())return ie(r.val);r=await this._orderbook.getOrder(t,!0)}return G(`Order not found, createOrder id: ${t}`)}async execute(t=5e3){return await this._orderbook.subscribeOrders(this._digestKey.userId,!0,t,async r=>{const n=await this.filterExpiredAndAssignStatus(r.data);if(!n.error&&(this.emit("onPendingOrdersChanged",n.val),r.data.length!==0))for(let i=0;i<n.val.length;i++){const s=n.val[i],o=fc(s.status);if(ge.isBitcoin(s.source_swap.chain)&&s.status===we.InitiateDetected){const a=this.btcWallet;if(!a){this.emit("error",s,"BTC wallet not found");continue}await this.postRefundSACP(s,a)}switch(o){case Ce.Redeem:{const a=await this._secretManager.generateSecret(s.create_order.nonce);if(a.error){this.emit("error",s,a.error);return}switch(ge.getBlockchainType(s.destination_swap.chain)){case ge.BlockchainType.EVM:{await this.evmRedeem(s,a.val.secret);break}case ge.BlockchainType.Bitcoin:{const c=this.btcWallet;if(!c){this.emit("error",s,"BTC wallet not found");return}await this.btcRedeem(c,s,a.val.secret);break}case ge.BlockchainType.Starknet:{await this.starknetRedeem(s,a.val.secret);break}default:this.emit("error",s,"Unsupported chain: "+s.destination_swap.chain)}break}case Ce.Refund:{switch(ge.getBlockchainType(s.source_swap.chain)){case ge.BlockchainType.EVM:{this.emit("error",s,"EVM refund is automatically done by relay service");break}case ge.BlockchainType.Bitcoin:{const a=this.btcWallet;if(!a){this.emit("error",s,"BTC wallet not found");return}await this.btcRefund(a,s);break}case ge.BlockchainType.Starknet:{this.emit("error",s,"Starknet refund is automatically done by relay service");break}default:this.emit("error",s,"Unsupported chain: "+s.source_swap.chain)}break}}}},"pending",{per_page:500})}async evmRedeem(t,r){if(this.emit("log",t.create_order.create_id,"executing evm redeem"),this.orderExecutorCache.get(t,Ce.Redeem)){this.emit("log",t.create_order.create_id,"already redeemed");return}if(!this._evmHTLC){this.emit("error",t,"EVMHTLC is required");return}const i=await this._evmHTLC.redeem(t,r);if(!i.ok){this.emit("error",t,i.error),i.error.includes("Order already redeemed")&&this.orderExecutorCache.set(t,Ce.Redeem,t.destination_swap.redeem_tx_hash);return}this.orderExecutorCache.set(t,Ce.Redeem,i.val),this.emit("success",t,Ce.Redeem,i.val)}async starknetRedeem(t,r){if(this.emit("log",t.create_order.create_id,"executing starknet redeem"),this.orderExecutorCache.get(t,Ce.Redeem)){this.emit("log",t.create_order.create_id,"already redeemed");return}if(!this._starknetHTLC){this.emit("error",t,"StarknetHTLC is required");return}const i=await this._starknetHTLC.redeem(t,r);if(i.error){this.emit("error",t,i.error),i.error.includes("Order already redeemed")&&this.orderExecutorCache.set(t,Ce.Redeem,t.destination_swap.redeem_tx_hash);return}i.val&&(this.orderExecutorCache.set(t,Ce.Redeem,i.val),this.emit("success",t,Ce.Redeem,i.val))}async btcRedeem(t,r,n){var a,c;const i=this.bitcoinRedeemCache.get(r.create_order.create_id),s=(a=r.destination_swap.initiate_tx_hash.split(",").at(-1))==null?void 0:a.split(":").at(0);if(!s){this.emit("error",r,"Failed to get initiate_tx_hash");return}let o=!1;if(i)if(i.redeemedFromUTXO&&i.redeemedFromUTXO!==s)o=!0,this.emit("log",r.create_order.create_id,"rbf btc redeem");else if(i.redeemedAt&&Date.now()-i.redeemedAt>1e3*60*15)this.emit("log",r.create_order.create_id,"redeem not confirmed in last 15 minutes"),o=!0;else{this.emit("log",r.create_order.create_id,"btcRedeem: already redeemed");return}else if(r.destination_swap.redeem_tx_hash&&!Number(r.destination_swap.redeem_block_number))try{const f=await(await t.getProvider()).getTransaction(r.destination_swap.redeem_tx_hash);let l=!1;for(const h of f.vin)if(h.txid===s){l=!0;break}if(l){this.emit("log",r.create_order.create_id,"already a valid redeem");let h=0;try{const[y]=await(await t.getProvider()).getTransactionTimes([r.destination_swap.redeem_tx_hash]);y!==0&&(h=y)}catch{h=Date.now()}this.bitcoinRedeemCache.set(r.create_order.create_id,{redeemedFromUTXO:s,redeemedAt:h,redeemTxHash:r.destination_swap.redeem_tx_hash});return}o=!0}catch(f){if(f.message.includes("Transaction not found"))o=!0;else{this.emit("error",r,"Failed to get redeem tx: "+f);return}}this.emit("log",r.create_order.create_id,"executing btc redeem");try{const l=await(await Zn.from(t,Number(r.destination_swap.amount),r.create_order.secret_hash,fr(r.destination_swap.initiator),fr(r.destination_swap.redeemer),r.destination_swap.timelock,o?[s]:[])).getRedeemHex(kr(n),(c=r.create_order.additional_data)==null?void 0:c.bitcoin_optional_recipient),h=await this.broadcastRedeemTx(l,r.create_order.create_id);if(h.error||!h.val){this.emit("error",r,h.error||"Failed to broadcast redeem tx");return}o?(this.emit("log",r.create_order.create_id,"rbf: btc redeem success"),this.emit("rbf",r,h.val)):this.emit("success",r,Ce.Redeem,h.val),this.bitcoinRedeemCache.set(r.create_order.create_id,{redeemedFromUTXO:s,redeemedAt:Date.now(),redeemTxHash:h.val})}catch(f){console.log("error",f),this.emit("error",r,"Failed btc redeem: "+f)}}async btcRefund(t,r){var n;if(!this.orderExecutorCache.get(r,Ce.Refund)){this.emit("log",r.create_order.create_id,"executing btc refund");try{const s=await(await Zn.from(t,Number(r.source_swap.amount),r.create_order.secret_hash,fr(r.source_swap.initiator),fr(r.source_swap.redeemer),r.source_swap.timelock)).refund((n=r.create_order.additional_data)==null?void 0:n.bitcoin_optional_recipient);this.orderExecutorCache.set(r,Ce.Refund,s),this.emit("success",r,Ce.Refund,s)}catch(i){this.emit("error",r,"Failed btc refund: "+i)}}}async postRefundSACP(t,r){const n=this.refundSacpCache.get(t.create_order.create_id);if((n==null?void 0:n.initTxHash)===t.source_swap.initiate_tx_hash)return;const i=await Zn.from(r,Number(t.source_swap.amount),t.create_order.secret_hash,fr(t.source_swap.initiator),fr(t.source_swap.redeemer),t.source_swap.timelock),s=t.create_order.additional_data.bitcoin_optional_recipient;if(s)try{const o=await i.generateInstantRefundSACP(s);if(!this._api)return;const a=new z.Url(this._api.orderbook).endpoint("orders/bitcoin/"+t.create_order.create_id+"/instant-refund");(await Dt.post(a,{headers:{"Content-Type":"application/json"},body:JSON.stringify({instant_refund_tx_bytes:o})})).status==="Ok"&&this.refundSacpCache.set(t.create_order.create_id,{initTxHash:t.source_swap.initiate_tx_hash})}catch(o){this.emit("error",t,"Failed to generate and post SACP: "+o);return}}async filterExpiredAndAssignStatus(t){var i;if(t.length===0)return ie([]);const r=await((i=this._blockNumberFetcher)==null?void 0:i.fetchBlockNumbers());if(r.error)return G(r.error);const n=[];for(let s=0;s<t.length;s++){const o=t[s];if(Nd(o))continue;const a=o.source_swap.chain,c=o.destination_swap.chain,f=r==null?void 0:r.val[a],l=r==null?void 0:r.val[c];if(!f||!l){this.emit("error",o,"Error while fetching CurrentBlockNumbers");continue}const h=uc(o,f,l);n.push({...o,status:h})}return ie(n)}async broadcastRedeemTx(t,r){try{if(!this._api)return G("API not found");const n=new z.Url(this._api.evmRelay).endpoint("/bitcoin/redeem "),i=await this._auth.getAuthHeaders(),o=await(await fetch(n,{method:"POST",headers:{"Content-Type":"application/json",...i.val},body:JSON.stringify({redeem_tx_bytes:t,order_id:r})})).json();return o.status==="Ok"&&o.result?ie(o.result):G(o.error)}catch(n){return G("Failed to broadcast redeem tx: "+n)}}}class l_{constructor(t,r,n){this.callData=new Oe.CallData(ql),this.account=t,this.starknetProvider=new Oe.RpcProvider({nodeUrl:r||(n?ki[n].nodeUrl:ki.mainnet.nodeUrl)})}get htlcActorAddress(){return this.account.address}async getHTLCContract(t,r=!1){const n=r?t.destination_swap.asset:t.source_swap.asset;return new Oe.Contract(Vl,n,this.account)}async initiate(t){try{const n=await(await this.getHTLCContract(t)).token();if(!n)throw new Error("Token address retrieval failed");const i=Oe.num.toHex(n),s=Oe.cairo.uint256(BigInt(t.source_swap.amount));try{const a=await u_(this.account,i,t.source_swap.asset,BigInt(t.source_swap.amount),this.starknetProvider);if(a.error)return G(a.error)}catch(a){return G(`Allowance check failed: ${a}`)}const o=await this.account.execute({contractAddress:t.source_swap.asset,entrypoint:"initiate",calldata:[t.source_swap.redeemer,BigInt(t.source_swap.timelock),s.low,s.high,...z.hexToU32Array(t.create_order.secret_hash)]});if(!o.transaction_hash)throw new Error("Failed to initiate HTLC transaction");return ie(o.transaction_hash)}catch(r){return G(`HTLC Initiation Error: ${r}`)}}async redeem(t,r){try{const n=await this.getHTLCContract(t,!0),i=t.create_order.source_chain.includes("starknet")?t.source_swap.swap_id:t.destination_swap.swap_id,s=await this.account.execute({contractAddress:n.address,entrypoint:"redeem",calldata:Oe.CallData.compile({swap_id:i,secret:z.hexToU32Array(r)})});return s.transaction_hash?ie(s.transaction_hash):G("Failed to redeem HTLC transaction")}catch{return G("HTLC Redeem Error")}}async refund(t){try{const r=t.create_order.source_chain.includes("starknet")?t.source_swap.swap_id:t.destination_swap.swap_id,n=await this.getHTLCContract(t),i=await this.account.execute({contractAddress:n.address,entrypoint:"refund",calldata:{orderId:r}});return i.transaction_hash?ie(i.transaction_hash):G("Failed to refund HTLC transaction")}catch{return G("HTLC Refund Error")}}}exports.API=Xn;exports.AbiErrorInputsNotFoundError=Kh;exports.AbiErrorNotFoundError=Yh;exports.AbiFunctionNotFoundError=ei;exports.AbiFunctionOutputsNotFoundError=xf;exports.AbiFunctionSignatureNotFoundError=Jh;exports.BaseError=F;exports.BlockNumberFetcher=tl;exports.EvmRelay=zl;exports.Garden=Pc;exports.Hash=La;exports.HttpRequestError=on;exports.InvalidArrayError=Af;exports.OrderActions=Ce;exports.OrderStatus=we;exports.ParseOrderStatus=uc;exports.ParseSwapStatus=_a;exports.Quote=rl;exports.STARKNET_CONFIG=ki;exports.SecretManager=Bi;exports.StarknetHTLC=l_;exports.StarknetRelay=Wl;exports.SwapStatus=xe;exports.abytes=Oi;exports.aexists=ti;exports.ahash=h0;exports.batchGatewayAbi=hy;exports.call=nc;exports.concat=Ur;exports.concatBytes=x0;exports.concatHex=Ct;exports.constructOrderPair=Rd;exports.decodeAbiParameters=Ni;exports.decodeErrorResult=zf;exports.encodeAbiParameters=Us;exports.evmToViemChainMap=jl;exports.filterDeadlineExpiredOrders=sb;exports.formatAbiItem=It;exports.getAbiItem=Sn;exports.getUrl=Fs;exports.hyperliquid=Dl;exports.hyperliquidTestnet=Hl;exports.isAddressEqual=ec;exports.isExpired=Si;exports.isHex=qt;exports.parseAction=ib;exports.parseActionFromStatus=fc;exports.randomBytes=A0;exports.sha256=rd;exports.slice=hn;exports.solidityError=jf;exports.stringify=rt;exports.switchOrAddNetwork=Gl;exports.toBytes=Os;exports.toFunctionSelector=Ls;exports.toXOnly=fr;exports.validateBTCAddress=eb;
|