zksync-easy-onramp
Version:
SDK package for ZKsync easy on ramp
70 lines • 292 kB
JavaScript
"use strict";var db=Object.defineProperty;var hb=(e,n,r)=>n in e?db(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r;var re=(e,n,r)=>hb(e,typeof n!="symbol"?n+"":n,r);const ce=require("viem");var Qf;(function(e){e.ETH="eth",e.POL="pol",e.BSC="bsc",e.DAI="dai",e.FTM="ftm",e.AVA="ava",e.ARB="arb",e.OPT="opt",e.ONE="one",e.FSN="fsn",e.MOR="mor",e.CEL="cel",e.FUS="fus",e.TLO="tlo",e.CRO="cro",e.BOB="bob",e.RSK="rsk",e.VEL="vel",e.MOO="moo",e.MAM="mam",e.AUR="aur",e.EVM="evm",e.ARN="arn",e.ERA="era",e.PZE="pze",e.LNA="lna",e.BAS="bas",e.SCL="scl",e.MOD="mod",e.MNT="mnt",e.BLS="bls",e.SEI="sei",e.FRA="fra",e.TAI="tai",e.GRA="gra",e.IMX="imx",e.KAI="kai",e.XLY="xly",e.OPB="opb",e.WCC="wcc",e.LSK="lsk",e.ABS="abs",e.BER="ber",e.SON="son",e.UNI="uni",e.APE="ape",e.SOE="soe",e.INK="ink",e.LNS="lns",e.SWL="swl",e.CRN="crn",e.ETL="etl",e.SUP="sup",e.SOL="sol",e.TER="ter",e.OAS="oas",e.SUI="sui",e.BTC="btc",e.BCH="bch",e.LTC="ltc",e.DGE="dge"})(Qf||(Qf={}));var Ur;(function(e){e[e.ETH=1]="ETH",e[e.POL=137]="POL",e[e.BSC=56]="BSC",e[e.DAI=100]="DAI",e[e.FTM=250]="FTM",e[e.AVA=43114]="AVA",e[e.ARB=42161]="ARB",e[e.OPT=10]="OPT",e[e.ONE=16666e5]="ONE",e[e.FSN=32659]="FSN",e[e.MOR=1285]="MOR",e[e.CEL=42220]="CEL",e[e.FUS=122]="FUS",e[e.TLO=40]="TLO",e[e.CRO=25]="CRO",e[e.BOB=288]="BOB",e[e.RSK=30]="RSK",e[e.VEL=106]="VEL",e[e.MOO=1284]="MOO",e[e.MAM=1088]="MAM",e[e.AUR=1313161554]="AUR",e[e.EVM=9001]="EVM",e[e.ARN=42170]="ARN",e[e.ERA=324]="ERA",e[e.PZE=1101]="PZE",e[e.LNA=59144]="LNA",e[e.BAS=8453]="BAS",e[e.SCL=534352]="SCL",e[e.MOD=34443]="MOD",e[e.MNT=5e3]="MNT",e[e.BLS=81457]="BLS",e[e.SEI=1329]="SEI",e[e.FRA=252]="FRA",e[e.TAI=167e3]="TAI",e[e.GRA=1625]="GRA",e[e.IMX=13371]="IMX",e[e.KAI=8217]="KAI",e[e.XLY=196]="XLY",e[e.OPB=204]="OPB",e[e.WCC=480]="WCC",e[e.LSK=1135]="LSK",e[e.ABS=2741]="ABS",e[e.BER=80094]="BER",e[e.SON=146]="SON",e[e.UNI=130]="UNI",e[e.APE=33139]="APE",e[e.SOE=1868]="SOE",e[e.INK=57073]="INK",e[e.LNS=232]="LNS",e[e.SWL=1923]="SWL",e[e.CRN=21e6]="CRN",e[e.ETL=42793]="ETL",e[e.SUP=55244]="SUP",e[e.SOL=0x416edef1601be]="SOL",e[e.TER=0x41feef8a540be]="TER",e[e.OAS=0x65d650afb73e]="OAS",e[e.SUI=927e13]="SUI",e[e.BTC=20000000000001]="BTC",e[e.BCH=20000000000002]="BCH",e[e.LTC=20000000000003]="LTC",e[e.DGE=20000000000004]="DGE"})(Ur||(Ur={}));var $t;(function(e){e.EVM="EVM",e.SVM="SVM",e.MVM="MVM",e.UTXO="UTXO"})($t||($t={}));const be=(()=>{const e={integrator:"lifi-sdk",apiUrl:"https://li.quest/v1",rpcUrls:{},chains:[],providers:[],preloadChains:!0,debug:!1};let n;return{set loading(r){n=r},get(){return e},set(r){const{chains:s,providers:o,rpcUrls:u,...c}=r;return Object.assign(e,c),s&&this.setChains(s),o&&this.setProviders(o),u&&this.setRPCUrls(u),e},getProvider(r){return e.providers.find(s=>s.type===r)},setProviders(r){const s=new Map(e.providers.map(o=>[o.type,o]));for(const o of r)s.set(o.type,o);e.providers=Array.from(s.values())},setChains(r){const s=r.reduce((o,u)=>{var c,l;return(l=(c=u.metamask)==null?void 0:c.rpcUrls)!=null&&l.length&&(o[u.id]=u.metamask.rpcUrls),o},{});this.setRPCUrls(s,[Ur.SOL]),e.chains=r,n=void 0},async getChains(){return n&&await n,e.chains},async getChainById(r){var o;n&&await n;const s=(o=e.chains)==null?void 0:o.find(u=>u.id===r);if(!s)throw new Error(`ChainId ${r} not found`);return s},setRPCUrls(r,s){var o;for(const u in r){const c=Number(u),l=r[c];if(l!=null&&l.length){if(!((o=e.rpcUrls[c])!=null&&o.length))e.rpcUrls[c]=Array.from(l);else if(!(s!=null&&s.includes(c))){const h=l.filter(m=>{var A;return!((A=e.rpcUrls[c])!=null&&A.includes(m))});e.rpcUrls[c].push(...h)}}}},async getRPCUrls(){return n&&await n,e.rpcUrls}}})(),Rl="2.29.3";let Dr={getDocsUrl:({docsBaseUrl:e,docsPath:n="",docsSlug:r})=>n?`${e??"https://viem.sh"}${n}${r?`#${r}`:""}`:void 0,version:`viem@${Rl}`},O=class aa extends Error{constructor(n,r={}){var l;const s=(()=>{var h;return r.cause instanceof aa?r.cause.details:(h=r.cause)!=null&&h.message?r.cause.message:r.details})(),o=r.cause instanceof aa&&r.cause.docsPath||r.docsPath,u=(l=Dr.getDocsUrl)==null?void 0:l.call(Dr,{...r,docsPath:o}),c=[n||"An error occurred.","",...r.metaMessages?[...r.metaMessages,""]:[],...u?[`Docs: ${u}`]:[],...s?[`Details: ${s}`]:[],...Dr.version?[`Version: ${Dr.version}`]:[]].join(`
`);super(c,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=s,this.docsPath=o,this.metaMessages=r.metaMessages,this.name=r.name??this.name,this.shortMessage=n,this.version=Rl}walk(n){return Dl(this,n)}};function Dl(e,n){return n!=null&&n(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause!==void 0?Dl(e.cause,n):n?null:e}let Cl=class extends O{constructor({max:n,min:r,signed:s,size:o,value:u}){super(`Number "${u}" is not in safe ${o?`${o*8}-bit ${s?"signed":"unsigned"} `:""}integer range ${n?`(${r} to ${n})`:`(above ${r})`}`,{name:"IntegerOutOfRangeError"})}};class pb extends O{constructor(n){super(`Bytes value "${n}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class gb extends O{constructor({givenSize:n,maxSize:r}){super(`Size cannot exceed ${r} bytes. Given size: ${n} bytes.`,{name:"SizeOverflowError"})}}class _l extends O{constructor({offset:n,position:r,size:s}){super(`Slice ${r==="start"?"starting":"ending"} at offset "${n}" is out-of-bounds (size: ${s}).`,{name:"SliceOffsetOutOfBoundsError"})}}let Nl=class extends O{constructor({size:n,targetSize:r,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} size (${n}) exceeds padding size (${r}).`,{name:"SizeExceedsPaddingSizeError"})}};class zf extends O{constructor({size:n,targetSize:r,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} is expected to be ${r} ${s} long, but is ${n} ${s} long.`,{name:"InvalidBytesLengthError"})}}function ir(e,{dir:n,size:r=32}={}){return typeof e=="string"?fn(e,{dir:n,size:r}):mb(e,{dir:n,size:r})}function fn(e,{dir:n,size:r=32}={}){if(r===null)return e;const s=e.replace("0x","");if(s.length>r*2)throw new Nl({size:Math.ceil(s.length/2),targetSize:r,type:"hex"});return`0x${s[n==="right"?"padEnd":"padStart"](r*2,"0")}`}function mb(e,{dir:n,size:r=32}={}){if(r===null)return e;if(e.length>r)throw new Nl({size:e.length,targetSize:r,type:"bytes"});const s=new Uint8Array(r);for(let o=0;o<r;o++){const u=n==="right";s[u?o:r-o-1]=e[u?o:e.length-o-1]}return s}function St(e,{strict:n=!0}={}){return!e||typeof e!="string"?!1:n?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")}function Se(e){return St(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}function fs(e,{dir:n="left"}={}){let r=typeof e=="string"?e.replace("0x",""):e,s=0;for(let o=0;o<r.length-1&&r[n==="left"?o:r.length-o-1].toString()==="0";o++)s++;return r=n==="left"?r.slice(s):r.slice(0,r.length-s),typeof e=="string"?(r.length===1&&n==="right"&&(r=`${r}0`),`0x${r.length%2===1?`0${r}`:r}`):r}const Ab=new TextEncoder;function ls(e,n={}){return typeof e=="number"||typeof e=="bigint"?wb(e,n):typeof e=="boolean"?yb(e,n):St(e)?qt(e,n):Bn(e,n)}function yb(e,n={}){const r=new Uint8Array(1);return r[0]=Number(e),typeof n.size=="number"?(Ct(r,{size:n.size}),ir(r,{size:n.size})):r}const zt={zero:48,nine:57,A:65,F:70,a:97,f:102};function Wf(e){if(e>=zt.zero&&e<=zt.nine)return e-zt.zero;if(e>=zt.A&&e<=zt.F)return e-(zt.A-10);if(e>=zt.a&&e<=zt.f)return e-(zt.a-10)}function qt(e,n={}){let r=e;n.size&&(Ct(r,{size:n.size}),r=ir(r,{dir:"right",size:n.size}));let s=r.slice(2);s.length%2&&(s=`0${s}`);const o=s.length/2,u=new Uint8Array(o);for(let c=0,l=0;c<o;c++){const h=Wf(s.charCodeAt(l++)),m=Wf(s.charCodeAt(l++));if(h===void 0||m===void 0)throw new O(`Invalid byte sequence ("${s[l-2]}${s[l-1]}" in "${s}").`);u[c]=h*16+m}return u}function wb(e,n){const r=X(e,n);return qt(r)}function Bn(e,n={}){const r=Ab.encode(e);return typeof n.size=="number"?(Ct(r,{size:n.size}),ir(r,{dir:"right",size:n.size})):r}function Ct(e,{size:n}){if(Se(e)>n)throw new gb({givenSize:Se(e),maxSize:n})}function dn(e,n={}){const{signed:r}=n;n.size&&Ct(e,{size:n.size});const s=BigInt(e);if(!r)return s;const o=(e.length-2)/2,u=(1n<<BigInt(o)*8n-1n)-1n;return s<=u?s:s-BigInt(`0x${"f".padStart(o*2,"f")}`)-1n}function hn(e,n={}){return Number(dn(e,n))}const bb=Array.from({length:256},(e,n)=>n.toString(16).padStart(2,"0"));function Xi(e,n={}){return typeof e=="number"||typeof e=="bigint"?X(e,n):typeof e=="string"?Ml(e,n):typeof e=="boolean"?Ol(e,n):Ue(e,n)}function Ol(e,n={}){const r=`0x${Number(e)}`;return typeof n.size=="number"?(Ct(r,{size:n.size}),ir(r,{size:n.size})):r}function Ue(e,n={}){let r="";for(let o=0;o<e.length;o++)r+=bb[e[o]];const s=`0x${r}`;return typeof n.size=="number"?(Ct(s,{size:n.size}),ir(s,{dir:"right",size:n.size})):s}function X(e,n={}){const{signed:r,size:s}=n,o=BigInt(e);let u;s?r?u=(1n<<BigInt(s)*8n-1n)-1n:u=2n**(BigInt(s)*8n)-1n:typeof e=="number"&&(u=BigInt(Number.MAX_SAFE_INTEGER));const c=typeof u=="bigint"&&r?-u-1n:0;if(u&&o>u||o<c){const h=typeof e=="bigint"?"n":"";throw new Cl({max:u?`${u}${h}`:void 0,min:`${c}${h}`,signed:r,size:s,value:`${e}${h}`})}const l=`0x${(r&&o<0?(1n<<BigInt(s*8))+BigInt(o):o).toString(16)}`;return s?ir(l,{size:s}):l}const xb=new TextEncoder;function Ml(e,n={}){const r=xb.encode(e);return Ue(r,n)}function pn(e,{includeName:n=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new Ob(e.type);return`${e.name}(${Ua(e.inputs,{includeName:n})})`}function Ua(e,{includeName:n=!1}={}){return e?e.map(r=>Eb(r,{includeName:n})).join(n?", ":","):""}function Eb(e,{includeName:n}){return e.type.startsWith("tuple")?`(${Ua(e.components,{includeName:n})})${e.type.slice(5)}`:e.type+(n&&e.name?` ${e.name}`:"")}class vb extends O{constructor({docsPath:n}){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(`
`),{docsPath:n,name:"AbiConstructorNotFoundError"})}}class $f extends O{constructor({docsPath:n}){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(`
`),{docsPath:n,name:"AbiConstructorParamsNotFoundError"})}}class Pb extends O{constructor({data:n,params:r,size:s}){super([`Data size of ${s} bytes is too small for given parameters.`].join(`
`),{metaMessages:[`Params: (${Ua(r,{includeName:!0})})`,`Data: ${n} (${s} 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=n,this.params=r,this.size=s}}class ds extends O{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}}class Tb extends O{constructor({expectedLength:n,givenLength:r,type:s}){super([`ABI encoding array length mismatch for type ${s}.`,`Expected length: ${n}`,`Given length: ${r}`].join(`
`),{name:"AbiEncodingArrayLengthMismatchError"})}}class Ib extends O{constructor({expectedSize:n,value:r}){super(`Size of bytes "${r}" (bytes${Se(r)}) does not match expected size (bytes${n}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class Bb extends O{constructor({expectedLength:n,givenLength:r}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${n}`,`Given length (values): ${r}`].join(`
`),{name:"AbiEncodingLengthMismatchError"})}}class Sb extends O{constructor(n,{docsPath:r}){super([`Arguments (\`args\`) were provided to "${n}", but "${n}" 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(`
`),{docsPath:r,name:"AbiErrorInputsNotFoundError"})}}class Vf extends O{constructor(n,{docsPath:r}={}){super([`Error ${n?`"${n}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(`
`),{docsPath:r,name:"AbiErrorNotFoundError"})}}class Ul extends O{constructor(n,{docsPath:r}){super([`Encoded error signature "${n}" 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=${n}.`].join(`
`),{docsPath:r,name:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=n}}class Zn extends O{constructor(n,{docsPath:r}={}){super([`Function ${n?`"${n}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
`),{docsPath:r,name:"AbiFunctionNotFoundError"})}}class Fl extends O{constructor(n,{docsPath:r}){super([`Function "${n}" 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(`
`),{docsPath:r,name:"AbiFunctionOutputsNotFoundError"})}}class Rb extends O{constructor(n,{docsPath:r}){super([`Encoded function signature "${n}" 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=${n}.`].join(`
`),{docsPath:r,name:"AbiFunctionSignatureNotFoundError"})}}class Db extends O{constructor(n,r){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${n.type}\` in \`${pn(n.abiItem)}\`, and`,`\`${r.type}\` in \`${pn(r.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}class Cb extends O{constructor({expectedSize:n,givenSize:r}){super(`Expected bytes${n}, got bytes${r}.`,{name:"BytesSizeMismatchError"})}}class _b extends O{constructor(n,{docsPath:r}){super([`Type "${n}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
`),{docsPath:r,name:"InvalidAbiEncodingType"})}}class Nb extends O{constructor(n,{docsPath:r}){super([`Type "${n}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
`),{docsPath:r,name:"InvalidAbiDecodingType"})}}class kl extends O{constructor(n){super([`Value "${n}" is not a valid array.`].join(`
`),{name:"InvalidArrayError"})}}class Ob extends O{constructor(n){super([`"${n}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
`),{name:"InvalidDefinitionTypeError"})}}function gn(e){return typeof e[0]=="string"?Vr(e):Mb(e)}function Mb(e){let n=0;for(const o of e)n+=o.length;const r=new Uint8Array(n);let s=0;for(const o of e)r.set(o,s),s+=o.length;return r}function Vr(e){return`0x${e.reduce((n,r)=>n+r.replace("0x",""),"")}`}class Xn extends O{constructor({address:n}){super(`Address "${n}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}let Fa=class extends Map{constructor(n){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=n}get(n){const r=super.get(n);return super.has(n)&&r!==void 0&&(this.delete(n),super.set(n,r)),r}set(n,r){if(super.set(n,r),this.maxSize&&this.size>this.maxSize){const s=this.keys().next().value;s&&this.delete(s)}return this}};function es(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Ub(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function qr(e,...n){if(!Ub(e))throw new Error("Uint8Array expected");if(n.length>0&&!n.includes(e.length))throw new Error("Uint8Array expected of length "+n+", got length="+e.length)}function Fb(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");es(e.outputLen),es(e.blockLen)}function Fr(e,n=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(n&&e.finished)throw new Error("Hash#digest() has already been called")}function Ll(e,n){qr(e);const r=n.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}const qi=BigInt(2**32-1),qf=BigInt(32);function kb(e,n=!1){return n?{h:Number(e&qi),l:Number(e>>qf&qi)}:{h:Number(e>>qf&qi)|0,l:Number(e&qi)|0}}function Lb(e,n=!1){let r=new Uint32Array(e.length),s=new Uint32Array(e.length);for(let o=0;o<e.length;o++){const{h:u,l:c}=kb(e[o],n);[r[o],s[o]]=[u,c]}return[r,s]}const Gb=(e,n,r)=>e<<r|n>>>32-r,Hb=(e,n,r)=>n<<r|e>>>32-r,Qb=(e,n,r)=>n<<r-32|e>>>64-r,zb=(e,n,r)=>e<<r-32|n>>>64-r,Vn=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Wb(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function $o(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Tt(e,n){return e<<32-n|e>>>n}const Jf=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function $b(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Kf(e){for(let n=0;n<e.length;n++)e[n]=$b(e[n])}typeof Uint8Array.from([]).toHex=="function"&&Uint8Array.fromHex;function Vb(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function hs(e){return typeof e=="string"&&(e=Vb(e)),qr(e),e}function qb(...e){let n=0;for(let s=0;s<e.length;s++){const o=e[s];qr(o),n+=o.length}const r=new Uint8Array(n);for(let s=0,o=0;s<e.length;s++){const u=e[s];r.set(u,o),o+=u.length}return r}class ka{clone(){return this._cloneInto()}}function Gl(e){const n=s=>e().update(hs(s)).digest(),r=e();return n.outputLen=r.outputLen,n.blockLen=r.blockLen,n.create=()=>e(),n}function Jb(e=32){if(Vn&&typeof Vn.getRandomValues=="function")return Vn.getRandomValues(new Uint8Array(e));if(Vn&&typeof Vn.randomBytes=="function")return Uint8Array.from(Vn.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}const Hl=[],Ql=[],zl=[],Kb=BigInt(0),Cr=BigInt(1),Yb=BigInt(2),jb=BigInt(7),Zb=BigInt(256),Xb=BigInt(113);for(let e=0,n=Cr,r=1,s=0;e<24;e++){[r,s]=[s,(2*r+3*s)%5],Hl.push(2*(5*s+r)),Ql.push((e+1)*(e+2)/2%64);let o=Kb;for(let u=0;u<7;u++)n=(n<<Cr^(n>>jb)*Xb)%Zb,n&Yb&&(o^=Cr<<(Cr<<BigInt(u))-Cr);zl.push(o)}const[e1,t1]=Lb(zl,!0),Yf=(e,n,r)=>r>32?Qb(e,n,r):Gb(e,n,r),jf=(e,n,r)=>r>32?zb(e,n,r):Hb(e,n,r);function n1(e,n=24){const r=new Uint32Array(10);for(let s=24-n;s<24;s++){for(let c=0;c<10;c++)r[c]=e[c]^e[c+10]^e[c+20]^e[c+30]^e[c+40];for(let c=0;c<10;c+=2){const l=(c+8)%10,h=(c+2)%10,m=r[h],A=r[h+1],w=Yf(m,A,1)^r[l],x=jf(m,A,1)^r[l+1];for(let T=0;T<50;T+=10)e[c+T]^=w,e[c+T+1]^=x}let o=e[2],u=e[3];for(let c=0;c<24;c++){const l=Ql[c],h=Yf(o,u,l),m=jf(o,u,l),A=Hl[c];o=e[A],u=e[A+1],e[A]=h,e[A+1]=m}for(let c=0;c<50;c+=10){for(let l=0;l<10;l++)r[l]=e[c+l];for(let l=0;l<10;l++)e[c+l]^=~r[(l+2)%10]&r[(l+4)%10]}e[0]^=e1[s],e[1]^=t1[s]}r.fill(0)}class La extends ka{constructor(n,r,s,o=!1,u=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=n,this.suffix=r,this.outputLen=s,this.enableXOF=o,this.rounds=u,es(s),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Wb(this.state)}keccak(){Jf||Kf(this.state32),n1(this.state32,this.rounds),Jf||Kf(this.state32),this.posOut=0,this.pos=0}update(n){Fr(this);const{blockLen:r,state:s}=this;n=hs(n);const o=n.length;for(let u=0;u<o;){const c=Math.min(r-this.pos,o-u);for(let l=0;l<c;l++)s[this.pos++]^=n[u++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:n,suffix:r,pos:s,blockLen:o}=this;n[s]^=r,(r&128)!==0&&s===o-1&&this.keccak(),n[o-1]^=128,this.keccak()}writeInto(n){Fr(this,!1),qr(n),this.finish();const r=this.state,{blockLen:s}=this;for(let o=0,u=n.length;o<u;){this.posOut>=s&&this.keccak();const c=Math.min(s-this.posOut,u-o);n.set(r.subarray(this.posOut,this.posOut+c),o),this.posOut+=c,o+=c}return n}xofInto(n){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(n)}xof(n){return es(n),this.xofInto(new Uint8Array(n))}digestInto(n){if(Ll(n,this),this.finished)throw new Error("digest() was already called");return this.writeInto(n),this.destroy(),n}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(n){const{blockLen:r,suffix:s,outputLen:o,rounds:u,enableXOF:c}=this;return n||(n=new La(r,s,o,c,u)),n.state32.set(this.state32),n.pos=this.pos,n.posOut=this.posOut,n.finished=this.finished,n.rounds=u,n.suffix=s,n.outputLen=o,n.enableXOF=c,n.destroyed=this.destroyed,n}}const r1=(e,n,r)=>Gl(()=>new La(n,e,r)),i1=r1(1,136,256/8);function Sn(e,n){const r=n||"hex",s=i1(St(e,{strict:!1})?ls(e):e);return r==="bytes"?s:Xi(s)}const Vo=new Fa(8192);function ps(e,n){if(Vo.has(`${e}.${n}`))return Vo.get(`${e}.${n}`);const r=e.substring(2).toLowerCase(),s=Sn(Bn(r),"bytes"),o=r.split("");for(let c=0;c<40;c+=2)s[c>>1]>>4>=8&&o[c]&&(o[c]=o[c].toUpperCase()),(s[c>>1]&15)>=8&&o[c+1]&&(o[c+1]=o[c+1].toUpperCase());const u=`0x${o.join("")}`;return Vo.set(`${e}.${n}`,u),u}const s1=/^0x[a-fA-F0-9]{40}$/,qo=new Fa(8192);function Jt(e,n){const{strict:r=!0}=n??{},s=`${e}.${r}`;if(qo.has(s))return qo.get(s);const o=s1.test(e)?e.toLowerCase()===e?!0:r?ps(e)===e:!0:!1;return qo.set(s,o),o}function er(e,n,r,{strict:s}={}){return St(e,{strict:!1})?o1(e,n,r,{strict:s}):Vl(e,n,r,{strict:s})}function Wl(e,n){if(typeof n=="number"&&n>0&&n>Se(e)-1)throw new _l({offset:n,position:"start",size:Se(e)})}function $l(e,n,r){if(typeof n=="number"&&typeof r=="number"&&Se(e)!==r-n)throw new _l({offset:r,position:"end",size:Se(e)})}function Vl(e,n,r,{strict:s}={}){Wl(e,n);const o=e.slice(n,r);return s&&$l(o,n,r),o}function o1(e,n,r,{strict:s}={}){Wl(e,n);const o=`0x${e.replace("0x","").slice((n??0)*2,(r??e.length)*2)}`;return s&&$l(o,n,r),o}const a1=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ql=/^(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 Jr(e,n){if(e.length!==n.length)throw new Bb({expectedLength:e.length,givenLength:n.length});const r=u1({params:e,values:n}),s=Ha(r);return s.length===0?"0x":s}function u1({params:e,values:n}){const r=[];for(let s=0;s<e.length;s++)r.push(Ga({param:e[s],value:n[s]}));return r}function Ga({param:e,value:n}){const r=Qa(e.type);if(r){const[s,o]=r;return f1(n,{length:s,param:{...e,type:o}})}if(e.type==="tuple")return g1(n,{param:e});if(e.type==="address")return c1(n);if(e.type==="bool")return d1(n);if(e.type.startsWith("uint")||e.type.startsWith("int")){const s=e.type.startsWith("int"),[,,o="256"]=ql.exec(e.type)??[];return h1(n,{signed:s,size:Number(o)})}if(e.type.startsWith("bytes"))return l1(n,{param:e});if(e.type==="string")return p1(n);throw new _b(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Ha(e){let n=0;for(let u=0;u<e.length;u++){const{dynamic:c,encoded:l}=e[u];c?n+=32:n+=Se(l)}const r=[],s=[];let o=0;for(let u=0;u<e.length;u++){const{dynamic:c,encoded:l}=e[u];c?(r.push(X(n+o,{size:32})),s.push(l),o+=Se(l)):r.push(l)}return gn([...r,...s])}function c1(e){if(!Jt(e))throw new Xn({address:e});return{dynamic:!1,encoded:fn(e.toLowerCase())}}function f1(e,{length:n,param:r}){const s=n===null;if(!Array.isArray(e))throw new kl(e);if(!s&&e.length!==n)throw new Tb({expectedLength:n,givenLength:e.length,type:`${r.type}[${n}]`});let o=!1;const u=[];for(let c=0;c<e.length;c++){const l=Ga({param:r,value:e[c]});l.dynamic&&(o=!0),u.push(l)}if(s||o){const c=Ha(u);if(s){const l=X(u.length,{size:32});return{dynamic:!0,encoded:u.length>0?gn([l,c]):l}}if(o)return{dynamic:!0,encoded:c}}return{dynamic:!1,encoded:gn(u.map(({encoded:c})=>c))}}function l1(e,{param:n}){const[,r]=n.type.split("bytes"),s=Se(e);if(!r){let o=e;return s%32!==0&&(o=fn(o,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:gn([fn(X(s,{size:32})),o])}}if(s!==Number.parseInt(r))throw new Ib({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:fn(e,{dir:"right"})}}function d1(e){if(typeof e!="boolean")throw new O(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:fn(Ol(e))}}function h1(e,{signed:n,size:r=256}){if(typeof r=="number"){const s=2n**(BigInt(r)-(n?1n:0n))-1n,o=n?-s-1n:0n;if(e>s||e<o)throw new Cl({max:s.toString(),min:o.toString(),signed:n,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:X(e,{size:32,signed:n})}}function p1(e){const n=Ml(e),r=Math.ceil(Se(n)/32),s=[];for(let o=0;o<r;o++)s.push(fn(er(n,o*32,(o+1)*32),{dir:"right"}));return{dynamic:!0,encoded:gn([fn(X(Se(n),{size:32})),...s])}}function g1(e,{param:n}){let r=!1;const s=[];for(let o=0;o<n.components.length;o++){const u=n.components[o],c=Array.isArray(e)?o:u.name,l=Ga({param:u,value:e[c]});s.push(l),l.dynamic&&(r=!0)}return{dynamic:r,encoded:r?Ha(s):gn(s.map(({encoded:o})=>o))}}function Qa(e){const n=e.match(/^(.*)\[(\d+)?\]$/);return n?[n[2]?Number(n[2]):null,n[1]]:void 0}const Jo="/docs/contract/encodeDeployData";function Jl(e){const{abi:n,args:r,bytecode:s}=e;if(!r||r.length===0)return s;const o=n.find(c=>"type"in c&&c.type==="constructor");if(!o)throw new vb({docsPath:Jo});if(!("inputs"in o))throw new $f({docsPath:Jo});if(!o.inputs||o.inputs.length===0)throw new $f({docsPath:Jo});const u=Jr(o.inputs,r);return Vr([s,u])}function Yt(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}class za extends O{constructor({docsPath:n}={}){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(`
`),{docsPath:n,docsSlug:"account",name:"AccountNotFoundError"})}}class Ko extends O{constructor({docsPath:n,metaMessages:r,type:s}){super(`Account type "${s}" is not supported.`,{docsPath:n,metaMessages:r,name:"AccountTypeNotSupportedError"})}}function m1(e){const n=Sn(`0x${e.substring(4)}`).substring(26);return ps(`0x${n}`)}async function A1({hash:e,signature:n}){const r=St(e)?e:Xi(e),{secp256k1:s}=await Promise.resolve().then(()=>require("./secp256k1-BxV6NE0K.cjs"));return`0x${(()=>{if(typeof n=="object"&&"r"in n&&"s"in n){const{r:m,s:A,v:w,yParity:x}=n,T=Number(x??w),I=Zf(T);return new s.Signature(dn(m),dn(A)).addRecoveryBit(I)}const c=St(n)?n:Xi(n);if(Se(c)!==65)throw new Error("invalid signature length");const l=hn(`0x${c.slice(130)}`),h=Zf(l);return s.Signature.fromCompact(c.substring(2,130)).addRecoveryBit(h)})().recoverPublicKey(r.substring(2)).toHex(!1)}`}function Zf(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 y1({hash:e,signature:n}){return m1(await A1({hash:e,signature:n}))}class Xf extends O{constructor({offset:n}){super(`Offset \`${n}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class w1 extends O{constructor({length:n,position:r}){super(`Position \`${r}\` is out of bounds (\`0 < position < ${n}\`).`,{name:"PositionOutOfBoundsError"})}}class b1 extends O{constructor({count:n,limit:r}){super(`Recursive read limit of \`${r}\` exceeded (recursive read count: \`${n}\`).`,{name:"RecursiveReadLimitExceededError"})}}const x1={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 b1({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new w1({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Xf({offset:e});const n=this.position-e;this.assertPosition(n),this.position=n},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Xf({offset:e});const n=this.position+e;this.assertPosition(n),this.position=n},inspectByte(e){const n=e??this.position;return this.assertPosition(n),this.bytes[n]},inspectBytes(e,n){const r=n??this.position;return this.assertPosition(r+e-1),this.bytes.subarray(r,r+e)},inspectUint8(e){const n=e??this.position;return this.assertPosition(n),this.bytes[n]},inspectUint16(e){const n=e??this.position;return this.assertPosition(n+1),this.dataView.getUint16(n)},inspectUint24(e){const n=e??this.position;return this.assertPosition(n+2),(this.dataView.getUint16(n)<<8)+this.dataView.getUint8(n+2)},inspectUint32(e){const n=e??this.position;return this.assertPosition(n+3),this.dataView.getUint32(n)},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,n){this.assertReadLimit(),this._touch();const r=this.inspectBytes(e);return this.position+=n??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 n=this.position;return this.assertPosition(e),this.position=e,()=>this.position=n},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Wa(e,{recursiveReadLimit:n=8192}={}){const r=Object.create(x1);return r.bytes=e,r.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),r.positionReadCount=new Map,r.recursiveReadLimit=n,r}function E1(e,n="hex"){const r=Kl(e),s=Wa(new Uint8Array(r.length));return r.encode(s),n==="hex"?Ue(s.bytes):s.bytes}function Kl(e){return Array.isArray(e)?v1(e.map(n=>Kl(n))):P1(e)}function v1(e){const n=e.reduce((o,u)=>o+u.length,0),r=Yl(n);return{length:n<=55?1+n:1+r+n,encode(o){n<=55?o.pushByte(192+n):(o.pushByte(247+r),r===1?o.pushUint8(n):r===2?o.pushUint16(n):r===3?o.pushUint24(n):o.pushUint32(n));for(const{encode:u}of e)u(o)}}}function P1(e){const n=typeof e=="string"?qt(e):e,r=Yl(n.length);return{length:n.length===1&&n[0]<128?1:n.length<=55?1+n.length:1+r+n.length,encode(o){n.length===1&&n[0]<128?o.pushBytes(n):n.length<=55?(o.pushByte(128+n.length),o.pushBytes(n)):(o.pushByte(183+r),r===1?o.pushUint8(n.length):r===2?o.pushUint16(n.length):r===3?o.pushUint24(n.length):o.pushUint32(n.length),o.pushBytes(n))}}}function Yl(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 O("Length is too large.")}function T1(e){const{chainId:n,nonce:r,to:s}=e,o=e.contractAddress??e.address,u=Sn(Vr(["0x05",E1([n?X(n):"0x",o,r?X(r):"0x"])]));return s==="bytes"?qt(u):u}async function jl(e){const{authorization:n,signature:r}=e;return y1({hash:T1(n),signature:r??n})}class ua extends O{constructor({blockNumber:n,chain:r,contract:s}){super(`Chain "${r.name}" does not support contract "${s.name}".`,{metaMessages:["This could be due to any of the following:",...n&&s.blockCreated&&s.blockCreated>n?[`- The contract "${s.name}" was not deployed until block ${s.blockCreated} (current block ${n}).`]:[`- The chain does not have the contract "${s.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class I1 extends O{constructor({chain:n,currentChainId:r}){super(`The current chain of the wallet (id: ${r}) does not match the target chain for the transaction (id: ${n.id} – ${n.name}).`,{metaMessages:[`Current Chain ID: ${r}`,`Expected Chain ID: ${n.id} – ${n.name}`],name:"ChainMismatchError"})}}class B1 extends O{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(`
`),{name:"ChainNotFoundError"})}}class Zl extends O{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}function S1({chain:e,currentChainId:n}){if(!e)throw new B1;if(n!==e.id)throw new I1({chain:e,currentChainId:n})}const R1={gwei:9,wei:18},D1={ether:-9,wei:9};function Xl(e,n){let r=e.toString();const s=r.startsWith("-");s&&(r=r.slice(1)),r=r.padStart(n,"0");let[o,u]=[r.slice(0,r.length-n),r.slice(r.length-n)];return u=u.replace(/(0+)$/,""),`${s?"-":""}${o||"0"}${u?`.${u}`:""}`}function je(e,n="wei"){return Xl(e,D1[n])}class Jn extends O{constructor({cause:n,message:r}={}){var o;const s=(o=r==null?void 0:r.replace("execution reverted: ",""))==null?void 0:o.replace("execution reverted","");super(`Execution reverted ${s?`with reason: ${s}`:"for an unknown reason"}.`,{cause:n,name:"ExecutionRevertedError"})}}Object.defineProperty(Jn,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(Jn,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class ts extends O{constructor({cause:n,maxFeePerGas:r}={}){super(`The fee cap (\`maxFeePerGas\`${r?` = ${je(r)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:n,name:"FeeCapTooHighError"})}}Object.defineProperty(ts,"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 ca extends O{constructor({cause:n,maxFeePerGas:r}={}){super(`The fee cap (\`maxFeePerGas\`${r?` = ${je(r)}`:""} gwei) cannot be lower than the block base fee.`,{cause:n,name:"FeeCapTooLowError"})}}Object.defineProperty(ca,"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 fa extends O{constructor({cause:n,nonce:r}={}){super(`Nonce provided for the transaction ${r?`(${r}) `:""}is higher than the next one expected.`,{cause:n,name:"NonceTooHighError"})}}Object.defineProperty(fa,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class la extends O{constructor({cause:n,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(`
`),{cause:n,name:"NonceTooLowError"})}}Object.defineProperty(la,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class da extends O{constructor({cause:n,nonce:r}={}){super(`Nonce provided for the transaction ${r?`(${r}) `:""}exceeds the maximum allowed nonce.`,{cause:n,name:"NonceMaxValueError"})}}Object.defineProperty(da,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class ha extends O{constructor({cause:n}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
`),{cause:n,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(ha,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class pa extends O{constructor({cause:n,gas:r}={}){super(`The amount of gas ${r?`(${r}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:n,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(pa,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class ga extends O{constructor({cause:n,gas:r}={}){super(`The amount of gas ${r?`(${r}) `:""}provided for the transaction is too low.`,{cause:n,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(ga,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class ma extends O{constructor({cause:n}){super("The transaction type is not supported for this chain.",{cause:n,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(ma,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class ns extends O{constructor({cause:n,maxPriorityFeePerGas:r,maxFeePerGas:s}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${r?` = ${je(r)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${s?` = ${je(s)} gwei`:""}).`].join(`
`),{cause:n,name:"TipAboveFeeCapError"})}}Object.defineProperty(ns,"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 gs extends O{constructor({cause:n}){super(`An error occurred while executing: ${n==null?void 0:n.shortMessage}`,{cause:n,name:"UnknownNodeError"})}}function $a(e,n="wei"){return Xl(e,R1[n])}function Kr(e){const n=Object.entries(e).map(([s,o])=>o===void 0||o===!1?null:[s,o]).filter(Boolean),r=n.reduce((s,[o])=>Math.max(s,o.length),0);return n.map(([s,o])=>` ${`${s}:`.padEnd(r+1)} ${o}`).join(`
`)}class C1 extends O{constructor(){super(["Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.","Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others."].join(`
`),{name:"FeeConflictError"})}}class _1 extends O{constructor({transaction:n}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",Kr(n),"}","","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 N1 extends O{constructor(n,{account:r,docsPath:s,chain:o,data:u,gas:c,gasPrice:l,maxFeePerGas:h,maxPriorityFeePerGas:m,nonce:A,to:w,value:x}){var I;const T=Kr({chain:o&&`${o==null?void 0:o.name} (id: ${o==null?void 0:o.id})`,from:r==null?void 0:r.address,to:w,value:typeof x<"u"&&`${$a(x)} ${((I=o==null?void 0:o.nativeCurrency)==null?void 0:I.symbol)||"ETH"}`,data:u,gas:c,gasPrice:typeof l<"u"&&`${je(l)} gwei`,maxFeePerGas:typeof h<"u"&&`${je(h)} gwei`,maxPriorityFeePerGas:typeof m<"u"&&`${je(m)} gwei`,nonce:A});super(n.shortMessage,{cause:n,docsPath:s,metaMessages:[...n.metaMessages?[...n.metaMessages," "]:[],"Request Arguments:",T].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=n}}class ed extends O{constructor({blockHash:n,blockNumber:r,blockTag:s,hash:o,index:u}){let c="Transaction";s&&u!==void 0&&(c=`Transaction at block time "${s}" at index "${u}"`),n&&u!==void 0&&(c=`Transaction at block hash "${n}" at index "${u}"`),r&&u!==void 0&&(c=`Transaction at block number "${r}" at index "${u}"`),o&&(c=`Transaction with hash "${o}"`),super(`${c} could not be found.`,{name:"TransactionNotFoundError"})}}class td extends O{constructor({hash:n}){super(`Transaction receipt with hash "${n}" could not be found. The Transaction may not be processed on a block yet.`,{name:"TransactionReceiptNotFoundError"})}}class O1 extends O{constructor({hash:n}){super(`Timed out while waiting for transaction with hash "${n}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}const Rt=(e,n,r)=>JSON.stringify(e,(s,o)=>typeof o=="bigint"?o.toString():o,r),M1=e=>e,Va=e=>e;class U1 extends O{constructor({body:n,cause:r,details:s,headers:o,status:u,url:c}){super("HTTP request failed.",{cause:r,details:s,metaMessages:[u&&`Status: ${u}`,`URL: ${Va(c)}`,n&&`Request body: ${Rt(n)}`].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=n,this.headers=o,this.status=u,this.url=c}}class nd extends O{constructor({body:n,error:r,url:s}){super("RPC Request failed.",{cause:r,details:r.message,metaMessages:[`URL: ${Va(s)}`,`Request body: ${Rt(n)}`],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}}const F1=-1;class k1 extends O{constructor(n,{code:r,docsPath:s,metaMessages:o,name:u,shortMessage:c}){super(c,{cause:n,docsPath:s,metaMessages:o||(n==null?void 0:n.metaMessages),name:u||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=u||n.name,this.code=n instanceof nd?n.code:r??F1}}class ms extends k1{constructor(n){super(n,{code:ms.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(ms,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});function qa(e,n){const r=(e.details||"").toLowerCase(),s=e instanceof O?e.walk(o=>(o==null?void 0:o.code)===Jn.code):e;return s instanceof O?new Jn({cause:e,message:s.details}):Jn.nodeMessage.test(r)?new Jn({cause:e,message:e.details}):ts.nodeMessage.test(r)?new ts({cause:e,maxFeePerGas:n==null?void 0:n.maxFeePerGas}):ca.nodeMessage.test(r)?new ca({cause:e,maxFeePerGas:n==null?void 0:n.maxFeePerGas}):fa.nodeMessage.test(r)?new fa({cause:e,nonce:n==null?void 0:n.nonce}):la.nodeMessage.test(r)?new la({cause:e,nonce:n==null?void 0:n.nonce}):da.nodeMessage.test(r)?new da({cause:e,nonce:n==null?void 0:n.nonce}):ha.nodeMessage.test(r)?new ha({cause:e}):pa.nodeMessage.test(r)?new pa({cause:e,gas:n==null?void 0:n.gas}):ga.nodeMessage.test(r)?new ga({cause:e,gas:n==null?void 0:n.gas}):ma.nodeMessage.test(r)?new ma({cause:e}):ns.nodeMessage.test(r)?new ns({cause:e,maxFeePerGas:n==null?void 0:n.maxFeePerGas,maxPriorityFeePerGas:n==null?void 0:n.maxPriorityFeePerGas}):new gs({cause:e})}function rd(e,{docsPath:n,...r}){const s=(()=>{const o=qa(e,r);return o instanceof gs?e:o})();return new N1(s,{docsPath:n,...r})}function Ja(e,{format:n}){if(!n)return{};const r={};function s(u){const c=Object.keys(u);for(const l of c)l in e&&(r[l]=e[l]),u[l]&&typeof u[l]=="object"&&!Array.isArray(u[l])&&s(u[l])}const o=n(e||{});return s(o),r}const L1={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function Ka(e){const n={};return typeof e.authorizationList<"u"&&(n.authorizationList=G1(e.authorizationList)),typeof e.accessList<"u"&&(n.accessList=e.accessList),typeof e.blobVersionedHashes<"u"&&(n.blobVersionedHashes=e.blobVersionedHashes),typeof e.blobs<"u"&&(typeof e.blobs[0]!="string"?n.blobs=e.blobs.map(r=>Ue(r)):n.blobs=e.blobs),typeof e.data<"u"&&(n.data=e.data),typeof e.from<"u"&&(n.from=e.from),typeof e.gas<"u"&&(n.gas=X(e.gas)),typeof e.gasPrice<"u"&&(n.gasPrice=X(e.gasPrice)),typeof e.maxFeePerBlobGas<"u"&&(n.maxFeePerBlobGas=X(e.maxFeePerBlobGas)),typeof e.maxFeePerGas<"u"&&(n.maxFeePerGas=X(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(n.maxPriorityFeePerGas=X(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(n.nonce=X(e.nonce)),typeof e.to<"u"&&(n.to=e.to),typeof e.type<"u"&&(n.type=L1[e.type]),typeof e.value<"u"&&(n.value=X(e.value)),n}function G1(e){return e.map(n=>({address:n.address,r:n.r?X(BigInt(n.r)):n.r,s:n.s?X(BigInt(n.s)):n.s,chainId:X(n.chainId),nonce:X(n.nonce),...typeof n.yParity<"u"?{yParity:X(n.yParity)}:{},...typeof n.v<"u"&&typeof n.yParity>"u"?{v:X(n.v)}:{}}))}function ae(e,n,r){const s=e[n.name];if(typeof s=="function")return s;const o=e[r];return typeof o=="function"?o:u=>n(e,u)}const H1=2n**256n-1n;function As(e){const{account:n,gasPrice:r,maxFeePerGas:s,maxPriorityFeePerGas:o,to:u}=e,c=n?Yt(n):void 0;if(c&&!Jt(c.address))throw new Xn({address:c.address});if(u&&!Jt(u))throw new Xn({address:u});if(typeof r<"u"&&(typeof s<"u"||typeof o<"u"))throw new C1;if(s&&s>H1)throw new ts({maxFeePerGas:s});if(o&&s&&o>s)throw new ns({maxFeePerGas:s,maxPriorityFeePerGas:o})}async function rs(e){const n=await e.request({method:"eth_chainId"},{dedupe:!0});return hn(n)}class Q1 extends O{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class Ya extends O{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class z1 extends O{constructor({maxPriorityFeePerGas:n}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${je(n)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class id extends O{constructor({blockHash:n,blockNumber:r}){let s="Block";n&&(s=`Block at hash "${n}"`),r&&(s=`Block at number "${r}"`),super(`${s} could not be found.`,{name:"BlockNotFoundError"})}}const sd={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function od(e){const n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?hn(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?hn(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?sd[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=W1(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v=="bigint"){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return n.v%2n===0n?1:0}})(),n.type==="legacy"&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type==="eip2930"&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type==="eip1559"&&delete n.maxFeePerBlobGas,n}function W1(e){return e.map(n=>({address:n.address,chainId:Number(n.chainId),nonce:Number(n.nonce),r:n.r,s:n.s,yParity:Number(n.yParity)}))}function $1(e){const n=(e.transactions??[]).map(r=>typeof r=="string"?r:od(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:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}async function tr(e,{blockHash:n,blockNumber:r,blockTag:s,includeTransactions:o}={}){var A,w,x;const u=s??"latest",c=o??!1,l=r!==void 0?X(r):void 0;let h=null;if(n?h=await e.request({method:"eth_getBlockByHash",params:[n,c]},{dedupe:!0}):h=await e.request({method:"eth_getBlockByNumber",params:[l||u,c]},{dedupe:!!l}),!h)throw new id({blockHash:n,blockNumber:r});return(((x=(w=(A=e.chain)==null?void 0:A.formatters)==null?void 0:w.block)==null?void 0:x.format)||$1)(h)}async function ad(e){const n=await e.request({method:"eth_gasPrice"});return BigInt(n)}async function V1(e,n){var u,c;const{block:r,chain:s=e.chain,request:o}=n||{};try{const l=((u=s==null?void 0:s.fees)==null?void 0:u.maxPriorityFeePerGas)??((c=s==null?void 0:s.fees)==null?void 0:c.defaultPriorityFee);if(typeof l=="function"){const m=r||await ae(e,tr,"getBlock")({}),A=await l({block:m,client:e,request:o});if(A===null)throw new Error;return A}if(typeof l<"u")return l;const h=await e.request({method:"eth_maxPriorityFeePerGas"});return dn(h)}catch{const[l,h]=await Promise.all([r?Promise.resolve(r):ae(e,tr,"getBlock")({}),ae(e,ad,"getGasPrice")({})]);if(typeof l.baseFeePerGas!="bigint")throw new Ya;const m=h-l.baseFeePerGas;return m<0n?0n:m}}async function el(e,n){var x,T;const{block:r,chain:s=e.chain,request:o,type:u="eip1559"}=n||{},c=await(async()=>{var I,C;return typeof((I=s==null?void 0:s.fees)==null?void 0:I.baseFeeMultiplier)=="function"?s.fees.baseFeeMultiplier({block:r,client:e,request:o}):((C=s==null?void 0:s.fees)==null?void 0:C.baseFeeMultiplier)??1.2})();if(c<1)throw new Q1;const h=10**(((x=c.toString().split(".")[1])==null?void 0:x.length)??0),m=I=>I*BigInt(Math.ceil(c*h))/BigInt(h),A=r||await ae(e,tr,"getBlock")({});if(typeof((T=s==null?void 0:s.fees)==null?void 0:T.estimateFeesPerGas)=="function"){const I=await s.fees.estimateFeesPerGas({block:r,client:e,multiply:m,request:o,type:u});if(I!==null)return I}if(u==="eip1559"){if(typeof A.baseFeePerGas!="bigint")throw new Ya;const I=typeof(o==null?void 0:o.maxPriorityFeePerGas)=="bigint"?o.maxPriorityFeePerGas:await V1(e,{block:A,chain:s,request:o}),C=m(A.baseFeePerGas);return{maxFeePerGas:(o==null?void 0:o.maxFeePerGas)??C+I,maxPriorityFeePerGas:I}}return{gasPrice:(o==null?void 0:o.gasPrice)??m(await ae(e,ad,"getGasPrice")({}))}}class q1 extends O{constructor(n,{account:r,docsPath:s,chain:o,data:u,gas:c,gasPrice:l,maxFeePerGas:h,maxPriorityFeePerGas:m,nonce:A,to:w,value:x}){var I;const T=Kr({from:r==null?void 0:r.address,to:w,value:typeof x<"u"&&`${$a(x)} ${((I=o==null?void 0:o.nativeCurrency)==null?void 0:I.symbol)||"ETH"}`,data:u,gas:c,gasPrice:typeof l<"u"&&`${je(l)} gwei`,maxFeePerGas:typeof h<"u"&&`${je(h)} gwei`,maxPriorityFeePerGas:typeof m<"u"&&`${je(m)} gwei`,nonce:A});super(n.shortMessage,{cause:n,docsPath:s,metaMessages:[...n.metaMessages?[...n.metaMessages," "]:[],"Estimate Gas Arguments:",T].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=n}}function J1(e,{docsPath:n,...r}){const s=(()=>{const o=qa(e,r);return o instanceof gs?e:o})();return new q1(s,{docsPath:n,...r})}class K1 extends O{constructor({address:n}){super(`State for account "${n}" is set multiple times.`,{name:"AccountStateConflictError"})}}class Y1 extends O{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function tl(e){return e.reduce((n,{slot:r,value:s})=>`${n} ${r}: ${s}
`,"")}function j1(e){return e.reduce((n,{address:r,...s})=>{let o=`${n} ${r}:
`;return s.nonce&&(o+=` nonce: ${s.nonce}
`),s.balance&&(o+=` balance: ${s.balance}
`),s.code&&(o+=` code: ${s.code}
`),s.state&&(o+=` state:
`,o+=tl(s.state)),s.stateDiff&&(o+=` stateDiff:
`,o+=tl(s.stateDiff)),o},` State Override:
`).slice(0,-1)}function nl(e){if(!(!e||e.length===0))return e.reduce((n,{slot:r,value:s})=>{if(r.length!==66)throw new zf({size:r.length,targetSize:66,type:"hex"});if(s.length!==66)throw new zf({size:s.length,targetSize:66,type:"hex"});return n[r]=s,n},{})}function Z1(e){const{balance:n,nonce:r,state:s,stateDiff:o,code:u}=e,c={};if(u!==void 0&&(c.code=u),n!==void 0&&(c.balance=X(n)),r!==void 0&&(c.nonce=X(r)),s!==void 0&&(c.state=nl(s)),o!==void 0){if(c.state)throw new Y1;c.stateDiff=nl(o)}return c}function ud(e){if(!e)return;const n={};for(const{address:r,...s}of e){if(!Jt(r,{strict:!1}))throw new Xn({address:r});if(n[r])throw new K1({address:r});n[r]=Z1(s)}return n}async function cd(e,{address:n,blockNumber:r,blockTag:s="latest"}){const o=typeof r=="bigint"?X(r):void 0,u=await e.request({method:"eth_getBalance",params:[n,o||s]});return BigInt(u)}async function fd(e,n){var o,u,c;const{account:r=e.account}=n,s=r?Yt(r):void 0;try{let Te=function(Ve){const{block:xe,request:ve,rpcStateOverride:Fe}=Ve;return e.request({method:"eth_estimateGas",params:Fe?[ve,xe??"latest",Fe]:xe?[ve,xe]:[ve]})};const{accessList:l,authorizationList:h,blobs:m,blobVersionedHashes:A,blockNumber:w,blockTag:x,data:T,gas:I,gasPrice:C,maxFeePerBlobGas:N,maxFeePerGas:S,maxPriorityFeePerGas:M,nonce:G,value:ee,stateOverride:H,...Q}=await Ad(e,{...n,parameters:(s==null?void 0:s.type)==="local"?void 0:["blobVersionedHashes"]}),se=(typeof w=="bigint"?X(w):void 0)||x,K=ud(H),ge=await(async()=>{if(Q.to)return Q.to;if(h&&h.length>0)return await jl({authorization:h[0]}).catch(()=>{throw new O("`to` is required. Could not infer from `authorizationList`")})})();As(n);const Y=(c=(u=(o=e.chain)==null?void 0:o.formatters)==null?void 0:u.transactionRequest)==null?void 0:c.format,Ae=(Y||Ka)({...Ja(Q,{format:Y}),from:s==null?void 0:s.address,accessList:l,authorizationList:h,blobs:m,blobVersionedHashes:A,data:T,gas:I,gasPrice:C,maxFeePerBlobGas:N,maxFeePerGas:S,maxPriorityFeePerGas:M,nonce:G,to:ge,value:ee});let $e=BigInt(await Te({block:se,request:Ae,rpcStateOverride:K}));if(h){const Ve=await cd(e,{address:Ae.from}),xe=await Promise.all(h.map(async ve=>{const{address:Fe}=ve,_t=await Te({block:se,request:{authorizationList:void 0,data:T,from:s==null?void 0:s.address,to:Fe,value:X(Ve)},rpcStateOverride:K}).catch(()=>100000n);return 2n*BigInt(_t)}));$e+=xe.reduce((ve,Fe)=>ve+Fe,0n)}return $e}catch(l){throw J1(l,{...n,account:s,chain:e.chain})}}async function X1(e,{address:n,blockTag:r="latest",blockNumber:s}){const o=await e.request({method:"eth_getTransactionCount",params:[n,typeof s=="bigint"?X(s):r]},{dedupe:!!s});return hn(o)}function ld(e){const{kzg:n}=e,r=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),s=typeof e.blobs[0]=="string"?e.blobs.map(u=>qt(u)):e.blobs,o=[];for(const u of s)o.push(Uint8Array.from(n.blobToKzgCommitment(u)));return r==="bytes"?o:o.map(u=>Ue(u))}function dd(e){const{kzg:n}=e,r=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),s=typeof e.blobs[0]=="string"?e.blobs.map(c=>qt(c)):e.blobs,o=typeof e.commitments[0]=="string"?e.commitments.map(c=>qt(c)):e.commitments,u=[];for(let c=0;c<s.length;c++){const l=s[c],h=o[c];u.push(Uint8Array.from(n.computeBlobKzgProof(l,h)))}return r==="bytes"?u:u.map(c=>Ue(c))}function ex(e,n,r,s){if(typeof e.setBigUint64=="function")return e.setBigUint64(n,r,s);const o=BigInt(32),u=BigInt(4294967295),c=Number(r>>o&u),l=Number(r&u),h=s?4:0,m=s?0:4;e.setUint32(n+h,c,s),e.setUint32(n+m,l,s)}function tx(e,n,r){return e&n^~e&r}function nx(e,n,r){return e&n^e&r^n&r}class rx extends ka{constructor(n,r,s,o){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=n,this.outputLen=r,this.padOffset=s,this.isLE=o,this.buffer=new Uint8Array(n),this.view=$o(this.buffer)}update(n){Fr(this);const{view:r,buffer:s,blockLen:o}=this;n=hs(n);const u=n.length;for(let c=0;c<u;){const l=Math.min(o-this.pos,u-c);if(l===o){const h=$o(n);for(;o<=u-c;c+=o)this.process(h,c);continue}s.set(n.subarray(c,c+l),this.pos),this.pos+=l,c+=l,this.pos===o&&(this.process(r,0),this.pos=0)}return this.length+=n.length,this.roundClean(),this}digestInto(n){Fr(this),Ll(n,this),this.finished=!0;const{buffer:r,view:s,blockLen:o,isLE:u}=this;let{pos:c}=this;r[c++]=128,this.buffer.subarray(c).fill(0),this.padOffset>o-c&&(this.process(s,0),c=0);for(let w=c;w<o;w++)r[w]=0;ex(s,o-8,BigInt(this.length*8),u),this.process(s,0);const l=$o(n),h=this.outputLen;if(h%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const m=h/4,A=this.get();if(m>A.length)throw new Error("_sha2: outputLen bigger than state");for(let w=0;w<m;w++)l.setUint32(4*w,A[w],u)}digest(){const{buffer:n,outputLen:r}=this;this.digestInto(n);const s=n.slice(0,r);return this.destroy(),s}_cloneInto(n){n||(n=new this.constructor),n.set(...this.get());const{blockLen:r,buffer:s,length:o,finished:u,destroyed:c,pos:l}=this;return n.length=o,n.pos=l,n.finished=u,n.destroyed=c,o%r&&n.buffer.set(s),n}}const ix=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]),un=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),cn=new Uint32Array(64);class sx extends rx{constructor(n=32){super(64,n,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,this.F=un[5]|0,this.G=un[6]|0,this.H=un[7]|0}get(){const{A:n,B:r,C:s,D:o,E:u,F:c,G:l,H:h}=this;return[n,r,s,o,u,c,l,h]}set(n,r,s,o,u,c,l,h){this.A=n|0,this.B=r|0,this.C=s|0,this.D=o|0,this.E=u|0,this.F=c|0,this.G=l|0,this.H=h|0}process(n,r){for(let w=0;w<16;w++,r+=4)cn[w]=n.getUint32(r,!1);for(let w=16;w<64;w++){const x=cn[w-15],T=cn[w-2],I=Tt(x,7)^Tt(x,18)^x>>>3,C=Tt(T,17)^Tt(T,19)^T>>>10;cn[w]=C+cn[w-7]+I+cn[w-16]|0}let{A:s,B:o,C:u,D:c,E:l,F:h,G:m,H:A}=this;for(let w=0;w<64;w++){const x=Tt(l,6)^Tt(l,11)^Tt(l,25),T=A+x+tx(l,h,m)+ix[w]+cn[w]|0,C=(Tt(s,2)^Tt(s,13)^Tt(s,22))+nx(s,o,u)|0;A=m,m=h,h=l,l=c+T|0,c=u,u=o,o=s,s=T+C|0}s=s+this.A|0,o=o+this.B|0,u=u+this.C|0,c=c+this.D|0,l=l+this.E|0,h=h+this.F|0,m=m+this.G|0,A=A+this.H|0,this.set(s,o,u,c,l,h,m,A)}roundClean(){cn.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const hd=Gl(()=>new sx);function ox(e,n){return hd(St(e,{strict:!1})?ls(e):e)}function ax(e){const{commitment:n,version:r=1}=e,s=e.to??(typeof n=="string"?"hex":"bytes"),o=ox(n);return o.set([r],0),s==="bytes"?o:Ue(o)}function ux(e){const{commitments:n,version:r}=e,s=e.to,o=[];for(const u of n)o.push(ax({commitment:u,to:s,version:r}));return o}const rl=6,pd=32,ja=4096,gd=pd*ja,il=gd*rl-1-1*ja*rl;class cx extends O{constructor({maxSize:n,size:r}){super("Blob size is too large.",{metaMessages:[`Max: ${n} bytes`,`Given: ${r} bytes`],name:"BlobSizeTooLargeError"})}}class fx extends O{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}function lx(e){const n=typeof e.data=="string"?qt(e.data):e.data,r=Se(n);if(!r)throw new fx;if(r>il)throw new cx({maxSize:il,size:r});const s=[];let o=!0,u=0;for(;o;){const c=Wa(new Uint8Array(gd));let l=0;for(;l<ja;){const h=n.slice(u,u+(pd-1));if(c.pushByte(0),c.pushBytes(h),h.length<31){c.pushByte(128),o=!1;break}l++,u+=31}s.push(c)}return s.map(c=>Ue(c.bytes))}function dx(e){const{data:n,kzg:r,to:s}=e,o=e.blobs??lx({data:n}),u=e.commitments??ld({blobs:o,kzg:r,to:s}),c=e.proofs??dd({blobs:o,commitments:u,kzg:r,to:s}),l=[];for(let h=0;h<o.length;h++)l.push({blob:o[h],commitment:u[h],proof:c[h]});return l}function hx(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 _1({transaction:e})}const md=["blobVersionedHashes","chainId","fees","gas","nonce","type"],sl=new Map;async function Ad(e,n){const{account:r=e.account,blobs:s,chain:o,gas:u,kzg:c,nonce:l,nonceManager:h,parameters:m=md,type:A}=n,w=r&&Yt(r),x={...n,...w?{from:w==null?void 0:w.address}:{}};let T;async function I(){return T||(T=await ae(e,tr,"getBlock")({blockTag:"latest"}),T)}let C;async function N(){return C||(o?o.id:typeof n.chainId<"u"?n.chainId:(C=await ae(e,rs,"getChainId")({}),C))}if(m.includes("nonce")&&typeof l>"u"&&w)if(h){const S=await N();x.nonce=await h.consume({address:w.address,chainId:S,client:e})}else x.nonce=await ae(e,X1,"getTransactionCount")({address:w.address,blockTag:"pending"});if((m.includes("blobVersionedHashes")||m.includes("sidecars"))&&s&&c){const S=ld({blobs:s,kzg:c});if(m.includes("blobVersionedHashes")){const M=ux({commitments:S,to:"hex"});x.blobVersionedHashes=M}if(m.includes("sidecars")){const M=dd({blobs:s,commitments:S,kzg:c}),G=dx({blobs:s,commitments:S,proofs:M,to:"hex"});x.sidecars=G}}if(m.includes("chainId")&&(x.chainId=await N()),(m.includes("fees")||m.includes("type"))&&typeof A>"u")try{x.type=hx(x)}catch{let S=sl.get(e.uid);if(typeof S>"u"){const M=await I();S=typeof(M==null?void 0:M.baseFeePerGas)=="bigint",sl.set(e.uid,S)}x.type=S?"eip1559":"legacy"}if(m.includes("fees"))if(x.type!=="legacy"&&x.type!=="eip2930"){if(typeof x.maxFeePerGas>"u"||typeof x.maxPriorityFeePerGas>"u"){const S=await I(),{maxFeePerGas:M,maxPriorityFeePerGas:G}=await el(e,{block:S,chain:o,request:x});if(typeof n.maxPriorityFeePerGas>"u"&&n.maxFeePerGas&&n.maxFeePerGas<G)throw new z1({maxPriorityFeePerGas:G});x.maxPriorityFeePerGas=G,x.maxFeePerGas=M}}else{if(typeof n.maxFeePerGas<"u"||typeof n.maxPriorityFeePerGas<"u")throw new Ya;if(typeof n.gasPrice>"u"){const S=await I(),{gasPrice:M}=await el(e,{block:S,chain:o,request:x,type:"legacy"});x.gasPrice=M}}return m.includes("gas")&&typeof u>"u"&&(x.gas=await ae(e,fd,"estimateGas")({...x,account:w&&{address:w.address,type:"json-rpc"}})),As(x),delete x.parameters,x}async function px(e,{serializedTransaction:n}){return e.request({method:"eth_sendRawTransaction",params:[n]},{retryCount:0})}const Yo=new Fa(128);async function yd(e,n){var M,G,ee,H;const{account:r=e.account,chain:s=e.chain,accessList:o,authorizationList:u,blobs:c,data:l,gas:h,gasPrice:m,maxFeePerBlobGas:A,maxFeePerGas:w,maxPriorityFeePerGas:x,nonce:T,type:I,value:C,...N}=n;if(typeof r>"u")throw new za({docsPath:"/docs/actions/wallet/sendTransaction"});const S=r?Yt(r):null;try{As(n);const Q=await(async()=>{if(n.to)return n.to;if(n.to!==null&&u&&u.length>0)return await jl({authorization:u[0]}).catch(()=>{throw new O("`to` is required. Could not infer from `authorizationList`.")})})();if((S==null?void 0:S.type)==="json-rpc"||S===null){let F;s!==null&&(F=await ae(e,rs,"getChainId")({}),S1({currentChainId:F,chain:s}));const se=(ee=(G=(M=e.chain)==null?void 0:M.formatters)==null?void 0:G.transactionRequest)==null?void 0:ee.format,ge=(se||Ka)({...Ja(N,{format:se}),accessList:o,authorizationList:u,blobs:c,chainId:F,data:l,from:S==null?void 0:S.address,gas:h,gasPrice:m,maxFeePerBlobGas:A,maxFeePerGas:w,maxPriorityFeePerGas:x,nonce:T,to:Q,type:I,value:C}),Y=Yo.get(e.uid),fe=Y?"wallet_sendTransaction":"eth_sendTransaction";try{return await e.request({method:fe,params:[ge]},{retryCount:0})}catch(Ae){if(Y===!1)throw Ae;const Te=Ae;if(Te.name==="InvalidInputRpcError"||Te.name==="InvalidParamsRpcError"||Te.name==="MethodNotFoundRpcError"||Te.name==="MethodNotSupportedRpcError")return await e.request({method:"wallet_sendTransaction",params:[ge]},{retryCount:0}).then($e=>(Yo.set(e.uid,!0),$e)).catch($e=>{const Ve=$e;throw Ve.name==="MethodNotFoundRpcError"||Ve.name==="MethodNotSupportedRpcError"?(Yo.set(e.uid,!1),Te):Ve});throw Te}}if((S==null?void 0:S.type)==="local"){const F=await ae(e,Ad,"prepareTransactionRequest")({account:S,accessList:o,authorizationList:u,blobs:c,chain:s,data:l,gas:h,gasPrice:m,maxFeePerBlobGas:A,maxFeePerGas:w,maxPriorityFeePerGas:x,nonce:T,nonceManager:S.nonceManager,parameters:[...md,"sidecars"],type:I,value:C,...N,to:Q}),se=(H=s==null?void 0:s.serializers)==null?void 0:H.transaction,K=await S.signTransaction(F,{serializer:se});return await ae(e,px,"sendRawTransaction")({serializedTransaction:K})}throw(S==null?void 0:S.type)==="smart"?new Ko({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new Ko({docsPath:"/docs/actions/wallet/sendTransaction",type:S==null?void 0:S.type})}catch(Q){throw Q instanceof Ko?Q:rd(Q,{...n,account:S,chain:n.chain||void 0})}}const Aa=[{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"}],ya=[{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"}]}],gx=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],mx=[...gx,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],ol=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}];function Ax(e,n={}){typeof n.size<"u"&&Ct(e,{size:n.size});const r=Ue(e,n);return dn(r,n)}function yx(e,n={}){let r=e;if(typeof n.size<"u"&&(Ct(r,{size:n.size}),r=fs(r)),r.length>1||r[0]>1)throw new pb(r);return!!r[0]}function Vt(e,n={}){typeof n.size<"u"&&Ct(e,{size:n.size});const r=Ue(e,n);return hn(r,n)}function wx(e,n={}){let r=e;return typeof n.size<"u"&&(Ct(r,{size:n.size}),r=fs(r,{dir:"right"})),new TextDecoder().decode(r)}function Za(e,n){const r=typeof n=="string"?qt(n):n,s=Wa(r);if(Se(r)===0&&e.length>0)throw new ds;if(Se(n)&&Se(n)<32)throw new Pb({data:typeof n=="string"?n:Ue(n),params:e,size:Se(n)});let o=0;const u=[];for(let c=0;c<e.length;++c){const l=e[c];s.setPosition(o);const[h,m]=Yn(s,l,{staticPosition:0});o+=m,u.push(h)}return u}function Yn(e,n,{staticPosition:r}){const s=Qa(n.type);if(s){const[o,u]=s;return xx(e,{...n,type:u},{length:o,staticPosition:r})}if(n.type==="tuple")return Tx(e,n,{staticPosition:r});if(n.type==="address")return bx(e);if(n.type==="bool")return Ex(e);if(n.type.startsWith("bytes"))return vx(e,n,{staticPosition:r});if(n.type.startsWith("uint")||n.type.startsWith("int"))return Px(e,n);if(n.type==="string")return Ix(e,{staticPosition:r});throw new Nb(n.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const al=32,wa=32;function bx(e){const n=e.readBytes(32);return[ps(Ue(Vl(n,-20))),32]}function xx(e,n,{length:r,staticPosition:s}){if(!r){const c=Vt(e.readBytes(wa)),l=s+c,h=l+al;e.setPosition(l);const m=Vt(e.readBytes(al)),A=kr(n);let w=0;const x=[];for(let T=0;T<m;++T){e.setPosition(h+(A?T*32:w));const[I,C]=Yn(e,n,{staticPosition:h});w+=C,x.push(I)}return e.setPosition(s+32),[x,32]}if(kr(n)){const c=Vt(e.readBytes(wa)),l=s+c,h=[];for(let m=0;m<r;++m){e.setPosition(l+m*32);const[A]=Yn(e,n,{staticPosition:l});h.push(A)}return e.setPosition(s+32),[h,32]}let o=0;const u=[];for(let c=0;c<r;++c){const[l,h]=Yn(e,n,{staticPosition:s+o});o+=h,u.push(l)}return[u,o]}function Ex(e){return[yx(e.readBytes(32),{size:32}),32]}function vx(e,n,{staticPosition:r}){const[s,o]=n.type.split("bytes");if(!o){const c=Vt(e.readBytes(32));e.setPosition(r+c);const l=Vt(e.readBytes(32));if(l===0)return e.setPosition(r+32),["0x",32];const h=e.readBytes(l);return e.setPosition(r+32),[Ue(h),32]}return[Ue(e.readBytes(Number.parseInt(o),32)),32]}function Px(e,n){const r=n.type.startsWith("int"),s=Number.parseInt(n.type.split("int")[1]||"256"),o=e.readBytes(32);return[s>48?Ax(o,{signed:r}):Vt(o,{signed:r}),32]}function Tx(e,n,{staticPosition:r}){const s=n.components.length===0||n.components.some(({name:c})=>!c),o=s?[]:{};let u=0;if(kr(n)){const c=Vt(e.readBytes(wa)),l=r+c;for(let h=0;h<n.components.length;++h){const m=n.components[h];e.setPosition(l+u);const[A,w]=Yn(e,m,{staticPosition:l});u+=w,o[s?h:m==null?void 0:m.name]=A}return e.setPosition(r+32),[o,32]}for(let c=0;c<n.components.length;++c){const l=n.components[c],[h,m]=Yn(e,l,{staticPosition:r});o[s?c:l==null?void 0:l.name]=h,u+=m}return[o,u]}function Ix(e,{staticPosition:n}){const r=Vt(e.readBytes(32)),s=n+r;e.setPosition(s);const o=Vt(e.readBytes(32));if(o===0)return e.setPosition(n+32),["",32];const u=e.readBytes(o,32),c=wx(fs(u));return e.setPosition(n+32),[c,32]}function kr(e){var s;const{type:n}=e;if(n==="string"||n==="bytes"||n.endsWith("[]"))return!0;if(n==="tuple")return(s=e.components)==null?void 0:s.some(kr);const r=Qa(e.type);return!!(r&&kr({...e,type:r[1]}))}const Bx=e=>Sn(ls(e));function Sx(e){return Bx(e)}const Rx="1.0.8";let dt=class ba extends Error{constructor(n,r={}){var c;const s=r.cause instanceof ba?r.cause.details:(c=r.cause)!=null&&c.message?r.cause.message:r.details,o=r.cause instanceof ba&&r.cause.docsPath||r.docsPath,u=[n||"An error occurred.","",...r.metaMessages?[...r.metaMessages,""]:[],...o?[`Docs: https://abitype.dev${o}`]:[],...s?[`Details: ${s}`]:[],`Version: abitype@${Rx}`].join(`
`);super(u),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=s,this.docsPath=o,this.metaMessages=r.metaMessages,this.shortMessage=n}};function jt(e,n){const r=e.exec(n);return r==null?void 0:r.groups}const wd=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,bd=/^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)?$/,xd=/^\(.+?\).*?$/,ul=/^tuple(?<array>(\[(\d*)\])*)$/;function xa(e){let n=e.type;if(ul.test(e.type)&&"components"in e){n="(";const r=e.components.length;for(let o=0;o<r;o++){const u=e.components[o];n+=xa(u),o<r-1&&(n+=", ")}const s=jt(ul,e.type);return n+=`)${(s==null?void 0:s.array)??""}`,xa({...e,type:n})}return"indexed"in e&&e.indexed&&(n=`${n} indexed`),e.name?`${n} ${e.name}`:n}function _r(e){let n="";const r=e.length;for(let s=0;s<r;s++){const o=e[s];n+=xa(o),s!==r-1&&(n+=", ")}return n}function Dx(e){var n;return e.type==="function"?`function ${e.name}(${_r(e.inputs)})${e.stateMutability&&e.stateMutability!=="nonpayable"?` ${e.stateMutability}`:""}${(n=e.outputs)!=null&&n.length?` returns (${_r(e.outputs)})`:""}`:e.type==="event"?`event ${e.name}(${_r(e.inputs)})`:e.type==="error"?`error ${e.name}(${_r(e.inputs)})`:e.type==="constructor"?`constructor(${_r(e.inputs)})${e.stateMutability==="payable"?" payable":""}`:e.type==="fallback"?`fallback() external${e.stateMutability==="payable"?" payable":""}`:"receive() external payable"}const Ed=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function Cx(e){return Ed.test(e)}function _x(e){return jt(Ed,e)}const vd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function Nx(e){return vd.test(e)}function Ox(e){return jt(vd,e)}const Pd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function Mx(e){return Pd.test(e)}function Ux(e){return jt(Pd,e)}const Td=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function Id(e){return Td.test(e)}function Fx(e){return jt(Td,e)}const Bd=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function kx(e){return Bd.test(e)}function Lx(e){return jt(Bd,e)}const Sd=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function Gx(e){return Sd.test(e)}function Hx(e){return jt(Sd,e)}const Qx=/^receive\(\) external payable$/;function zx(e){return Qx.test(e)}const Wx=new Set(["indexed"]),Ea=new Set(["calldata","memory","storage"]);class $x extends dt{constructor({type:n}){super("Unknown type.",{metaMessages:[`Type "${n}" 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 Vx extends dt{constructor({type:n}){super("Unknown type.",{metaMessages:[`Type "${n}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class qx extends dt{constructor({param:n}){super("Invalid ABI parameter.",{details:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class Jx extends dt{constructor({param:n,name:r}){super("Invalid ABI parameter.",{details:n,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 Kx extends dt{constructor({param:n,type:r,modifier:s}){super("Invalid ABI parameter.",{details:n,metaMessages:[`Modifier "${s}" not allowed${r?` in "${r}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class Yx extends dt{constructor({param:n,type:r,modifier:s}){super("Invalid ABI parameter.",{details:n,metaMessages:[`Modifier "${s}" not allowed${r?` in "${r}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${s}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class jx extends dt{constructor({abiParameter:n}){super("Invalid ABI parameter.",{details:JSON.stringify(n,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class sr extends dt{constructor({signature:n,type:r}){super(`Invalid ${r} signature.`,{details:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class Zx extends dt{constructor({signature:n}){super("Unknown signature.",{details:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class Xx extends dt{constructor({signature:n}){super("Invalid struct signature.",{details:n,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class eE extends dt{constructor({type:n}){super("Circular reference detected.",{metaMessages:[`Struct "${n}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class tE extends dt{constructor({current:n,depth:r}){super("Unbalanced parentheses.",{metaMessages:[`"${n.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 nE(e,n,r){let s="";if(r)for(const o of Object.entries(r)){if(!o)continue;let u="";for(const c of o[1])u+=`[${c.type}${c.name?`:${c.name}`:""}]`;s+=`(${o[0]}{${u}})`}return n?`${n}:${e}${s}`:e}const jo=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 rE(e,n={}){if(Mx(e))return iE(e,n);if(Nx(e))return sE(e,n);if(Cx(e))return oE(e,n);if(kx(e))return aE(e,n);if(Gx(e))return uE(e);if(zx(e))return{type:"receive",stateMutability:"payable"};throw new Zx({signature:e})}function iE(e,n={}){const r=Ux(e);if(!r)throw new sr({signature:e,type:"function"});const s=bt(r.parameters),o=[],u=s.length;for(let l=0;l<u;l++)o.push(Rn(s[l],{modifiers:Ea,structs:n,type:"function"}));const c=[];if(r.returns){const l=bt(r.returns),h=l.length;for(let m=0;m<h;m++)c.push(Rn(l[m],{modifiers:Ea,structs:n,type:"function"}))}return{name:r.name,type:"function",stateMutability:r.stateMutability??"nonpayable",inputs:o,outputs:c}}function sE(e,n={}){const r=Ox(e);if(!r)throw new sr({signature:e,type:"event"});const s=bt(r.parameters),o=[],u=s.length;for(let c=0;c<u;c++)o.push(Rn(s[c],{modifiers:Wx,structs:n,type:"event"}));return{name:r.name,type:"event",inputs:o}}function oE(e,n={}){const r=_x(e);if(!r)throw new sr({signature:e,type:"error"});const s=bt(r.parameters),o=[],u=s.length;for(let c=0;c<u;c++)o.push(Rn(s[c],{structs:n,type:"error"}));return{name:r.name,type:"error",inputs:o}}function aE(e,n={}){const r=Lx(e);if(!r)throw new sr({signature:e,type:"constructor"});const s=bt(r.parameters),o=[],u=s.length;for(let c=0;c<u;c++)o.push(Rn(s[c],{structs:n,type:"constructor"}));return{type:"constructor",stateMutability:r.stateMutability??"nonpayable",inputs:o}}function uE(e){const n=Hx(e);if(!n)throw new sr({signature:e,type:"fallback"});return{type:"fallback",stateMutability:n.stateMutability??"nonpayable"}}const cE=/^(?<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$_]*))?$/,fE=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,lE=/^u?int$/;function Rn(e,n){var w,x;const r=nE(e,n==null?void 0:n.type,n==null?void 0:n.structs);if(jo.has(r))return jo.get(r);const s=xd.test(e),o=jt(s?fE:cE,e);if(!o)throw new qx({param:e});if(o.name&&hE(o.name))throw new Jx({param:e,name:o.name});const u=o.name?{name:o.name}:{},c=o.modifier==="indexed"?{indexed:!0}:{},l=(n==null?void 0:n.structs)??{};let h,m={};if(s){h="tuple";const T=bt(o.type),I=[],C=T.length;for(let N=0;N<C;N++)I.push(Rn(T[N],{structs:l}));m={components:I}}else if(o.type in l)h="tuple",m={components:l[o.type]};else if(lE.test(o.type))h=`${o.type}256`;else if(h=o.type,(n==null?void 0:n.type)!=="struct"&&!Rd(h))throw new Vx({type:h});if(o.modifier){if(!((x=(w=n==null?void 0:n.modifiers)==null?void 0:w.has)!=null&&x.call(w,o.modifier)))throw new Kx({param:e,type:n==null?void 0:n.type,modifier:o.modifier});if(Ea.has(o.modifier)&&!pE(h,!!o.array))throw new Yx({param:e,type:n==null?void 0:n.type,modifier:o.modifier})}const A={type:`${h}${o.array??""}`,...u,...c,...m};return jo.set(r,A),A}function bt(e,n=[],r="",s=0){const o=e.trim().length;for(let u=0;u<o;u++){const c=e[u],l=e.slice(u+1);switch(c){case",":return s===0?bt(l,[...n,r.trim()]):bt(l,n,`${r}${c}`,s);case"(":return bt(l,n,`${r}${c}`,s+1);case")":return bt(l,n,`${r}${c}`,s-1);default:return bt(l,n,`${r}${c}`,s)}}if(r==="")return n;if(s!==0)throw new tE({current:r,depth:s});return n.push(r.trim()),n}function Rd(e){return e==="address"||e==="bool"||e==="function"||e==="string"||wd.test(e)||bd.test(e)}const dE=/^(?: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 hE(e){return e==="address"||e==="bool"||e==="function"||e==="string"||e==="tuple"||wd.test(e)||bd.test(e)||dE.test(e)}function pE(e,n){return n||e==="bytes"||e==="string"||e==="tuple"}function gE(e){const n={},r=e.length;for(let c=0;c<r;c++){const l=e[c];if(!Id(l))continue;const h=Fx(l);if(!h)throw new sr({signature:l,type:"struct"});const m=h.properties.split(";"),A=[],w=m.length;for(let x=0;x<w;x++){const I=m[x].trim();if(!I)continue;const C=Rn(I,{type:"struct"});A.push(C)}if(!A.length)throw new Xx({signature:l});n[h.name]=A}const s={},o=Object.entries(n),u=o.length;for(let c=0;c<u;c++){const[l,h]=o[c];s[l]=Dd(h,n)}return s}const mE=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function Dd(e,n,r=new Set){const s=[],o=e.length;for(let u=0;u<o;u++){const c=e[u];if(xd.test(c.type))s.push(c);else{const h=jt(mE,c.type);if(!(h!=null&&h.type))throw new jx({abiParameter:c});const{array:m,type:A}=h;if(A in n){if(r.has(A))throw new eE({type:A});s.push({...c,type:`tuple${m??""}`,components:Dd(n[A]??[],n,new Set([...r,A]))})}else if(Rd(A))s.push(c);else throw new $x({type:A})}}return s}function Cd(e){const n=gE(e),r=[],s=e.length;for(let o=0;o<s;o++){const u=e[o];Id(u)||r.push(rE(u,n))}return r}function AE(e){let n=!0,r="",s=0,o="",u=!1;for(let c=0;c<e.length;c++){const l=e[c];if(["(",")",","].includes(l)&&(n=!0),l==="("&&s++,l===")"&&s--,!!n){if(s===0){if(l===" "&&["event","function",""].includes(o))o="";else if(o+=l,l===")"){u=!0;break}continue}if(l===" "){e[c-1]!==","&&r!==","&&r!==",("&&(r="",n=!1);continue}o+=l,r+=l}}if(!u)throw new O("Unable to normalize signature.");return o}const yE=e=>{const n=typeof e=="string"?e:Dx(e);return AE(n)};function _d(e){return Sx(yE(e))}const wE=_d,Yr=e=>er(_d(e),0,4);function jr(e){const{abi:n,args:r=[],name:s}=e,o=St(s,{strict:!1}),u=n.filter(l=>o?l.type==="function"?Yr(l)===s:l.type==="event"?wE(l)===s:!1:"name"in l&&l.name===s);if(u.length===0)return;if(u.length===1)return u[0];let c;for(const l of u){if(!("inputs"in l))continue;if(!r||r.length===0){if(!l.inputs||l.inputs.length===0)return l;continue}if(!l.inputs||l.inputs.length===0||l.inputs.length!==r.length)continue;if(r.every((m,A)=>{const w="inputs"in l&&l.inputs[A];return w?va(m,w):!1})){if(c&&"inputs"in c&&c.inputs){const m=Nd(l.inputs,c.inputs,r);if(m)throw new Db({abiItem:l,type:m[0]},{abiItem:c,type:m[1]})}c=l}}return c||u[0]}function va(e,n){const r=typeof e,s=n.type;switch(s){case"address":return Jt(e,{strict:!1});case"bool":return r==="boolean";case"function":return r==="string";case"string":return r==="string";default:return s==="tuple"&&"components"in n?Object.values(n.components).every((o,u)=>va(Object.values(e)[u],o)):/^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(s)?r==="number"||r==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(s)?r==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(s)?Array.isArray(e)&&e.every(o=>va(o,{...n,type:s.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function Nd(e,n,r){for(const s in e){const o=e[s],u=n[s];if(o.type==="tuple"&&u.type==="tuple"&&"components"in o&&"components"in u)return Nd(o.components,u.components,r[s]);const c=[o.type,u.type];if(c.includes("address")&&c.includes("bytes20")?!0:c.includes("address")&&c.includes("string")?Jt(r[s],{strict:!1}):c.includes("address")&&c.includes("bytes")?Jt(r[s],{strict:!1}):!1)return c}}const Zo="/docs/contract/decodeFunctionResult";function ys(e){const{abi:n,args:r,functionName:s,data:o}=e;let u=n[0];if(s){const l=jr({abi:n,args:r,name:s});if(!l)throw new Zn(s,{docsPath:Zo});u=l}if(u.type!=="function")throw new Zn(void 0,{docsPath:Zo});if(!u.outputs)throw new Fl(u.name,{docsPath:Zo});const c=Za(u.outputs,o);if(c&&c.length>1)return c;if(c&&c.length===1)return c[0]}const cl="/docs/contract/encodeFunctionData";function bE(e){const{abi:n,args:r,functionName:s}=e;let o=n[0];if(s){const u=jr({abi:n,args:r,name:s});if(!u)throw new Zn(s,{docsPath:cl});o=u}if(o.type!=="function")throw new Zn(void 0,{docsPath:cl});return{abi:[o],functionName:Yr(pn(o))}}function Zr(e){const{args:n}=e,{abi:r,functionName:s}=(()=>{var l;return e.abi.length===1&&((l=e.functionName)!=null&&l.startsWith("0x"))?e:bE(e)})(),o=r[0],u=s,c="inputs"in o&&o.inputs?Jr(o.inputs,n??[]):void 0;return Vr([u,c??"0x"])}function Xa({blockNumber:e,chain:n,contract:r}){var o;const s=(o=n==null?void 0:n.contracts)==null?void 0:o[r];if(!s)throw new ua({chain:n,contract:{name:r}});if(e&&s.blockCreated&&s.blockCreated>e)throw new ua({blockNumber:e,chain:n,contract:{name:r,blockCreated:s.blockCreated}});return s.address}const xE={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."},Od={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},EE={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};function Md(e){const{abi:n,data:r}=e,s=er(r,0,4);if(s==="0x")throw new ds;const u=[...n||[],Od,EE].find(c=>c.type==="error"&&s===Yr(pn(c)));if(!u)throw new Ul(s,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:u,args:"inputs"in u&&u.inputs&&u.inputs.length>0?Za(u.inputs,er(r,4)):void 0,errorName:u.name}}function Ud({abiItem:e,args:n,includeFunctionName:r=!0,includeName:s=!1}){if("name"in e&&"inputs"in e&&e.inputs)return`${r?e.name:""}(${e.inputs.map((o,u)=>`${s&&o.name?`${o.name}: `:""}${typeof n[u]=="object"?Rt(n[u]):n[u]}`).join(", ")})`}class vE extends O{constructor(n,{account:r,docsPath:s,chain:o,data:u,gas:c,gasPrice:l,maxFeePerGas:h,maxPriorityFeePerGas:m,nonce:A,to:w,value:x,stateOverride:T}){var N;const I=r?Yt(r):void 0;let C=Kr({from:I==null?void 0:I.address,to:w,value:typeof x<"u"&&`${$a(x)} ${((N=o==null?void 0:o.nativeCurrency)==null?void 0:N.symbol)||"ETH"}`,data:u,gas:c,gasPrice:typeof l<"u"&&`${je(l)} gwei`,maxFeePerGas:typeof h<"u"&&`${je(h)} gwei`,maxPriorityFeePerGas:typeof m<"u"&&`${je(m)} gwei`,nonce:A});T&&(C+=`
${j1(T)}`),super(n.shortMessage,{cause:n,docsPath:s,metaMessages:[...n.metaMessages?[...n.metaMessages," "]:[],"Raw Call Arguments:",C].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=n}}class PE extends O{constructor(n,{abi:r,args:s,contractAddress:o,docsPath:u,functionName:c,sender:l}){const h=jr({abi:r,args:s,name:c}),m=h?Ud({abiItem:h,args:s,includeFunctionName:!1,includeName:!1}):void 0,A=h?pn(h,{includeName:!0}):void 0,w=Kr({address:o&&M1(o),function:A,args:m&&m!=="()"&&`${[...Array((c==null?void 0:c.length)??0).keys()].map(()=>" ").join("")}${m}`,sender:l});super(n.shortMessage||`An unknown error occurred while executing the contract function "${c}".`,{cause:n,docsPath:u,metaMessages:[...n.metaMessages?[...n.metaMessages," "]:[],w&&"Contract Call:",w].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=s,this.cause=n,this.contractAddress=o,this.functionName=c,this.sender=l}}class Pa extends O{constructor({abi:n,data:r,functionName:s,message:o}){let u,c,l,h;if(r&&r!=="0x")try{c=Md({abi:n,data:r});const{abiItem:A,errorName:w,args:x}=c;if(w==="Error")h=x[0];else if(w==="Panic"){const[T]=x;h=xE[T]}else{const T=A?pn(A,{includeName:!0}):void 0,I=A&&x?Ud({abiItem:A,args:x,includeFunctionName:!1,includeName:!1}):void 0;l=[T?`Error: ${T}`:"",I&&I!=="()"?` ${[...Array((w==null?void 0:w.length)??0).keys()].map(()=>" ").join("")}${I}`:""]}}catch(A){u=A}else o&&(h=o);let m;u instanceof Ul&&(m=u.signature,l=[`Unable to decode signature "${m}" 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=${m}.`]),super(h&&h!=="execution reverted"||m?[`The contract function "${s}" reverted with the following ${m?"signature":"reason"}:`,h||m].join(`
`):`The contract function "${s}" reverted.`,{cause:u,metaMessages:l,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=c,this.raw=r,this.reason=h,this.signature=m}}class TE extends O{constructor({functionName:n}){super(`The contract function "${n}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${n}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}}class IE extends O{constructor({factory:n}){super(`Deployment for counterfactual contract call failed${n?` for factory "${n}".`:""}`,{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 eu extends O{constructor({data:n,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=n}}function BE(e,n){var s,o,u,c,l,h;if(!(e instanceof O))return!1;const r=e.walk(m=>m instanceof Pa);return r instanceof Pa?!!(((s=r.data)==null?void 0:s.errorName)==="ResolverNotFound"||((o=r.data)==null?void 0:o.errorName)==="ResolverWildcardNotSupported"||((u=r.data)==null?void 0:u.errorName)==="ResolverNotContract"||((c=r.data)==null?void 0:c.errorName)==="ResolverError"||((l=r.data)==null?void 0:l.errorName)==="HttpError"||(h=r.reason)!=null&&h.includes("Wildcard on non-extended resolvers is not supported")):!1}function SE(e){const{abi:n,data:r}=e,s=er(r,0,4),o=n.find(u=>u.type==="function"&&s===Yr(pn(u)));if(!o)throw new Rb(s,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:o.name,args:"inputs"in o&&o.inputs&&o.inputs.length>0?Za(o.inputs,er(r,4)):void 0}}const Xo="/docs/contract/encodeErrorResult";function fl(e){const{abi:n,errorName:r,args:s}=e;let o=n[0];if(r){const h=jr({abi:n,args:s,name:r});if(!h)throw new Vf(r,{docsPath:Xo});o=h}if(o.type!=="error")throw new Vf(void 0,{docsPath:Xo});const u=pn(o),c=Yr(u);let l="0x";if(s&&s.length>0){if(!o.inputs)throw new Sb(o.name,{docsPath:Xo});l=Jr(o.inputs,s)}return Vr([c,l])}const ea="/docs/contract/encodeFunctionResult";function RE(e){const{abi:n,functionName:r,result:s}=e;let o=n[0];if(r){const c=jr({abi:n,name:r});if(!c)throw new Zn(r,{docsPath:ea});o=c}if(o.type!=="function")throw new Zn(void 0,{docsPath:ea});if(!o.outputs)throw new Fl(o.name,{docsPath:ea});const u=(()=>{if(o.outputs.length===0)return[];if(o.outputs.length===1)return[s];if(Array.isArray(s))return s;throw new kl(s)})();return Jr(o.outputs,u)}const Fd="x-batch-gateway:true";async function DE(e){const{data:n,ccipRequest:r}=e,{args:[s]}=SE({abi:ya,data:n}),o=[],u=[];return await Promise.all(s.map(async(c,l)=>{try{u[l]=await r(c),o[l]=!1}catch(h){o[l]=!0,u[l]=CE(h)}})),RE({abi:ya,functionName:"query",result:[o,u]})}function CE(e){return e.name==="HttpRequestError"&&e.status?fl({abi:ya,errorName:"HttpError",args:[e.status,e.shortMessage]}):fl({abi:[Od],errorName:"Error",args:["shortMessage"in e?e.shortMessage:e.message]})}function kd(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const n=`0x${e.slice(1,65)}`;return St(n)?n:null}function ta(e){let n=new Uint8Array(32).fill(0);if(!e)return Ue(n);const r=e.split(".");for(let s=r.length-1;s>=0;s-=1){const o=kd(r[s]),u=o?ls(o):Sn(Bn(r[s]),"bytes");n=Sn(gn([n,u]),"bytes")}return Ue(n)}function _E(e){return`[${e.slice(2)}]`}function NE(e){const n=new Uint8Array(32).fill(0);return e?kd(e)||Sn(Bn(e)):Ue(n)}function OE(e){const n=e.replace(/^\.|\.$/gm,"");if(n.length===0)return new Uint8Array(1);const r=new Uint8Array(Bn(n).byteLength+2);let s=0;const o=n.split(".");for(let u=0;u<o.length;u++){let c=Bn(o[u]);c.byteLength>255&&(c=Bn(_E(NE(o[u])))),r[s]=c.length,r.set(c,s+1),s+=c.length+1}return r.byteLength!==s+1?r.slice(0,s+1):r}const ME=3;function Ta(e,{abi:n,address:r,args:s,docsPath:o,functionName:u,sender:c}){const l=e instanceof eu?e:e instanceof O?e.walk(I=>"data"in I)||e.walk():{},{code:h,data:m,details:A,message:w,shortMessage:x}=l,T=e instanceof ds?new TE({functionName:u}):[ME,ms.code].includes(h)&&(m||A||w||x)?new Pa({abi:n,data:typeof m=="object"?m.data:m,functionName:u,message:l instanceof nd?A:x??w}):e;return new PE(T,{abi:n,args:s,contractAddress:r,docsPath:o,functionName:u,sender:c})}const UE="0.1.1";function FE(){return UE}let Ld=class Ia extends Error{constructor(n,r={}){const s=(()=>{var h;if(r.cause instanceof Ia){if(r.cause.details)return r.cause.details;if(r.cause.shortMessage)return r.cause.shortMessage}return(h=r.cause)!=null&&h.message?r.cause.message:r.details})(),o=r.cause instanceof Ia&&r.cause.docsPath||r.docsPath,c=`https://oxlib.sh${o??""}`,l=[n||"An error occurred.",...r.metaMessages?["",...r.metaMessages]:[],...s||o?["",s?`Details: ${s}`:void 0,o?`See: ${c}`:void 0]:[]].filter(h=>typeof h=="string").join(`
`);super(l,r.cause?{cause:r.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${FE()}`}),this.cause=r.cause,this.details=s,this.docs=c,this.docsPath=o,this.shortMessage=n}walk(n){return Gd(this,n)}};function Gd(e,n){return n!=null&&n(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?Gd(e.cause,n):n?null:e}function kE(e,n={}){const{dir:r,size:s=32}=n;if(s===0)return e;const o=e.replace("0x","");if(o.length>s*2)throw new HE({size:Math.ceil(o.length/2),targetSize:s,type:"Hex"});return`0x${o[r==="right"?"padEnd":"padStart"](s*2,"0")}`}function Wt(e,n={}){const{signed:r,size:s}=n,o=BigInt(e);let u;s?r?u=(1n<<BigInt(s)*8n-1n)-1n:u=2n**(BigInt(s)*8n)-1n:typeof e=="number"&&(u=BigInt(Number.MAX_SAFE_INTEGER));const c=typeof u=="bigint"&&r?-u-1n:0;if(u&&o>u||o<c){const m=typeof e=="bigint"?"n":"";throw new GE({max:u?`${u}${m}`:void 0,min:`${c}${m}`,signed:r,size:s,value:`${e}${m}`})}const h=`0x${(r&&o<0?(1n<<BigInt(s*8))+BigInt(o):o).toString(16)}`;return s?LE(h,s):h}function LE(e,n){return kE(e,{dir:"left",size:n})}class GE extends Ld{constructor({max:n,min:r,signed:s,size:o,value:u}){super(`Number \`${u}\` is not in safe${o?` ${o*8}-bit`:""}${s?" signed":" unsigned"} integer range ${n?`(\`${r}\` to \`${n}\`)`:`(above \`${r}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class HE extends Ld{constructor({size:n,targetSize:r,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} size (\`${n}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function QE(e){return{address:e.address,amount:Wt(e.amount),index:Wt(e.index),validatorIndex:Wt(e.validatorIndex)}}function zE(e){return{...typeof e.baseFeePerGas=="bigint"&&{baseFeePerGas:Wt(e.baseFeePerGas)},...typeof e.blobBaseFee=="bigint"&&{blobBaseFee:Wt(e.blobBaseFee)},...typeof e.feeRecipient=="string"&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit=="bigint"&&{gasLimit:Wt(e.gasLimit)},...typeof e.number=="bigint"&&{number:Wt(e.number)},...typeof e.prevRandao=="bigint"&&{prevRandao:Wt(e.prevRandao)},...typeof e.time=="bigint"&&{time:Wt(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(QE)}}}const WE="0x82ad56cb",$E="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",VE="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe";function qE(e,{docsPath:n,...r}){const s=(()=>{const o=qa(e,r);return o instanceof gs?e:o})();return new vE(s,{docsPath:n,...r})}function tu(){let e=()=>{},n=()=>{};return{promise:new Promise((s,o)=>{e=s,n=o}),resolve:e,reject:n}}const na=new Map;function JE({fn:e,id:n,shouldSplitBatch:r,wait:s=0,sort:o}){const u=async()=>{const A=h();c();const w=A.map(({args:x})=>x);w.length!==0&&e(w).then(x=>{o&&Array.isArray(x)&&x.sort(o);for(let T=0;T<A.length;T++){const{resolve:I}=A[T];I==null||I([x[T],x])}}).catch(x=>{for(let T=0;T<A.length;T++){const{reject:I}=A[T];I==null||I(x)}})},c=()=>na.delete(n),l=()=>h().map(({args:A})=>A),h=()=>na.get(n)||[],m=A=>na.set(n,[...h(),A]);return{flush:c,async schedule(A){const{promise:w,resolve:x,reject:T}=tu();return(r==null?void 0:r([...l(),A]))&&u(),h().length>0?(m({args:A,resolve:x,reject:T}),w):(m({args:A,resolve:x,reject:T}),setTimeout(u,s),w)}}}async function Hd(e,n){var fe,Ae,Te,$e;const{account:r=e.account,batch:s=!!((fe=e.batch)!=null&&fe.multicall),blockNumber:o,blockTag:u="latest",accessList:c,blobs:l,blockOverrides:h,code:m,data:A,factory:w,factoryData:x,gas:T,gasPrice:I,maxFeePerBlobGas:C,maxFeePerGas:N,maxPriorityFeePerGas:S,nonce:M,to:G,value:ee,stateOverride:H,...Q}=n,F=r?Yt(r):void 0;if(m&&(w||x))throw new O("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(m&&G)throw new O("Cannot provide both `code` & `to` as parameters.");const se=m&&A,K=w&&x&&G&&A,ge=se||K,Y=se?jE({code:m,data:A}):K?ZE({data:A,factory:w,factoryData:x,to:G}):A;try{As(n);const xe=(typeof o=="bigint"?X(o):void 0)||u,ve=h?zE(h):void 0,Fe=ud(H),_t=($e=(Te=(Ae=e.chain)==null?void 0:Ae.formatters)==null?void 0:Te.transactionRequest)==null?void 0:$e.format,ar=(_t||Ka)({...Ja(Q,{format:_t}),from:F==null?void 0:F.address,accessList:c,blobs:l,data:Y,gas:T,gasPrice:I,maxFeePerBlobGas:C,maxFeePerGas:N,maxPriorityFeePerGas:S,nonce:M,to:ge?void 0:G,value:ee});if(s&&KE({request:ar})&&!Fe&&!ve)try{return await YE(e,{...ar,blockNumber:o,blockTag:u})}catch(He){if(!(He instanceof Zl)&&!(He instanceof ua))throw He}const Es=(()=>{const He=[ar,xe];return Fe&&ve?[...He,Fe,ve]:Fe?[...He,Fe]:ve?[...He,{},ve]:He})(),ei=await e.request({method:"eth_call",params:Es});return ei==="0x"?{data:void 0}:{data:ei}}catch(Ve){const xe=XE(Ve),{offchainLookup:ve,offchainLookupSignature:Fe}=await Promise.resolve().then(()=>require("./ccip-C02MmhSc.cjs"));if(e.ccipRead!==!1&&(xe==null?void 0:xe.slice(0,10))===Fe&&G)return{data:await ve(e,{data:xe,to:G})};throw ge&&(xe==null?void 0:xe.slice(0,10))==="0x101bb98d"?new IE({factory:w}):qE(Ve,{...n,account:F,chain:e.chain})}}function KE({request:e}){const{data:n,to:r,...s}=e;return!(!n||n.startsWith(WE)||!r||Object.values(s).filter(o=>typeof o<"u").length>0)}async function YE(e,n){var C;const{batchSize:r=1024,wait:s=0}=typeof((C=e.batch)==null?void 0:C.multicall)=="object"?e.batch.multicall:{},{blockNumber:o,blockTag:u="latest",data:c,multicallAddress:l,to:h}=n;let m=l;if(!m){if(!e.chain)throw new Zl;m=Xa({blockNumber:o,chain:e.chain,contract:"multicall3"})}const w=(typeof o=="bigint"?X(o):void 0)||u,{schedule:x}=JE({id:`${e.uid}.${w}`,wait:s,shouldSplitBatch(N){return N.reduce((M,{data:G})=>M+(G.length-2),0)>r*2},fn:async N=>{const S=N.map(ee=>({allowFailure:!0,callData:ee.data,target:ee.to})),M=Zr({abi:Aa,args:[S],functionName:"aggregate3"}),G=await e.request({method:"eth_call",params:[{data:M,to:m},w]});return ys({abi:Aa,args:[S],functionName:"aggregate3",data:G||"0x"})}}),[{returnData:T,success:I}]=await x({data:c,to:h});if(!I)throw new eu({data:T});return T==="0x"?{data:void 0}:{data:T}}function jE(e){const{code:n,data:r}=e;return Jl({abi:Cd(["constructor(bytes, bytes)"]),bytecode:$E,args:[n,r]})}function ZE(e){const{data:n,factory:r,factoryData:s,to:o}=e;return Jl({abi:Cd(["constructor(address, bytes, address, bytes)"]),bytecode:VE,args:[o,n,r,s]})}function XE(e){var r;if(!(e instanceof O))return;const n=e.walk();return typeof(n==null?void 0:n.data)=="object"?(r=n.data)==null?void 0:r.data:n.data}async function or(e,n){const{abi:r,address:s,args:o,functionName:u,...c}=n,l=Zr({abi:r,args:o,functionName:u});try{const{data:h}=await ae(e,Hd,"call")({...c,data:l,to:s});return ys({abi:r,args:o,functionName:u,data:h||"0x"})}catch(h){throw Ta(h,{abi:r,address:s,args:o,docsPath:"/docs/contract/readContract",functionName:u})}}async function ev(e,n){const{blockNumber:r,blockTag:s,coinType:o,name:u,gatewayUrls:c,strict:l}=n,{chain:h}=e,m=(()=>{if(n.universalResolverAddress)return n.universalResolverAddress;if(!h)throw new Error("client chain not configured. universalResolverAddress is required.");return Xa({blockNumber:r,chain:h,contract:"ensUniversalResolver"})})(),A=h==null?void 0:h.ensTlds;if(A&&!A.some(w=>u.endsWith(w)))return null;try{const w=Zr({abi:ol,functionName:"addr",...o!=null?{args:[ta(u),BigInt(o)]}:{args:[ta(u)]}}),x={address:m,abi:mx,functionName:"resolve",args:[Xi(OE(u)),w,c??[Fd]],blockNumber:r,blockTag:s},I=await ae(e,or,"readContract")(x);if(I[0]==="0x")return null;const C=ys({abi:ol,args:o!=null?[ta(u),BigInt(o)]:void 0,functionName:"addr",data:I[0]});return C==="0x"||fs(C)==="0x00"?null:C}catch(w){if(l)throw w;if(BE(w))return null;throw w}}const tv=new Map,nv=new Map;function rv(e){const n=(o,u)=>({clear:()=>u.delete(o),get:()=>u.get(o),set:c=>u.set(o,c)}),r=n(e,tv),s=n(e,nv);return{clear:()=>{r.clear(),s.clear()},promise:r,response:s}}async function iv(e,{cacheKey:n,cacheTime:r=Number.POSITIVE_INFINITY}){const s=rv(n),o=s.response.get();if(o&&r>0&&new Date().getTime()-o.created.getTime()<r)return o.data;let u=s.promise.get();u||(u=e(),s.promise.set(u));try{const c=await u;return s.response.set({created:new Date,data:c}),c}finally{s.promise.clear()}}const sv=e=>`blockNumber.${e}`;async function nu(e,{cacheTime:n=e.cacheTime}={}){const r=await iv(()=>e.request({method:"eth_blockNumber"}),{cacheKey:sv(e.uid),cacheTime:n});return BigInt(r)}function ov(e,{args:n,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:n,eventName:r}:{}}}async function av(e,{blockHash:n,blockNumber:r,blockTag:s,hash:o,index:u}){var A,w,x;const c=s||"latest",l=r!==void 0?X(r):void 0;let h=null;if(o?h=await e.request({method:"eth_getTransactionByHash",params:[o]},{dedupe:!0}):n?h=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[n,X(u)]},{dedupe:!0}):h=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[l||c,X(u)]},{dedupe:!!l}),!h)throw new ed({blockHash:n,blockNumber:r,blockTag:c,hash:o,index:u});return(((x=(w=(A=e.chain)==null?void 0:A.formatters)==null?void 0:w.transaction)==null?void 0:x.format)||od)(h)}const Qd={"0x0":"reverted","0x1":"success"};function uv(e){const n={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(r=>ov(r)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?hn(e.transactionIndex):null,status:e.status?Qd[e.status]:null,type:e.type?sd[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}async function ll(e,{hash:n}){var o,u,c;const r=await e.request({method:"eth_getTransactionReceipt",params:[n]},{dedupe:!0});if(!r)throw new td({hash:n});return(((c=(u=(o=e.chain)==null?void 0:o.formatters)==null?void 0:u.transactionReceipt)==null?void 0:c.format)||uv)(r)}async function zd(e,n){var S;const{account:r,allowFailure:s=!0,batchSize:o,blockNumber:u,blockTag:c,multicallAddress:l,stateOverride:h}=n,m=n.contracts,A=o??(typeof((S=e.batch)==null?void 0:S.multicall)=="object"&&e.batch.multicall.batchSize||1024);let w=l;if(!w){if(!e.chain)throw new Error("client chain not configured. multicallAddress is required.");w=Xa({blockNumber:u,chain:e.chain,contract:"multicall3"})}const x=[[]];let T=0,I=0;for(let M=0;M<m.length;M++){const{abi:G,address:ee,args:H,functionName:Q}=m[M];try{const F=Zr({abi:G,args:H,functionName:Q});I+=(F.length-2)/2,A>0&&I>A&&x[T].length>0&&(T++,I=(F.length-2)/2,x[T]=[]),x[T]=[...x[T],{allowFailure:!0,callData:F,target:ee}]}catch(F){const se=Ta(F,{abi:G,address:ee,args:H,docsPath:"/docs/contract/multicall",functionName:Q,sender:r});if(!s)throw se;x[T]=[...x[T],{allowFailure:!0,callData:"0x",target:ee}]}}const C=await Promise.allSettled(x.map(M=>ae(e,or,"readContract")({abi:Aa,account:r,address:w,args:[M],blockNumber:u,blockTag:c,functionName:"aggregate3",stateOverride:h}))),N=[];for(let M=0;M<C.length;M++){const G=C[M];if(G.status==="rejected"){if(!s)throw G.reason;for(let H=0;H<x[M].length;H++)N.push({status:"failure",error:G.reason,result:void 0});continue}const ee=G.value;for(let H=0;H<ee.length;H++){const{returnData:Q,success:F}=ee[H],{callData:se}=x[M][H],{abi:K,address:ge,functionName:Y,args:fe}=m[N.length];try{if(se==="0x")throw new ds;if(!F)throw new eu({data:Q});const Ae=ys({abi:K,args:fe,data:Q,functionName:Y});N.push(s?{result:Ae,status:"success"}:Ae)}catch(Ae){const Te=Ta(Ae,{abi:K,address:ge,args:fe,docsPath:"/docs/contract/multicall",functionName:Y});if(!s)throw Te;N.push({error:Te,result:void 0,status:"failure"})}}}if(N.length!==m.length)throw new O("multicall results mismatch");return N}async function Ba(e){return new Promise(n=>setTimeout(n,e))}function dl(e,{delay:n=100,retryCount:r=2,shouldRetry:s=()=>!0}={}){return new Promise((o,u)=>{const c=async({count:l=0}={})=>{const h=async({error:m})=>{const A=typeof n=="function"?n({count:l,error:m}):n;A&&await Ba(A),c({count:l+1})};try{const m=await e();o(m)}catch(m){if(l<r&&await s({count:l,error:m}))return h({error:m});u(m)}};c()})}function cv(e){return{formatters:void 0,fees:void 0,serializers:void 0,...e}}class fv extends O{constructor({domain:n}){super(`Invalid domain "${Rt(n)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class lv extends O{constructor({primaryType:n,types:r}){super(`Invalid primary type \`${n}\` 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 dv extends O{constructor({type:n}){super(`Struct type "${n}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function hv(e){const{domain:n,message:r,primaryType:s,types:o}=e,u=(h,m)=>{const A={...m};for(const w of h){const{name:x,type:T}=w;T==="address"&&(A[x]=A[x].toLowerCase())}return A},c=o.EIP712Domain?n?u(o.EIP712Domain,n):{}:{},l=(()=>{if(s!=="EIP712Domain")return u(o[s],r)})();return Rt({domain:c,message:l,primaryType:s,types:o})}function pv(e){const{domain:n,message:r,primaryType:s,types:o}=e,u=(c,l)=>{for(const h of c){const{name:m,type:A}=h,w=l[m],x=A.match(ql);if(x&&(typeof w=="number"||typeof w=="bigint")){const[C,N,S]=x;X(w,{signed:N==="int",size:Number.parseInt(S)/8})}if(A==="address"&&typeof w=="string"&&!Jt(w))throw new Xn({address:w});const T=A.match(a1);if(T){const[C,N]=T;if(N&&Se(w)!==Number.parseInt(N))throw new Cb({expectedSize:Number.parseInt(N),givenSize:Se(w)})}const I=o[A];I&&(mv(A),u(I,w))}};if(o.EIP712Domain&&n){if(typeof n!="object")throw new fv({domain:n});u(o.EIP712Domain,n)}if(s!=="EIP712Domain")if(o[s])u(o[s],r);else throw new lv({primaryType:s,types:o})}function gv({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 mv(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new dv({type:e})}const ra=new Map,hl=new Map;let Av=0;function is(e,n,r){const s=++Av,o=()=>ra.get(e)||[],u=()=>{const A=o();ra.set(e,A.filter(w=>w.id!==s))},c=()=>{const A=o();if(!A.some(x=>x.id===s))return;const w=hl.get(e);A.length===1&&w&&w(),u()},l=o();if(ra.set(e,[...l,{id:s,fns:n}]),l&&l.length>0)return c;const h={};for(const A in n)h[A]=(...w)=>{var T,I;const x=o();if(x.length!==0)for(const C of x)(I=(T=C.fns)[A])==null||I.call(T,...w)};const m=r(h);return typeof m=="function"&&hl.set(e,m),c}function Wd(e,{emitOnBegin:n,initialWaitTime:r,interval:s}){let o=!0;const u=()=>o=!1;return(async()=>{let l;n&&(l=await e({unpoll:u}));const h=await(r==null?void 0:r(l))??s;await Ba(h);const m=async()=>{o&&(await e({unpoll:u}),await Ba(s),m())};m()})(),u}function yv(e,{emitOnBegin:n=!1,emitMissed:r=!1,onBlockNumber:s,onError:o,poll:u,pollingInterval:c=e.pollingInterval}){const l=typeof u<"u"?u:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket");let h;return l?(()=>{const w=Rt(["watchBlockNumber",e.uid,n,r,c]);return is(w,{onBlockNumber:s,onError:o},x=>Wd(async()=>{var T;try{const I=await ae(e,nu,"getBlockNumber")({cacheTime:0});if(h){if(I===h)return;if(I-h>1&&r)for(let C=h+1n;C<I;C++)x.onBlockNumber(C,h),h=C}(!h||I>h)&&(x.onBlockNumber(I,h),h=I)}catch(I){(T=x.onError)==null||T.call(x,I)}},{emitOnBegin:n,interval:c}))})():(()=>{const w=Rt(["watchBlockNumber",e.uid,n,r]);return is(w,{onBlockNumber:s,onError:o},x=>{let T=!0,I=()=>T=!1;return(async()=>{try{const C=(()=>{if(e.transport.type==="fallback"){const S=e.transport.transports.find(M=>M.config.type==="webSocket");return S?S.value:e.transport}return e.transport})(),{unsubscribe:N}=await C.subscribe({params:["newHeads"],onData(S){var G;if(!T)return;const M=dn((G=S.result)==null?void 0:G.number);x.onBlockNumber(M,h),h=M},onError(S){var M;(M=x.onError)==null||M.call(x,S)}});I=N,T||I()}catch(C){o==null||o(C)}})(),()=>I()})})()}async function wv(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(s=>ps(s))}async function bv(e,n={}){const{account:r=e.account,chainId:s}=n,o=r?Yt(r):void 0,u=s?[o==null?void 0:o.address,[X(s)]]:[o==null?void 0:o.address],c=await e.request({method:"wallet_getCapabilities",params:u}),l={};for(const[h,m]of Object.entries(c)){l[Number(h)]={};for(let[A,w]of Object.entries(m))A==="addSubAccount"&&(A="unstable_addSubAccount"),l[Number(h)][A]=w}return typeof s=="number"?l[s]:l}async function xv(e,n){const{account:r=e.account,capabilities:s,chain:o=e.chain,forceAtomic:u=!1,id:c,version:l="2.0.0"}=n;if(typeof r>"u")throw new za({docsPath:"/docs/actions/wallet/sendCalls"});const h=r?Yt(r):null,m=n.calls.map(A=>{const w=A;return{data:w.abi?Zr({abi:w.abi,functionName:w.functionName,args:w.args}):w.data,to:w.to,value:w.value?X(w.value):void 0}});try{const A=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:u,calls:m,capabilities:s,chainId:X(o.id),from:h==null?void 0:h.address,id:c,version:l}]},{retryCount:0});return typeof A=="string"?{id:A}:A}catch(A){throw rd(A,{...n,account:h,chain:n.chain})}}async function Ev(e,n){const{atomic:r=!1,chainId:s,receipts:o,version:u="2.0.0",...c}=await e.request({method:"wallet_getCallsStatus",params:[n.id]}),[l,h]=(()=>{const m=c.status;return m>=100&&m<200?["pending",m]:m>=200&&m<300?["success",m]:m>=300&&m<700?["failure",m]:m==="CONFIRMED"?["success",200]:m==="PENDING"?["pending",100]:[void 0,m]})();return{...c,atomic:r,chainId:s?hn(s):void 0,receipts:(o==null?void 0:o.map(m=>({...m,blockNumber:dn(m.blockNumber),gasUsed:dn(m.gasUsed),status:Qd[m.status]})))??[],statusCode:h,status:l,version:u}}async function vv(e,n){const{id:r,pollingInterval:s=e.pollingInterval,status:o=({statusCode:x})=>x>=200,timeout:u=6e4}=n,c=Rt(["waitForCallsStatus",e.uid,r]),{promise:l,resolve:h,reject:m}=tu();let A;const w=is(c,{resolve:h,reject:m},x=>{const T=Wd(async()=>{const I=C=>{clearTimeout(A),T(),C(),w()};try{const C=await Ev(e,{id:r});if(!o(C))return;I(()=>x.resolve(C))}catch(C){I(()=>x.reject(C))}},{interval:s,emitOnBegin:!0});return T});return A=u?setTimeout(()=>{w(),clearTimeout(A),m(new Pv({id:r}))},u):void 0,await l}class Pv extends O{constructor({id:n}){super(`Timed out while waiting for call bundle with id "${n}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}async function Tv(e,{confirmations:n=1,hash:r,onReplaced:s,pollingInterval:o=e.pollingInterval,retryCount:u=6,retryDelay:c=({count:h})=>~~(1<<h)*200,timeout:l=18e4}){const h=Rt(["waitForTransactionReceipt",e.uid,r]);let m,A,w,x=!1;const{promise:T,resolve:I,reject:C}=tu(),N=l?setTimeout(()=>C(new O1({hash:r})),l):void 0,S=is(h,{onReplaced:s,resolve:I,reject:C},M=>{const G=ae(e,yv,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:o,async onBlockNumber(ee){const H=F=>{clearTimeout(N),G(),F(),S()};let Q=ee;if(!x)try{if(w){if(n>1&&(!w.blockNumber||Q-w.blockNumber+1n<n))return;H(()=>M.resolve(w));return}if(m||(x=!0,await dl(async()=>{m=await ae(e,av,"getTransaction")({hash:r}),m.blockNumber&&(Q=m.blockNumber)},{delay:c,retryCount:u}),x=!1),w=await ae(e,ll,"getTransactionReceipt")({hash:r}),n>1&&(!w.blockNumber||Q-w.blockNumber+1n<n))return;H(()=>M.resolve(w))}catch(F){if(F instanceof ed||F instanceof td){if(!m){x=!1;return}try{A=m,x=!0;const se=await dl(()=>ae(e,tr,"getBlock")({blockNumber:Q,includeTransactions:!0}),{delay:c,retryCount:u,shouldRetry:({error:Y})=>Y instanceof id});x=!1;const K=se.transactions.find(({from:Y,nonce:fe})=>Y===A.from&&fe===A.nonce);if(!K||(w=await ae(e,ll,"getTransactionReceipt")({hash:K.hash}),n>1&&(!w.blockNumber||Q-w.blockNumber+1n<n)))return;let ge="replaced";K.to===A.to&&K.value===A.value&&K.input===A.input?ge="repriced":K.from===K.to&&K.value===0n&&(ge="cancelled"),H(()=>{var Y;(Y=M.onReplaced)==null||Y.call(M,{reason:ge,replacedTransaction:A,transaction:K,transactionReceipt:w}),M.resolve(w)})}catch(se){H(()=>M.reject(se))}}else H(()=>M.reject(F))}}})});return T}async function ru(e,n){const{account:r=e.account,domain:s,message:o,primaryType:u}=n;if(!r)throw new za({docsPath:"/docs/actions/wallet/signTypedData"});const c=Yt(r),l={EIP712Domain:gv({domain:s}),...n.types};if(pv({domain:s,message:o,primaryType:u,types:l}),c.signTypedData)return c.signTypedData({domain:s,message:o,primaryType:u,types:l});const h=hv({domain:s,message:o,primaryType:u,types:l});return e.request({method:"eth_signTypedData_v4",params:[c.address,h]},{retryCount:0})}var Ce;(function(e){e.RPCError="RPCError",e.ProviderError="ProviderError",e.ServerError="ServerError",e.TransactionError="TransactionError",e.ValidationError="ValidationError",e.BalanceError="BalanceError",e.NotFoundError="NotFoundError",e.UnknownError="UnknownError",e.SlippageError="SlippageError",e.HTTPError="HTTPError"})(Ce||(Ce={}));var oe;(function(e){e[e.InternalError=1e3]="InternalError",e[e.ValidationError=1001]="ValidationError",e[e.TransactionUnderpriced=1002]="TransactionUnderpriced",e[e.TransactionFailed=1003]="TransactionFailed",e[e.Timeout=1004]="Timeout",e[e.ProviderUnavailable=1005]="ProviderUnavailable",e[e.NotFound=1006]="NotFound",e[e.ChainSwitchError=1007]="ChainSwitchError",e[e.TransactionUnprepared=1008]="TransactionUnprepared",e[e.GasLimitError=1009]="GasLimitError",e[e.TransactionCanceled=1010]="TransactionCanceled",e[e.SlippageError=1011]="SlippageError",e[e.SignatureRejected=1012]="SignatureRejected",e[e.BalanceError=1013]="BalanceError",e[e.AllowanceRequired=1014]="AllowanceRequired",e[e.InsufficientFunds=1015]="InsufficientFunds",e[e.ExchangeRateUpdateCanceled=1016]="ExchangeRateUpdateCanceled",e[e.WalletChangedDuringExecution=1017]="WalletChangedDuringExecution",e[e.TransactionExpired=1018]="TransactionExpired",e[e.TransactionSimulationFailed=1019]="TransactionSimulationFailed",e[e.TransactionConflict=1020]="TransactionConflict",e[e.TransactionNotFound=1021]="TransactionNotFound",e[e.TransactionRejected=1022]="TransactionRejected",e[e.RateLimitExceeded=1023]="RateLimitExceeded",e[e.ThirdPartyError=1024]="ThirdPartyError"})(oe||(oe={}));var It;(function(e){e.UnknownError="Unknown error occurred.",e.SlippageError="The slippage is larger than the defined threshold. Please request a new route to get a fresh quote.",e.GasLimitLow="Gas limit is too low.",e.TransactionUnderpriced="Transaction is underpriced.",e.TransactionReverted="Transaction was reverted."})(It||(It={}));const Iv=e=>{let n=e;for(;n!=null&&n.cause;)n=n.cause;return n};class xt extends Error{constructor(r,s,o,u){super(o);re(this,"code");re(this,"cause");this.name=r,this.code=s,this.cause=u;const c=Iv(this.cause);c!=null&&c.stack&&(this.stack=c.stack)}}class Bv extends xt{constructor(n,r,s){super(Ce.ProviderError,n,r,s)}}class Ge extends xt{constructor(n,r,s){super(Ce.TransactionError,n,r,s)}}class Sv extends xt{constructor(n,r){super(Ce.UnknownError,oe.InternalError,n,r)}}class Rv extends xt{constructor(n,r){super(Ce.BalanceError,oe.BalanceError,n,r)}}class Dv extends xt{constructor(n){super(Ce.ServerError,oe.InternalError,n)}}class Kt extends xt{constructor(n){super(Ce.ValidationError,oe.ValidationError,n)}}const $d="@lifi/sdk",Lr="3.7.0";class Dt extends Error{constructor(r,s,o){const u=`${r.message?`[${r.name}] ${r.message}`:"Unknown error occurred"}
LI.FI SDK version: ${Lr}`;super(u);re(this,"step");re(this,"process");re(this,"code");re(this,"name","SDKError");re(this,"cause");this.name="SDKError",this.step=s,this.process=o,this.cause=r,this.stack=this.cause.stack,this.code=r.code}}const Cv=new Map([[400,{type:Ce.ValidationError,code:oe.ValidationError}],[404,{type:Ce.NotFoundError,code:oe.NotFound}],[409,{type:Ce.SlippageError,code:oe.SlippageError,message:It.SlippageError}],[424,{type:Ce.ServerError,code:oe.ThirdPartyError}],[429,{type:Ce.ServerError,code:oe.RateLimitExceeded}],[500,{type:Ce.ServerError,code:oe.InternalError}]]),_v=e=>Cv.get(e)??{type:Ce.ServerError,code:oe.InternalError},Nv=e=>{const n=e.status||e.status===0?e.status:"",r=e.statusText||"",s=`${n} ${r}`.trim();return`Request failed with ${s?`status code ${s}`:"an unknown error"}`};class Ov extends xt{constructor(r,s,o){const u=_v(r.status),c=u!=null&&u.message?`
${u.message}`:"",l=Nv(r)+c;super(Ce.HTTPError,u.code,l);re(this,"response");re(this,"status");re(this,"url");re(this,"fetchOptions");re(this,"type");re(this,"responseBody");this.type=u.type,this.response=r,this.status=r.status,this.message=l,this.url=s,this.fetchOptions=o}async buildAdditionalDetails(){var r,s;this.type&&(this.message=`[${this.type}] ${this.message}`);try{this.responseBody=await this.response.json(),this.responseBody&&(this.message+=this.message.endsWith(".")?` ${(r=this.responseBody)==null?void 0:r.message.toString()}`:`. ${(s=this.responseBody)==null?void 0:s.message.toString()}`)}catch{}return this}}function Gr(e){return new Promise(n=>{setTimeout(()=>n(null),e)})}const pl={retries:1},Mv=({retries:e,...n})=>({...n}),Dn=async(e,n={retries:pl.retries})=>{var c;const{userId:r,integrator:s,widgetVersion:o,apiKey:u}=be.get();if(!s)throw new Dt(new Kt("You need to provide the Integrator property. Please see documentation https://docs.li.fi/integrate-li.fi-js-sdk/set-up-the-sdk"));n.retries=n.retries??pl.retries;try{u&&(n.headers={...n.headers,"x-lifi-api-key":u}),r&&(n.headers={...n.headers,"x-lifi-userid":r}),o&&(n.headers={...n.headers,"x-lifi-widget":o}),Lr&&(n.headers={...n.headers,"x-lifi-sdk":Lr}),n.headers={...n.headers,"x-lifi-integrator":s};const l=await fetch(e,Mv(n));if(!l.ok)throw new Ov(l,e,n);return await l.json()}catch(l){if(n.retries>0&&l.status===500)return await Gr(500),Dn(e,{...n,retries:n.retries-1});throw await((c=l.buildAdditionalDetails)==null?void 0:c.call(l)),new Dt(l)}},Uv=e=>{const{id:n,type:r,tool:s,action:o,estimate:u}=e;return typeof n=="string"&&["swap","cross","lifi"].includes(r)&&typeof s=="string"&&Fv(o)&&kv(u)},Fv=e=>{const{fromChainId:n,fromAmount:r,fromToken:s,toChainId:o,toToken:u}=e;return typeof n=="number"&&typeof r=="string"&&r!==""&&Sa(s)&&typeof o=="number"&&Sa(u)},kv=e=>{const{fromAmount:n,toAmount:r,toAmountMin:s,approvalAddress:o}=e;return typeof n=="string"&&n!==""&&typeof r=="string"&&r!==""&&typeof s=="string"&&s!==""&&typeof o=="string"},Sa=e=>{const{address:n,decimals:r,chainId:s}=e;return typeof n=="string"&&typeof r=="number"&&typeof s=="number"};class Lv extends Map{constructor(r){super();re(this,"maxSize");this.maxSize=r}set(r,s){return super.set(r,s),this.maxSize&&this.size>this.maxSize&&this.delete(this.keys().next().value),this}}const Ji=new Lv(8192);function Gv(e,{enabled:n=!0,id:r}){if(!n||!r)return e();if(Ji.get(r))return Ji.get(r);const s=e().finally(()=>Ji.delete(r));return Ji.set(r,s),s}const Hv=async(e,n)=>(Uv(e),await Dn(`${be.get().apiUrl}/advanced/stepTransaction`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),signal:n==null?void 0:n.signal})),Qv=async(e,n)=>{if(!e.txHash)throw new Dt(new Kt('Required parameter "txHash" is missing.'));const r=new URLSearchParams(e);return await Dn(`${be.get().apiUrl}/status?${r}`,{signal:n==null?void 0:n.signal})},zv=async(e,n)=>{var u,c,l,h,m,A,w,x,T,I,C,N,S,M,G,ee;const r=["fromChain","fromToken","fromAddress","fromAmount","toChain","toToken"];for(const H of r)if(!e[H])throw new Dt(new Kt(`Required parameter "${H}" is missing.`));const s=be.get();e.integrator??(e.integrator=s.integrator),e.order??(e.order=(u=s.routeOptions)==null?void 0:u.order),e.slippage??(e.slippage=(c=s.routeOptions)==null?void 0:c.slippage),e.referrer??(e.referrer=(l=s.routeOptions)==null?void 0:l.referrer),e.fee??(e.fee=(h=s.routeOptions)==null?void 0:h.fee),e.allowBridges??(e.allowBridges=(A=(m=s.routeOptions)==null?void 0:m.bridges)==null?void 0:A.allow),e.denyBridges??(e.denyBridges=(x=(w=s.routeOptions)==null?void 0:w.bridges)==null?void 0:x.deny),e.preferBridges??(e.preferBridges=(I=(T=s.routeOptions)==null?void 0:T.bridges)==null?void 0:I.prefer),e.allowExchanges??(e.allowExchanges=(N=(C=s.routeOptions)==null?void 0:C.exchanges)==null?void 0:N.allow),e.denyExchanges??(e.denyExchanges=(M=(S=s.routeOptions)==null?void 0:S.exchanges)==null?void 0:M.deny),e.preferExchanges??(e.preferExchanges=(ee=(G=s.routeOptions)==null?void 0:G.exchanges)==null?void 0:ee.prefer);for(const H of Object.keys(e))e[H]||delete e[H];const o=await Dn(`${be.get().apiUrl}/relayer/quote?${new URLSearchParams(e)}`,{signal:n==null?void 0:n.signal});if(o.status==="error")throw new xt(Ce.ServerError,o.data.code,o.data.message);return o.data},Wv=async(e,n)=>{const r=["typedData","transactionRequest"];for(const o of r)if(!e[o])throw new Dt(new Kt(`Required parameter "${o}" is missing.`));const s=await Dn(`${be.get().apiUrl}/relayer/relay`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e,(o,u)=>typeof u=="bigint"?u.toString():u),signal:n==null?void 0:n.signal});if(s.status==="error")throw new xt(Ce.ServerError,s.data.code,s.data.message);return s.data},$v=async(e,n)=>{if(!e.taskId)throw new Dt(new Kt('Required parameter "taskId" is missing.'));const{taskId:r,...s}=e,o=new URLSearchParams(s),u=await Dn(`${be.get().apiUrl}/relayer/status/${r}?${o}`,{signal:n==null?void 0:n.signal});if(u.status==="error")throw new xt(Ce.ServerError,u.data.code,u.data.message);return u.data},Vd=async(e,n)=>{if(e)for(const o of Object.keys(e))e[o]||delete e[o];const r=new URLSearchParams(e).toString();return(await Gv(()=>Dn(`${be.get().apiUrl}/chains?${r}`,{signal:n==null?void 0:n.signal}),{id:`${Vd.name}.${r}`})).chains},Bt={state:{},get(e){return this.state[e]},create(e){var n;return this.state[e.route.id]={...this.state[e.route.id],...e,executors:((n=this.state[e.route.id])==null?void 0:n.executors)??[]},this.state[e.route.id]},update(e){this.state[e.route.id]&&(this.state[e.route.id]={...this.state[e.route.id],...e})},delete(e){delete this.state[e]}},Vv={TOKEN_ALLOWANCE:{STARTED:"Setting token allowance",PENDING:"Waiting for token allowance",DONE:"Token allowance set"},SWITCH_CHAIN:{ACTION_REQUIRED:"Chain switch required",PENDING:"Waiting for chain switch",DONE:"Chain switched"},SWAP:{STARTED:"Preparing swap transaction",ACTION_REQUIRED:"Please sign the transaction",PENDING:"Waiting for swap transaction",DONE:"Swap completed"},CROSS_CHAIN:{STARTED:"Preparing bridge transaction",ACTION_REQUIRED:"Please sign the transaction",PENDING:"Waiting for bridge transaction",DONE:"Bridge transaction confirmed"},RECEIVING_CHAIN:{PENDING:"Waiting for destination chain",DONE:"Bridge completed"},PERMIT:{STARTED:"Preparing transaction",ACTION_REQUIRED:"Sign permit message",PENDING:"Waiting for permit message",DONE:"Permit message signed"},TRANSACTION:{}},qv={PENDING:{BRIDGE_NOT_AVAILABLE:"Bridge communication is temporarily unavailable.",CHAIN_NOT_AVAILABLE:"RPC communication is temporarily unavailable.",UNKNOWN_ERROR:"An unexpected error occurred. Please seek assistance in the LI.FI discord server.",WAIT_SOURCE_CONFIRMATIONS:"The bridge deposit has been received. The bridge is waiting for more confirmations to start the off-chain logic.",WAIT_DESTINATION_TRANSACTION:"The bridge off-chain logic is being executed. Wait for the transaction to appear on the destination chain."},DONE:{PARTIAL:"Some of the received tokens are not the requested destination tokens.",REFUNDED:"The tokens were refunded to the sender address.",COMPLETED:"The transfer is complete."},FAILED:{},INVALID:{},NOT_FOUND:{}};function gl(e,n){return Vv[e][n]}function Jv(e,n){return n?qv[e][n]:void 0}class Kv{constructor(n){re(this,"routeId");re(this,"shouldUpdate",!0);re(this,"initExecutionObject",n=>(n.execution||(n.execution={status:"PENDING",process:[],startedAt:Date.now()},this.updateStepInRoute(n)),n.execution.status==="FAILED"&&(n.execution.startedAt=Date.now(),n.execution.status="PENDING",this.updateStepInRoute(n)),n.execution));re(this,"findOrCreateProcess",({step:n,type:r,chainId:s,status:o,startedAt:u})=>{const c=this.findProcess(n,r,o);if(c)return c;const l={type:r,startedAt:u??Date.now(),message:gl(r,o??"STARTED"),status:o??"STARTED",chainId:s};return n.execution.process.push(l),this.updateStepInRoute(n),l});re(this,"updateProcess",(n,r,s,o)=>{if(!n.execution)throw new Error("Can't update an empty step execution.");const u=this.findProcess(n,r);if(!u)throw new Error("Can't find a process for the given type.");switch(s){case"CANCELLED":u.doneAt=Date.now();break;case"FAILED":u.doneAt=Date.now(),n.execution.status="FAILED";break;case"DONE":u.doneAt=Date.now();break;case"PENDING":n.execution.status="PENDING",u.pendingAt=Date.now();break;case"ACTION_REQUIRED":n.execution.status="ACTION_REQUIRED",u.actionRequiredAt=Date.now();break}if(u.status=s,u.message=gl(r,s),o)for(const[c,l]of Object.entries(o))u[c]=l;return n.execution.process=[...n.execution.process.filter(c=>c.status==="DONE"),...n.execution.process.filter(c=>c.status!=="DONE")],this.updateStepInRoute(n),u});re(this,"removeProcess",(n,r)=>{if(!n.execution)throw new Error("Execution hasn't been initialized.");const s=n.execution.process.findIndex(o=>o.type===r);n.execution.process.splice(s,1),this.updateStepInRoute(n)});re(this,"updateStepInRoute",n=>{var o,u;if(!this.shouldUpdate)return n;const r=Bt.get(this.routeId);if(!r)throw new Error("Execution data not found.");const s=r.route.steps.findIndex(c=>c.id===n.id);if(s===-1)throw new Error("Couldn't find a step to update.");return r.route.steps[s]={...r.route.steps[s],...n},(u=(o=r.executionOptions)==null?void 0:o.updateRouteHook)==null||u.call(o,r.route),r.route.steps[s]});this.routeId=n}updateExecution(n,r,s){if(!n.execution)throw Error("Can't update empty execution.");return n.execution.status=r,r==="DONE"&&(n.execution.doneAt=Date.now()),s&&(n.execution={...n.execution,...s}),this.updateStepInRoute(n),n}findProcess(n,r,s){var u;if(!((u=n.execution)!=null&&u.process))throw new Error("Execution hasn't been initialized.");const o=n.execution.process.find(c=>c.type===r);return o&&s&&o.status!==s&&(o.status=s,this.updateStepInRoute(n)),o}allowUpdates(n){this.shouldUpdate=n}}const Yv={allowInteraction:!0,allowUpdates:!0,allowExecution:!0};let jv=class{constructor(n){re(this,"executionOptions");re(this,"statusManager");re(this,"allowUserInteraction",!0);re(this,"allowExecution",!0);re(this,"setInteraction",n=>{const r={...Yv,...n};this.allowUserInteraction=r.allowInteraction,this.statusManager.allowUpdates(r.allowUpdates),this.allowExecution=r.allowExecution});this.statusManager=new Kv(n.routeId),this.executionOptions=n.executionOptions}};const Zv=async(e,n)=>{const r=await Xv(e,[n]);return r.length?r[0]:null},Xv=async(e,n)=>{const r=n.reduce((o,u)=>(o[u.chainId]||(o[u.chainId]=[]),o[u.chainId].push(u),o),{}),s=await eP(e,r);return Object.values(s).flat()},eP=async(e,n)=>{if(!e)throw new Kt("Missing walletAddress.");if(Object.values(n).flat().filter(c=>!Sa(c)).length)throw new Kt("Invalid tokens passed.");const o={},u=await Promise.allSettled(Object.keys(n).map(async c=>{const l=Number.parseInt(c),h=await be.getChainById(l),m=be.get().providers.find(w=>w.isAddress(e));if(!m)throw new Error(`SDK Token Provider for ${h.chainType} is not found.`);const A=await m.getBalance(e,n[l]);o[l]=A}));if(be.get().debug)for(const c of u)c.status;return o},qd=async(e,n,r=0)=>{const s=await Zv(e,n.action.fromToken);if(s){const o=s.amount??0n,u=BigInt(n.action.fromAmount);if(o<u)if(r<=3)await Gr(200),await qd(e,n,r+1);else if(u*BigInt((1-(n.action.slippage??0))*1e9)/1000000000n<=o)n.action.fromAmount=o.toString();else{const c=ce.formatUnits(u,s.decimals),l=ce.formatUnits(o,s.decimals);let h=`Your ${s.symbol} balance is too low, you try to transfer ${c} ${s.symbol}, but your wallet only holds ${l} ${s.symbol}. No funds have been sent.`;throw o!==0n&&(h+=`If the problem consists, please delete this transfer and start a new one with a maximum of ${l} ${s.symbol}.`),new Rv("The balance is too low.",new Error(h))}}},tP=.005;function nP(e,n){const r=e.action.slippage||tP,s=BigInt(e.estimate.toAmountMin),o=BigInt(n.estimate.toAmountMin),u=s-o;let c=0;return s>0&&(c=Number(u*1000000000n/s)/1e9),c<=r}const rP=async(e,n,r,s,o)=>{var c;if(nP(n,r))return e.updateStepInRoute(r);let u;if(s&&(u=await((c=o==null?void 0:o.acceptExchangeRateUpdateHook)==null?void 0:c.call(o,{oldToAmount:n.estimate.toAmount,newToAmount:r.estimate.toAmount,toToken:r.action.toToken}))),!u)throw new Ge(oe.ExchangeRateUpdateCanceled,`Exchange rate has changed!
Transaction was not sent, your funds are still in your wallet.
The exchange rate has changed and the previous estimation can not be fulfilled due to value loss.`);return e.updateStepInRoute(r)},iP=async(e,n)=>{const s=`It appears that your transaction may not have been successful.
However, to confirm this, please check your ${(await be.getChainById(e.action.toChainId)).name} wallet for ${e.action.toToken.symbol}.`;return n?`${s}
You can also check the <a href="${n}" target="_blank" rel="nofollow noreferrer">block explorer</a> for more information.`:s},Jd=async(e,n=5e3,r=3,s=()=>!0)=>{let o,u=0;for(;!o;)try{o=await e(),o||await Gr(n)}catch(c){if(!s(u,c)||(u++,u===r))throw c;await Gr(n)}return o},ml={};async function sP(e,n,r,s,o=5e3){const u=()=>Qv({fromChain:s.action.fromChainId,toChain:s.action.toChainId,txHash:e,...s.tool!=="custom"&&{bridge:s.tool}}).then(h=>{switch(h.status){case"DONE":return h;case"PENDING":n==null||n.updateProcess(s,r,"PENDING",{substatus:h.substatus,substatusMessage:h.substatusMessage||Jv(h.status,h.substatus),txLink:h.bridgeExplorerLink});return;case"NOT_FOUND":return;default:return Promise.reject()}}).catch(h=>{process.env.NODE_ENV});let c=ml[e];c||(c=Jd(u,o),ml[e]=c);const l=await c;if(!("receiving"in l))throw new Dv("Status doesn't contain destination chain information.");return l}async function Al(e,n,r,s,o,u){const c=n.txHash;let l=n.type;try{if(!c)throw new Error("Transaction hash is undefined.");r.id!==s.id&&(l=o.findOrCreateProcess({step:e,type:"RECEIVING_CHAIN",status:"PENDING",chainId:s.id,startedAt:n.doneAt}).type);const m=await sP(c,o,l,e,u),A=m.receiving;return o.updateProcess(e,l,"DONE",{substatus:m.substatus,substatusMessage:m.substatusMessage,txHash:A==null?void 0:A.txHash,txLink:`${s.metamask.blockExplorerUrls[0]}tx/${A==null?void 0:A.txHash}`}),o.updateExecution(e,"DONE",{...m.sending.amount&&{fromAmount:m.sending.amount},...(A==null?void 0:A.amount)&&{toAmount:A.amount},...(A==null?void 0:A.token)&&{toToken:A.token},gasCosts:[{amount:m.sending.gasAmount,amountUSD:m.sending.gasAmountUSD,token:m.sending.gasToken,estimate:m.sending.gasUsed,limit:m.sending.gasUsed,price:m.sending.gasPrice,type:"SEND"}]}),e}catch(h){const m=await iP(e,`${s.metamask.blockExplorerUrls[0]}tx/${c}`);throw o.updateProcess(e,l,"FAILED",{error:{code:oe.TransactionFailed,message:"Failed while waiting for status of destination chain transaction.",htmlMessage:m}}),o.updateExecution(e,"FAILED"),h}}const oP="0x0000000000000000000000000000000000000000",aP="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";BigInt("0xffffffffffff");BigInt("0xffffffffffffffffffffffffffffffffffffffff");const ws=0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffn,Kd=e=>e===oP||e===aP,iu=ce.parseAbi(["function callDiamondWithPermit2(bytes, ((address, uint256), uint256, uint256), bytes) external","function callDiamondWithEIP2612Signature(address, uint256, uint256, uint8, bytes32, bytes32, bytes) external payable","function nextNonce(address) external view returns (uint256)","function callDiamondWithPermit2Witness(bytes, address, ((address, uint256), uint256, uint256), bytes) external payable"]),Ki=ce.parseAbi(["function permit(address, address, uint256, uint256, uint8, bytes32, bytes32) external","function DOMAIN_SEPARATOR() external view returns (bytes32)","function nonces(address) external view returns (uint256)","function name() external view returns (string)","function version() external view returns (string)"]),uP=ce.parseAbi(["function approve(address, uint256) external returns (bool)"]),cP=ce.parseAbi(["function allowance(address, address) external view returns (uint256)"]),fP=ce.parseAbi(["function getEthBalance(address) external view returns (uint256)"]),Yd=ce.parseAbi(["function balanceOf(address) external view returns (uint256)"]),yl={Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},lP=cv({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}}}),dP=async e=>{const n=(await be.getRPCUrls())[e];if(!(n!=null&&n.length))throw new Error(`RPC URL not found for chainId: ${e}`);return n},Yi={},Xr=async e=>{var c;if(Yi[e])return Yi[e];const r=(await dP(e)).map(l=>l.startsWith("wss")?ce.webSocket(l):ce.http(l,{batch:{batchSize:64}})),s=await be.getChainById(e),o={...s,...s.metamask,name:s.metamask.chainName,rpcUrls:{default:{http:s.metamask.rpcUrls},public:{http:s.metamask.rpcUrls}}};o.id===Ur.ETH&&(o.contracts={...lP.contracts,...o.contracts});const u=be.getProvider($t.EVM);return Yi[e]=ce.createClient({chain:o,transport:ce.fallback(r,(c=u==null?void 0:u.options)==null?void 0:c.fallbackTransportConfig),batch:{multicall:!0}}),Yi[e]},hP=e=>{if(!e.length)return;const n=[...e].sort((s,o)=>s>o?1:s<o?-1:0),r=Math.floor(n.length/2);return n.length%2===0?(n[r-1]+n[r])/2n:n[r]},pP=e=>({...e,...e.metamask,blockExplorers:e.metamask.blockExplorerUrls.reduce((n,r,s)=>(n[s===0?"default":`${s}`]={name:r,url:r},n),{}),name:e.metamask.chainName,rpcUrls:{default:{http:e.metamask.rpcUrls},public:{http:e.metamask.rpcUrls}},contracts:{...e.multicallAddress?{multicall3:{address:e.multicallAddress}}:void 0}}),jd=async e=>{const r=(await tr(e,{includeTransactions:!0})).transactions.filter(c=>c.maxPriorityFeePerGas).map(c=>c.maxPriorityFeePerGas);if(!r.length)return;let s=0n;for(const c of r)s+=c;const o=hP(r)??0n,u=s/BigInt(r.length);return o>u?u:o},Zd=async e=>{var r;return(r=(await be.getChains()).find(s=>s.id===e))==null?void 0:r.multicallAddress},gP=async(e,n,r,s)=>{const o=await Xr(e);try{return await or(o,{address:n,abi:cP,functionName:"allowance",args:[r,s]})}catch{return 0n}},mP=async(e,n)=>{try{return await(await fetch(`https://api.tenderly.co/api/v1/public-contract/${n}/tx/${e}`)).json()}catch{}},Ra=async(e,n,r)=>{if(e instanceof Dt)return e.step=e.step??n,e.process=e.process??r,e;const s=await AP(e,n,r);return new Dt(s,n,r)},AP=async(e,n,r)=>{var s,o,u,c,l;if(e.name==="UserRejectedRequestError"||((s=e.cause)==null?void 0:s.name)==="UserRejectedRequestError")return new Ge(oe.SignatureRejected,e.message,e);if(((o=e.cause)==null?void 0:o.code)===-32e3||e.name==="TransactionExecutionError"&&((c=(u=e.cause)==null?void 0:u.details)!=null&&c.includes("rejected")))return new Ge(oe.SignatureRejected,e.message,e);if(((l=e.cause)==null?void 0:l.code)===-32603)return new Ge(oe.TransactionRejected,e.message,e);if(n&&(r!=null&&r.txHash)&&e.code===oe.TransactionFailed&&e.message===It.TransactionReverted){const h=await mP(r.txHash,n.action.fromChainId),m=h==null?void 0:h.error_message;if(m!=null&&m.toLowerCase().includes("out of gas"))return new Ge(oe.GasLimitError,It.GasLimitLow,e)}return e instanceof xt?e:new Sv(e.message||It.UnknownError,e)},yP="0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f",wP="0x36c25de3e541d5d970f66e4210d728721220fff5c077cc6cd008b3a0c62adab7";function bP({name:e,version:n,chainId:r,verifyingContract:s,withSalt:o=!1}){const u=ce.keccak256(ce.toBytes(e)),c=ce.keccak256(ce.toBytes(n)),l=o?ce.encodeAbiParameters(ce.parseAbiParameters("bytes32, bytes32, bytes32, address, bytes32"),[wP,u,c,s,ce.pad(ce.toHex(r),{size:32})]):ce.encodeAbiParameters(ce.parseAbiParameters("bytes32, bytes32, bytes32, uint256, address"),[yP,u,c,BigInt(r),s]);return ce.keccak256(l)}function wl({name:e,version:n,chainId:r,verifyingContract:s,domainSeparator:o}){if(!e||!o)return{isValid:!1,domain:{}};for(const u of[!1,!0]){const c=bP({name:e,version:n,chainId:r,verifyingContract:s,withSalt:u});if(o.toLowerCase()===c.toLowerCase())return{isValid:!0,domain:u?{name:e,version:n,verifyingContract:s,salt:ce.pad(ce.toHex(r),{size:32})}:{name:e,version:n,chainId:r,verifyingContract:s}}}return{isValid:!1,domain:{}}}const xP=async(e,n,r,s,o)=>{try{const u=await Zd(n),c=[{address:r,abi:Ki,functionName:"name"},{address:r,abi:Ki,functionName:"DOMAIN_SEPARATOR"},{address:r,abi:Ki,functionName:"nonces",args:[e.account.address]},{address:r,abi:Ki,functionName:"version"}];if(u){const[N,S,M,G]=await zd(e,{contracts:c,multicallAddress:u});if(N.status!=="success"||S.status!=="success"||M.status!=="success"||!N.result||!S.result||M.result===void 0)return;const{isValid:ee,domain:H}=wl({name:N.result,version:G.result??"1",chainId:n,verifyingContract:r,domainSeparator:S.result});if(!ee)return;const Q={owner:e.account.address,spender:s,value:o.toString(),nonce:M.result.toString(),deadline:BigInt(Math.floor(Date.now()/1e3)+30*60).toString()};return{primaryType:"Permit",domain:H,types:yl,message:Q}}const[l,h,m,A]=await Promise.allSettled(c.map(N=>or(e,N)));if(l.status!=="fulfilled"||h.status!=="fulfilled"||m.status!=="fulfilled")return;const w=l.value,x=A.status==="fulfilled"?A.value:"1",{isValid:T,domain:I}=wl({name:w,version:x,chainId:n,verifyingContract:r,domainSeparator:h.value});if(!T)return;const C={owner:e.account.address,spender:s,value:o.toString(),nonce:m.value.toString(),deadline:BigInt(Math.floor(Date.now()/1e3)+30*60).toString()};return{primaryType:"Permit",domain:I,types:yl,message:C}}catch{return}},EP=async(e,n,r,s,o,u)=>{var h;const c=ce.encodeFunctionData({abi:uP,functionName:"approve",args:[r,s]});if(u)return c;let l={to:n,data:c,maxPriorityFeePerGas:((h=e.account)==null?void 0:h.type)==="local"?await jd(e):void 0};if(o!=null&&o.updateTransactionRequestHook){const m=await o.updateTransactionRequestHook({requestType:"approve",...l});l={...l,...m}}return ae(e,yd,"sendTransaction")({to:l.to,account:e.account,data:l.data,gas:l.gas,gasPrice:l.gasPrice,maxFeePerGas:l.maxFeePerGas,maxPriorityFeePerGas:l.maxPriorityFeePerGas})};function Xd(e){return!!e.typedData&&e.typedData.length>0}async function eh({client:e,chainId:n,txHash:r,onReplaced:s}){let{transactionReceipt:o,replacementReason:u}=await bl(e,r,s);if(!(o!=null&&o.status)){const c=await Xr(n),l=await bl(c,r,s);o=l.transactionReceipt,u=l.replacementReason}if((o==null?void 0:o.status)==="reverted")throw new Ge(oe.TransactionFailed,"Transaction was reverted.");if(u==="cancelled"||u==="replaced")throw new Ge(oe.TransactionCanceled,"Transaction was canceled or replaced.");return o}async function bl(e,n,r){let s,o;try{o=await Tv(e,{hash:n,onReplaced:u=>{s=u.reason,r==null||r(u)}})}catch{}return{transactionReceipt:o,replacementReason:s}}const vP=async({client:e,chain:n,step:r,statusManager:s,executionOptions:o,allowUserInteraction:u=!1,batchingSupported:c=!1,permit2Supported:l=!1,disableMessageSigning:h=!1})=>{const m=s.findOrCreateProcess({step:r,type:"TOKEN_ALLOWANCE",chainId:r.action.fromChainId});try{if(m.txHash&&m.status!=="DONE")return await xl(e,m.txHash,m.type,r,n,s),{status:"DONE"};s.updateProcess(r,m.type,"STARTED");const A=l?n.permit2:r.estimate.approvalAddress,w=BigInt(r.action.fromAmount),x=await gP(n.id,r.action.fromToken.address,e.account.address,A);if(w<=x)return s.updateProcess(r,m.type,"DONE"),{status:"DONE"};const T=Xd(r),I=!!n.permit2Proxy&&!c&&!h;let C;if(T?C=r.typedData.find(M=>M.primaryType==="Permit"):I&&(C=await xP(e,n.id,r.action.fromToken.address,n.permit2Proxy,w)),s.updateProcess(r,m.type,"ACTION_REQUIRED"),!u)return{status:"ACTION_REQUIRED"};if(I&&C){const M=await ae(e,ru,"signTypedData")({account:e.account,domain:C.domain,types:C.types,primaryType:"Permit",message:C.message});return s.updateProcess(r,m.type,"DONE"),{status:"NATIVE_PERMIT",data:{...C,signature:M}}}const N=l?ws:w,S=await EP(e,r.action.fromToken.address,A,N,o,c);return c?(s.updateProcess(r,m.type,"DONE"),{status:"BATCH_APPROVAL",data:{to:r.action.fromToken.address,data:S,chainId:r.action.fromToken.chainId}}):(await xl(e,S,m.type,r,n,s),{status:"DONE"})}catch(A){const w=await Ra(A,r,m);throw s.updateProcess(r,m.type,"FAILED",{error:{message:w.cause.message,code:w.code}}),s.updateExecution(r,"FAILED"),w}},xl=async(e,n,r,s,o,u)=>{const c=o.metamask.blockExplorerUrls[0],l=A=>`${c}tx/${A}`;u.updateProcess(s,r,"PENDING",{txHash:n,txLink:l(n)});const h=await eh({client:e,chainId:o.id,txHash:n,onReplaced(A){const w=A.transaction.hash;u.updateProcess(s,r,"PENDING",{txHash:w,txLink:l(w)})}}),m=(h==null?void 0:h.transactionHash)||n;u.updateProcess(s,r,"DONE",{txHash:m,txLink:l(m)})};async function PP({client:e,chainId:n}){var s,o,u,c,l;const r=e??await((o=(s=be.getProvider($t.EVM))==null?void 0:s.getWalletClient)==null?void 0:o.call(s));if(!r)throw new Error("WalletClient is not provided.");try{const h=await Promise.race([ae(r,bv,"getCapabilities")({chainId:n}),Gr(2e3)]);return((u=h==null?void 0:h.atomicBatch)==null?void 0:u.supported)||((c=h==null?void 0:h.atomic)==null?void 0:c.status)==="supported"||((l=h==null?void 0:h.atomic)==null?void 0:l.status)==="ready"||!1}catch{return!1}}const TP=(e,n,r,s,o)=>{const{v:u,r:c,s:l}=ce.parseSignature(s);return ce.encodeFunctionData({abi:iu,functionName:"callDiamondWithEIP2612Signature",args:[e,n,r,Number(u),c,l,o]})},IP=(e,n,r,s,o,u,c,l)=>ce.encodeFunctionData({abi:iu,functionName:"callDiamondWithPermit2",args:[o,[[e,n],r,s],u]}),BP=async(e,n,r,s)=>{const o=await or(e,{address:n.permit2Proxy,abi:iu,functionName:"nextNonce",args:[e.account.address]});return{permitted:{token:r,amount:s},spender:n.permit2Proxy,nonce:o,deadline:BigInt(Math.floor(Date.now()/1e3)+30*60)}},SP=process.env.NODE_ENV==="production",ia="Invariant failed";function Hr(e,n){if(e)return;if(SP)throw new Error(ia);const r=typeof n=="function"?n():n,s=r?`${ia}: ${r}`:ia;throw new Error(s)}const RP=ws,th=ws,nh=ws,DP="Permit2";function rh(e,n){return{name:DP,chainId:n,verifyingContract:e}}const bs=[{name:"token",type:"address"},{name:"amount",type:"uint256"}],CP={TokenPermissions:bs,PermitTransferFrom:[{name:"permitted",type:"TokenPermissions"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},_P={TokenPermissions:bs,PermitBatchTransferFrom:[{name:"permitted",type:"TokenPermissions[]"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]};function NP(e){return!Array.isArray(e.permitted)}function OP(e,n,r,s){Hr(nh>=e.deadline,"SIG_DEADLINE_OUT_OF_RANGE"),Hr(th>=e.nonce,"NONCE_OUT_OF_RANGE");const o=rh(n,r);ih(e.permitted);const u=s?{TokenPermissions:bs,...s.witnessType,PermitWitnessTransferFrom:[{name:"permitted",type:"TokenPermissions"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"},{name:"witness",type:s.witnessTypeName}]}:CP,c=s?Object.assign(e,{witness:s.witness}):e;return{domain:o,types:u,message:c}}function MP(e,n,r,s){Hr(nh>=e.deadline,"SIG_DEADLINE_OUT_OF_RANGE"),Hr(th>=e.nonce,"NONCE_OUT_OF_RANGE");const o=rh(n,r);e.permitted.forEach(ih);const u=s?{...s.witnessType,TokenPermissions:bs,PermitBatchWitnessTransferFrom:[{name:"permitted",type:"TokenPermissions[]"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"},{name:"witness",type:s.witnessTypeName}]}:_P,c=s?Object.assign(e,{witness:s.witness}):e;return{domain:o,types:u,message:c}}function UP(e,n,r,s){return NP(e)?OP(e,n,r,s):MP(e,n,r,s)}function ih(e){Hr(RP>=e.amount,"AMOUNT_OUT_OF_RANGE")}async function FP(e){const{client:n,chain:r,tokenAddress:s,amount:o,data:u,witness:c}=e,l=await BP(n,r,s,o),h=c?{witness:{diamondAddress:r.diamondAddress,diamondCalldataHash:ce.keccak256(u)},witnessTypeName:"LiFiCall",witnessType:{LiFiCall:[{name:"diamondAddress",type:"address"},{name:"diamondCalldataHash",type:"bytes32"}]}}:void 0,m=UP(l,r.permit2,r.id,h),A=c?"PermitWitnessTransferFrom":"PermitTransferFrom",w=await ae(n,ru,"signTypedData")({account:n.account,primaryType:A,domain:m.domain,types:m.types,message:m.message});return{...m,primaryType:A,signature:w}}const kP=async(e,n,r,s,o)=>{if(await ae(e,rs,"getChainId")(void 0)===r.action.fromChainId)return e;r.execution=n.initExecutionObject(r),n.updateExecution(r,"ACTION_REQUIRED");let c=n.findOrCreateProcess({step:r,type:"SWITCH_CHAIN",status:"ACTION_REQUIRED"});if(s)try{const l=await(o==null?void 0:o(r.action.fromChainId));let h;if(l&&(h=await ae(l,rs,"getChainId")(void 0)),h!==r.action.fromChainId)throw new Bv(oe.ChainSwitchError,"Chain switch required.");return c=n.updateProcess(r,c.type,"DONE"),n.updateExecution(r,"PENDING"),l}catch(l){throw n.updateProcess(r,c.type,"FAILED",{error:{message:l.message,code:oe.ChainSwitchError}}),n.updateExecution(r,"FAILED"),l}},LP=async(e,n)=>{const{receipts:r,status:s,statusCode:o}=await ae(e,vv,"waitForCallsStatus")({id:n,timeout:3e5});if(s==="success"||s==="CONFIRMED"){if(!(r!=null&&r.length)||!r.every(c=>c.transactionHash)||r.some(c=>c.status==="reverted"))throw new Ge(oe.TransactionFailed,"Transaction was reverted.");return r.at(-1)}throw o>=400&&o<500?new Ge(oe.TransactionCanceled,"Transaction was canceled."):new Ge(oe.TransactionFailed,"Transaction failed.")},GP=async(e,n)=>Jd(async()=>{var s;const r=await $v({taskId:e,fromChain:n.action.fromChainId,toChain:n.action.toChainId,...n.tool!=="custom"&&{bridge:n.tool}}).catch(o=>{process.env.NODE_ENV});switch(r==null?void 0:r.status){case"PENDING":return;case"DONE":{const o=(s=r==null?void 0:r.transactionStatus)==null?void 0:s.sending;return{status:"success",gasUsed:o==null?void 0:o.gasUsed,transactionHash:r==null?void 0:r.metadata.txHash}}case"FAILED":throw new Ge(oe.TransactionFailed,"Transaction was reverted.");default:throw new Ge(oe.TransactionNotFound,"Transaction not found.")}},5e3,3,(r,s)=>!(s instanceof Ge));class HP extends jv{constructor(r){super(r);re(this,"client");re(this,"checkClient",async(r,s)=>{var c,l,h;const o=await kP(this.client,this.statusManager,r,this.allowUserInteraction,(c=this.executionOptions)==null?void 0:c.switchChainHook);o&&(this.client=o);let u=(l=this.client.account)==null?void 0:l.address;if(!u){const m=await ae(this.client,wv,"getAddresses")(void 0);u=m==null?void 0:m[0]}if((u==null?void 0:u.toLowerCase())!==((h=r.action.fromAddress)==null?void 0:h.toLowerCase())){let m=s;m||(m=this.statusManager.findOrCreateProcess({step:r,type:"TRANSACTION"}));const A="The wallet address that requested the quote does not match the wallet address attempting to sign the transaction.";throw this.statusManager.updateProcess(r,m.type,"FAILED",{error:{code:oe.WalletChangedDuringExecution,message:A}}),this.statusManager.updateExecution(r,"FAILED"),await Ra(new Ge(oe.WalletChangedDuringExecution,A),r,s)}return o});re(this,"waitForTransaction",async({step:r,process:s,fromChain:o,toChain:u,txType:c,txHash:l,isBridgeExecution:h})=>{let m;switch(c){case"batched":m=await LP(this.client,l);break;case"relayed":m=await GP(l,r);break;default:m=await eh({client:this.client,chainId:o.id,txHash:l,onReplaced:A=>{this.statusManager.updateProcess(r,s.type,"PENDING",{txHash:A.transaction.hash,txLink:`${o.metamask.blockExplorerUrls[0]}tx/${A.transaction.hash}`})}})}m!=null&&m.transactionHash&&m.transactionHash!==l&&(s=this.statusManager.updateProcess(r,s.type,"PENDING",{txHash:m.transactionHash,txLink:`${o.metamask.blockExplorerUrls[0]}tx/${m.transactionHash}`})),h&&(s=this.statusManager.updateProcess(r,s.type,"DONE")),await Al(r,s,o,u,this.statusManager)});re(this,"executeStep",async r=>{var M,G,ee,H;r.execution=this.statusManager.initExecutionObject(r);const s=(M=r.execution)==null?void 0:M.process.find(Q=>Q.type==="RECEIVING_CHAIN");if((s==null?void 0:s.substatus)!=="WAIT_DESTINATION_TRANSACTION"&&!await this.checkClient(r))return r;const o=await be.getChainById(r.action.fromChainId),u=await be.getChainById(r.action.toChainId),c=[],l=await PP({client:this.client,chainId:o.id}),h=o.id!==u.id,m=h?"CROSS_CHAIN":"SWAP",A=r.execution.process.find(Q=>Q.type===m),w=o.nativeToken.address===r.action.fromToken.address,x=Xd(r),T=((G=this.executionOptions)==null?void 0:G.disableMessageSigning)||r.type!=="lifi",I=!!o.permit2&&!!o.permit2Proxy&&!l&&!w&&!T&&!!r.estimate.approvalAddress,C=!(A!=null&&A.txHash)&&!w&&!!r.estimate.approvalAddress;let N;if(C){const Q=await vP({client:this.client,chain:o,step:r,statusManager:this.statusManager,executionOptions:this.executionOptions,allowUserInteraction:this.allowUserInteraction,batchingSupported:l,permit2Supported:I,disableMessageSigning:T});if(Q.status==="BATCH_APPROVAL"&&l&&c.push(Q.data),Q.status==="NATIVE_PERMIT"&&(N=Q.data),Q.status==="ACTION_REQUIRED"&&!this.allowUserInteraction)return r}let S=this.statusManager.findProcess(r,m);if((S==null?void 0:S.status)==="DONE")return await Al(r,S,o,u,this.statusManager),r;try{if(S!=null&&S.txHash){if(!await this.checkClient(r,S))return r;const fe=S.txHash,Ae=S.txType;return await this.waitForTransaction({step:r,process:S,fromChain:o,toChain:u,txType:Ae,txHash:fe,isBridgeExecution:h}),r}const Q=!l&&!N&&I;if(S=this.statusManager.findOrCreateProcess({step:r,type:Q?"PERMIT":m,status:"STARTED",chainId:o.id}),await qd(this.client.account.address,r),!r.transactionRequest){const{execution:Y,...fe}=r;let Ae;x?Ae={...await zv({fromChain:fe.action.fromChainId,fromToken:fe.action.fromToken.address,fromAddress:fe.action.fromAddress,fromAmount:fe.action.fromAmount,toChain:fe.action.toChainId,toToken:fe.action.toToken.address,slippage:fe.action.slippage,toAddress:fe.action.toAddress,allowBridges:[fe.tool]}),id:fe.id}:Ae=await Hv(fe);const Te=await rP(this.statusManager,r,Ae,this.allowUserInteraction,this.executionOptions);Object.assign(r,{...Te,execution:r.execution})}if(!r.transactionRequest)throw new Ge(oe.TransactionUnprepared,"Unable to prepare transaction.");let F={to:r.transactionRequest.to,from:r.transactionRequest.from,data:r.transactionRequest.data,value:r.transactionRequest.value?BigInt(r.transactionRequest.value):void 0,gas:r.transactionRequest.gasLimit?BigInt(r.transactionRequest.gasLimit):void 0,maxPriorityFeePerGas:((ee=this.client.account)==null?void 0:ee.type)==="local"?await jd(this.client):r.transactionRequest.maxPriorityFeePerGas?BigInt(r.transactionRequest.maxPriorityFeePerGas):void 0};if((H=this.executionOptions)!=null&&H.updateTransactionRequestHook){const Y=await this.executionOptions.updateTransactionRequestHook({requestType:"transaction",...F});F={...F,...Y}}if(!await this.checkClient(r,S)||(S=this.statusManager.updateProcess(r,S.type,"ACTION_REQUIRED"),!this.allowUserInteraction))return r;let K,ge="standard";if(l){const Y={chainId:o.id,data:F.data,to:F.to,value:F.value};c.push(Y);const{id:fe}=await ae(this.client,xv,"sendCalls")({account:this.client.account,calls:c});K=fe,ge="batched"}else if(x){const Y=r.typedData.find(xe=>xe.primaryType==="PermitWitnessTransferFrom"||xe.primaryType==="Order");if(!Y)throw new Ge(oe.TransactionUnprepared,"Unable to prepare transaction. Typed data for transfer is not found.");const fe=await ae(this.client,ru,"signTypedData")({account:this.client.account,primaryType:Y.primaryType,domain:Y.domain,types:Y.types,message:Y.message});this.statusManager.updateProcess(r,S.type,"DONE"),S=this.statusManager.findOrCreateProcess({step:r,type:m,status:"PENDING",chainId:o.id});const Ae=[{...Y,signature:fe}];N&&Ae.unshift(N);const{execution:Te,...$e}=r;K=(await Wv({...$e,typedData:Ae})).taskId,ge="relayed"}else{if(N)F.data=TP(r.action.fromToken.address,BigInt(r.action.fromAmount),N.message.deadline,N.signature,F.data);else if(I){const Y=await FP({client:this.client,chain:o,tokenAddress:r.action.fromToken.address,amount:BigInt(r.action.fromAmount),data:F.data});this.statusManager.updateProcess(r,S.type,"DONE"),S=this.statusManager.findOrCreateProcess({step:r,type:m,status:"PENDING",chainId:o.id}),F.data=IP(r.action.fromToken.address,BigInt(r.action.fromAmount),Y.message.nonce,Y.message.deadline,F.data,Y.signature)}if(N||I){F.to=o.permit2Proxy;try{const Y=await fd(this.client,{account:this.client.account,to:F.to,data:F.data,value:F.value});F.gas=F.gas&&F.gas>Y?F.gas:Y}catch{}finally{this.statusManager.updateProcess(r,S.type,"DONE")}}S=this.statusManager.updateProcess(r,S.type,"ACTION_REQUIRED"),K=await ae(this.client,yd,"sendTransaction")({to:F.to,account:this.client.account,data:F.data,value:F.value,gas:F.gas,gasPrice:F.gasPrice,maxFeePerGas:F.maxFeePerGas,maxPriorityFeePerGas:F.maxPriorityFeePerGas,chain:pP(o)})}return S=this.statusManager.updateProcess(r,S.type,"PENDING",{txHash:K,txType:ge,txLink:ge==="standard"?`${o.metamask.blockExplorerUrls[0]}tx/${K}`:void 0}),await this.waitForTransaction({step:r,process:S,fromChain:o,toChain:u,txHash:K,txType:ge,isBridgeExecution:h}),r}catch(Q){const F=await Ra(Q,r,S);throw S=this.statusManager.updateProcess(r,(S==null?void 0:S.type)||m,"FAILED",{error:{message:F.cause.message,code:F.code}}),this.statusManager.updateExecution(r,"FAILED"),F}});this.client=r.client}}var QP="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";const El=new Map([[8217,"apostrophe"],[8260,"fraction slash"],[12539,"middle dot"]]),vl=4;function zP(e){let n=0;function r(){return e[n++]<<8|e[n++]}let s=r(),o=1,u=[0,1];for(let H=1;H<s;H++)u.push(o+=r());let c=r(),l=n;n+=c;let h=0,m=0;function A(){return h==0&&(m=m<<8|e[n++],h=8),m>>--h&1}const w=31,x=2**w,T=x>>>1,I=T>>1,C=x-1;let N=0;for(let H=0;H<w;H++)N=N<<1|A();let S=[],M=0,G=x;for(;;){let H=Math.floor(((N-M+1)*o-1)/G),Q=0,F=s;for(;F-Q>1;){let ge=Q+F>>>1;H<u[ge]?F=ge:Q=ge}if(Q==0)break;S.push(Q);let se=M+Math.floor(G*u[Q]/o),K=M+Math.floor(G*u[Q+1]/o)-1;for(;((se^K)&T)==0;)N=N<<1&C|A(),se=se<<1&C,K=K<<1&C|1;for(;se&~K&I;)N=N&T|N<<1&C>>>1|A(),se=se<<1^T,K=(K^T)<<1|T|1;M=se,G=1+K-se}let ee=s-4;return S.map(H=>{switch(H-ee){case 3:return ee+65792+(e[l++]<<16|e[l++]<<8|e[l++]);case 2:return ee+256+(e[l++]<<8|e[l++]);case 1:return ee+e[l++];default:return H-1}})}function WP(e){let n=0;return()=>e[n++]}function sh(e){return WP(zP($P(e)))}function $P(e){let n=[];[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"].forEach((o,u)=>n[o.charCodeAt(0)]=u);let r=e.length,s=new Uint8Array(6*r>>3);for(let o=0,u=0,c=0,l=0;o<r;o++)l=l<<6|n[e.charCodeAt(o)],c+=6,c>=8&&(s[u++]=l>>(c-=8));return s}function VP(e){return e&1?~e>>1:e>>1}function qP(e,n){let r=Array(e);for(let s=0,o=0;s<e;s++)r[s]=o+=VP(n());return r}function Qr(e,n=0){let r=[];for(;;){let s=e(),o=e();if(!o)break;n+=s;for(let u=0;u<o;u++)r.push(n+u);n+=o+1}return r}function oh(e){return zr(()=>{let n=Qr(e);if(n.length)return n})}function ah(e){let n=[];for(;;){let r=e();if(r==0)break;n.push(JP(r,e))}for(;;){let r=e()-1;if(r<0)break;n.push(KP(r,e))}return n.flat()}function zr(e){let n=[];for(;;){let r=e(n.length);if(!r)break;n.push(r)}return n}function uh(e,n,r){let s=Array(e).fill().map(()=>[]);for(let o=0;o<n;o++)qP(e,r).forEach((u,c)=>s[c].push(u));return s}function JP(e,n){let r=1+n(),s=n(),o=zr(n);return uh(o.length,1+e,n).flatMap((c,l)=>{let[h,...m]=c;return Array(o[l]).fill().map((A,w)=>{let x=w*s;return[h+w*r,m.map(T=>T+x)]})})}function KP(e,n){let r=1+n();return uh(r,1+e,n).map(o=>[o[0],o.slice(1)])}function YP(e){let n=[],r=Qr(e);return o(s([]),[]),n;function s(u){let c=e(),l=zr(()=>{let h=Qr(e).map(m=>r[m]);if(h.length)return s(h)});return{S:c,B:l,Q:u}}function o({S:u,B:c},l,h){if(!(u&4&&h===l[l.length-1])){u&2&&(h=l[l.length-1]),u&1&&n.push(l);for(let m of c)for(let A of m.Q)o(m,[...l,A],h)}}}function jP(e){return e.toString(16).toUpperCase().padStart(2,"0")}function ch(e){return`{${jP(e)}}`}function ZP(e){let n=[];for(let r=0,s=e.length;r<s;){let o=e.codePointAt(r);r+=o<65536?1:2,n.push(o)}return n}function nr(e){let r=e.length;if(r<4096)return String.fromCodePoint(...e);let s=[];for(let o=0;o<r;)s.push(String.fromCodePoint(...e.slice(o,o+=4096)));return s.join("")}function XP(e,n){let r=e.length,s=r-n.length;for(let o=0;s==0&&o<r;o++)s=e[o]-n[o];return s}var eT="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";const Wr=44032,ss=4352,os=4449,as=4519,fh=19,lh=21,rr=28,us=lh*rr,tT=fh*us,nT=Wr+tT,rT=ss+fh,iT=os+lh,sT=as+rr;function Nr(e){return e>>24&255}function dh(e){return e&16777215}let Da,Pl,Ca,Zi;function oT(){let e=sh(eT);Da=new Map(oh(e).flatMap((n,r)=>n.map(s=>[s,r+1<<24]))),Pl=new Set(Qr(e)),Ca=new Map,Zi=new Map;for(let[n,r]of ah(e)){if(!Pl.has(n)&&r.length==2){let[s,o]=r,u=Zi.get(s);u||(u=new Map,Zi.set(s,u)),u.set(o,n)}Ca.set(n,r.reverse())}}function hh(e){return e>=Wr&&e<nT}function aT(e,n){if(e>=ss&&e<rT&&n>=os&&n<iT)return Wr+(e-ss)*us+(n-os)*rr;if(hh(e)&&n>as&&n<sT&&(e-Wr)%rr==0)return e+(n-as);{let r=Zi.get(e);return r&&(r=r.get(n),r)?r:-1}}function ph(e){Da||oT();let n=[],r=[],s=!1;function o(u){let c=Da.get(u);c&&(s=!0,u|=c),n.push(u)}for(let u of e)for(;;){if(u<128)n.push(u);else if(hh(u)){let c=u-Wr,l=c/us|0,h=c%us/rr|0,m=c%rr;o(ss+l),o(os+h),m>0&&o(as+m)}else{let c=Ca.get(u);c?r.push(...c):o(u)}if(!r.length)break;u=r.pop()}if(s&&n.length>1){let u=Nr(n[0]);for(let c=1;c<n.length;c++){let l=Nr(n[c]);if(l==0||u<=l){u=l;continue}let h=c-1;for(;;){let m=n[h+1];if(n[h+1]=n[h],n[h]=m,!h||(u=Nr(n[--h]),u<=l))break}u=Nr(n[c])}}return n}function uT(e){let n=[],r=[],s=-1,o=0;for(let u of e){let c=Nr(u),l=dh(u);if(s==-1)c==0?s=l:n.push(l);else if(o>0&&o>=c)c==0?(n.push(s,...r),r.length=0,s=l):r.push(l),o=c;else{let h=aT(s,l);h>=0?s=h:o==0&&c==0?(n.push(s),s=l):(r.push(l),o=c)}}return s>=0&&n.push(s,...r),n}function gh(e){return ph(e).map(dh)}function cT(e){return uT(ph(e))}const Tl=45,mh=".",Ah=65039,yh=1,cs=e=>Array.from(e);function $r(e,n){return e.P.has(n)||e.Q.has(n)}class fT extends Array{get is_emoji(){return!0}}let _a,wh,In,Na,bh,jn,sa,qn,Tn,Il,Oa;function su(){if(_a)return;let e=sh(QP);const n=()=>Qr(e),r=()=>new Set(n()),s=(A,w)=>w.forEach(x=>A.add(x));_a=new Map(ah(e)),wh=r(),In=n(),Na=new Set(n().map(A=>In[A])),In=new Set(In),bh=r(),r();let o=oh(e),u=e();const c=()=>{let A=new Set;return n().forEach(w=>s(A,o[w])),s(A,n()),A};jn=zr(A=>{let w=zr(e).map(x=>x+96);if(w.length){let x=A>=u;w[0]-=32,w=nr(w),x&&(w=`Restricted[${w}]`);let T=c(),I=c(),C=!e();return{N:w,P:T,Q:I,M:C,R:x}}}),sa=r(),qn=new Map;let l=n().concat(cs(sa)).sort((A,w)=>A-w);l.forEach((A,w)=>{let x=e(),T=l[w]=x?l[w-x]:{V:[],M:new Map};T.V.push(A),sa.has(A)||qn.set(A,T)});for(let{V:A,M:w}of new Set(qn.values())){let x=[];for(let I of A){let C=jn.filter(S=>$r(S,I)),N=x.find(({G:S})=>C.some(M=>S.has(M)));N||(N={G:new Set,V:[]},x.push(N)),N.V.push(I),s(N.G,C)}let T=x.flatMap(I=>cs(I.G));for(let{G:I,V:C}of x){let N=new Set(T.filter(S=>!I.has(S)));for(let S of C)w.set(S,N)}}Tn=new Set;let h=new Set;const m=A=>Tn.has(A)?h.add(A):Tn.add(A);for(let A of jn){for(let w of A.P)m(w);for(let w of A.Q)m(w)}for(let A of Tn)!qn.has(A)&&!h.has(A)&&qn.set(A,yh);s(Tn,gh(Tn)),Il=YP(e).map(A=>fT.from(A)).sort(XP),Oa=new Map;for(let A of Il){let w=[Oa];for(let x of A){let T=w.map(I=>{let C=I.get(x);return C||(C=new Map,I.set(x,C)),C});x===Ah?w.push(...T):w=T}for(let x of w)x.V=A}}function ou(e){return(xh(e)?"":`${au(xs([e]))} `)+ch(e)}function au(e){return`"${e}"`}function lT(e){if(e.length>=4&&e[2]==Tl&&e[3]==Tl)throw new Error(`invalid label extension: "${nr(e.slice(0,4))}"`)}function dT(e){for(let r=e.lastIndexOf(95);r>0;)if(e[--r]!==95)throw new Error("underscore allowed only at start")}function hT(e){let n=e[0],r=El.get(n);if(r)throw Mr(`leading ${r}`);let s=e.length,o=-1;for(let u=1;u<s;u++){n=e[u];let c=El.get(n);if(c){if(o==u)throw Mr(`${r} + ${c}`);o=u+1,r=c}}if(o==s)throw Mr(`trailing ${r}`)}function xs(e,n=1/0,r=ch){let s=[];pT(e[0])&&s.push("◌"),e.length>n&&(n>>=1,e=[...e.slice(0,n),8230,...e.slice(-n)]);let o=0,u=e.length;for(let c=0;c<u;c++){let l=e[c];xh(l)&&(s.push(nr(e.slice(o,c))),s.push(r(l)),o=c+1)}return s.push(nr(e.slice(o,u))),s.join("")}function pT(e,n){return su(),In.has(e)}function xh(e){return su(),bh.has(e)}function gT(e){return wT(mT(e,cT,ET))}function mT(e,n,r){if(!e)return[];su();let s=0;return e.split(mh).map(o=>{let u=ZP(o),c={input:u,offset:s};s+=u.length+1;try{let l=c.tokens=xT(u,n,r),h=l.length,m;if(!h)throw new Error("empty label");let A=c.output=l.flat();if(dT(A),!(c.emoji=h>1||l[0].is_emoji)&&A.every(x=>x<128))lT(A),m="ASCII";else{let x=l.flatMap(T=>T.is_emoji?[]:T);if(!x.length)m="Emoji";else{if(In.has(A[0]))throw Mr("leading combining mark");for(let C=1;C<h;C++){let N=l[C];if(!N.is_emoji&&In.has(N[0]))throw Mr(`emoji + combining mark: "${nr(l[C-1])} + ${xs([N[0]])}"`)}hT(A);let T=cs(new Set(x)),[I]=yT(T);bT(I,x),AT(I,T),m=I.N}}c.type=m}catch(l){c.error=l}return c})}function AT(e,n){let r,s=[];for(let o of n){let u=qn.get(o);if(u===yh)return;if(u){let c=u.M.get(o);if(r=r?r.filter(l=>c.has(l)):cs(c),!r.length)return}else s.push(o)}if(r){for(let o of r)if(s.every(u=>$r(o,u)))throw new Error(`whole-script confusable: ${e.N}/${o.N}`)}}function yT(e){let n=jn;for(let r of e){let s=n.filter(o=>$r(o,r));if(!s.length)throw jn.some(o=>$r(o,r))?vh(n[0],r):Eh(r);if(n=s,s.length==1)break}return n}function wT(e){return e.map(({input:n,error:r,output:s})=>{if(r){let o=r.message;throw new Error(e.length==1?o:`Invalid label ${au(xs(n,63))}: ${o}`)}return nr(s)}).join(mh)}function Eh(e){return new Error(`disallowed character: ${ou(e)}`)}function vh(e,n){let r=ou(n),s=jn.find(o=>o.P.has(n));return s&&(r=`${s.N} ${r}`),new Error(`illegal mixture: ${e.N} + ${r}`)}function Mr(e){return new Error(`illegal placement: ${e}`)}function bT(e,n){for(let r of n)if(!$r(e,r))throw vh(e,r);if(e.M){let r=gh(n);for(let s=1,o=r.length;s<o;s++)if(Na.has(r[s])){let u=s+1;for(let c;u<o&&Na.has(c=r[u]);u++)for(let l=s;l<u;l++)if(r[l]==c)throw new Error(`duplicate non-spacing marks: ${ou(c)}`);if(u-s>vl)throw new Error(`excessive non-spacing marks: ${au(xs(r.slice(s-1,u)))} (${u-s}/${vl})`);s=u}}}function xT(e,n,r){let s=[],o=[];for(e=e.slice().reverse();e.length;){let u=vT(e);if(u)o.length&&(s.push(n(o)),o=[]),s.push(r(u));else{let c=e.pop();if(Tn.has(c))o.push(c);else{let l=_a.get(c);if(l)o.push(...l);else if(!wh.has(c))throw Eh(c)}}}return o.length&&s.push(n(o)),s}function ET(e){return e.filter(n=>n!=Ah)}function vT(e,n){let r=Oa,s,o=e.length;for(;o&&(r=r.get(e[--o]),!!r);){let{V:u}=r;u&&(s=u,e.length=o)}return s}var ji=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function PT(e){return gT(e)}function TT(e){return PT(e)}const IT=async e=>{try{const n=await Xr(Ur.ETH);return await ev(n,{name:TT(e)})}catch{return}},BT=async(e,n)=>{if(n.length===0)return[];const{chainId:r}=n[0];for(const o of n)o.chainId;const s=await Zd(r);return s&&n.length>1?ST(r,n,e,s):RT(r,n,e)},ST=async(e,n,r,s)=>{const o=await Xr(e),u=n.map(h=>Kd(h.address)?{address:s,abi:fP,functionName:"getEthBalance",args:[r]}:{address:h.address,abi:Yd,functionName:"balanceOf",args:[r]}),c=await nu(o),l=await zd(o,{contracts:u,multicallAddress:s,blockNumber:c});return l.length?n.map((h,m)=>({...h,amount:l[m].result,blockNumber:c})):[]},RT=async(e,n,r)=>{const s=await Xr(e),o=await nu(s),u=n.map(h=>Kd(h.address)?cd(s,{address:r}):or(s,{address:h.address,abi:Yd,functionName:"balanceOf",args:[r]})),c=await Promise.allSettled(u);return n.map((h,m)=>{const A=c[m];return A.status==="rejected"?{...h,blockNumber:o}:{...h,amount:A.value,blockNumber:o}})};function DT(e){const n=e??{};return{get type(){return $t.EVM},get options(){return n},isAddress:ce.isAddress,resolveAddress:IT,getBalance:BT,getWalletClient:n.getWalletClient,async getStepExecutor(r){var u;if(!n.getWalletClient)throw new Error("Client is not provided.");const s=await n.getWalletClient();return new HP({client:s,routeId:r.routeId,executionOptions:{...r.executionOptions,switchChainHook:n.switchChain??((u=r.executionOptions)==null?void 0:u.switchChainHook)}})},setOptions(r){Object.assign(n,r)}}}const CT=async e=>{for(let n=0;n<e.steps.length;n++){const r=e.steps[n];if(r.execution){const s=r.execution.process.findLastIndex(o=>!!o.txHash&&o.status!=="FAILED");s>=0?r.execution.process=r.execution.process.slice(0,s+1):r.execution.process=[]}r.transactionRequest=void 0}},Ph=async(e,n)=>{var o;const r=structuredClone(e);let s=(o=Bt.get(r.id))==null?void 0:o.promise;return s||(Bt.create({route:r,executionOptions:n}),s=NT(r),Bt.update({route:r,promise:s}),s)},_T=async(e,n)=>{const r=Bt.get(e.id);if(r&&!r.executors.some(o=>!o.allowExecution)){if(uu(e,{executeInBackground:n==null?void 0:n.executeInBackground}),!r.promise)throw new Error("Route execution promise not found.");return r.promise}return await CT(e),Ph(e,n)},NT=async e=>{var n,r,s,o;for(let u=0;u<e.steps.length;u++){const c=Bt.get(e.id);if(!c)break;const l=e.steps[u],h=e.steps[u-1];if(((n=l.execution)==null?void 0:n.status)!=="DONE"){(r=h==null?void 0:h.execution)!=null&&r.toAmount&&(l.action.fromAmount=h.execution.toAmount,(s=l.includedSteps)!=null&&s.length&&(l.includedSteps[0].action.fromAmount=h.execution.toAmount));try{const m=l.action.fromAddress;if(!m)throw new Error("Action fromAddress is not specified.");const A=be.get().providers.find(T=>T.isAddress(m));if(!A)throw new Error("SDK Execution Provider not found.");const w=await A.getStepExecutor({routeId:e.id,executionOptions:c.executionOptions});if(c.executors.push(w),c.executionOptions&&uu(e,c.executionOptions),((o=(await w.executeStep(l)).execution)==null?void 0:o.status)!=="DONE"&&Ma(e),!w.allowExecution)return e}catch(m){throw Ma(e),m}}}return Bt.delete(e.id),e},uu=(e,n)=>{const r=Bt.get(e.id);if(r){if("executeInBackground"in n)for(const s of r.executors)s.setInteraction({allowInteraction:!(n!=null&&n.executeInBackground),allowUpdates:!0});r.executionOptions={...r.executionOptions,...n}}},Ma=e=>{const n=Bt.get(e.id);if(!n)return e;for(const r of n.executors)r.setInteraction({allowInteraction:!1,allowUpdates:!1,allowExecution:!1});return Bt.delete(e.id),n.route},OT=async(e,n)=>{try{(await(await fetch(`https://registry.npmjs.org/${e??$d}/latest`)).json()).version>(n??Lr)}catch{}};function MT(e){if(!e.integrator)throw new Error("Integrator not found. Please see documentation https://docs.li.fi/integrate-li.fi-js-sdk/set-up-the-sdk");const n=be.set(e);return!e.disableVersionCheck&&process.env.NODE_ENV==="development"&&OT($d,Lr),n}async function UT(){be.loading=Vd({chainTypes:[$t.EVM,$t.SVM,$t.UTXO,$t.MVM]}).then(e=>be.setChains(e)).catch(),await be.loading}function FT(e){const n=MT(e);return n.preloadChains&&UT(),n}const kT=e=>{var r;if(!e.estimate.fromAmountUSD)throw new Dt(new Kt("Missing 'fromAmountUSD' in step estimate."));if(!e.estimate.toAmountUSD)throw new Dt(new Kt("Missing 'toAmountUSD' in step estimate."));return{id:e.id,fromChainId:e.action.fromToken.chainId,fromToken:e.action.fromToken,fromAmount:e.action.fromAmount,fromAmountUSD:e.estimate.fromAmountUSD,fromAddress:e.action.fromAddress,toChainId:e.action.toToken.chainId,toToken:e.action.toToken,toAmount:e.estimate.toAmount,toAmountMin:e.estimate.toAmountMin,toAmountUSD:e.estimate.toAmountUSD,toAddress:e.action.toAddress||e.action.fromAddress,gasCostUSD:(r=e.estimate.gasCosts)==null?void 0:r[0].amountUSD,steps:[e],insurance:{state:"NOT_INSURABLE",feeAmountUsd:"0"}}};function LT(e){if(!e.integrator)throw new Error("Integrator name is required");return ln.set(e)}const ln=(()=>{const e={integrator:"zksync easy-onramp",apiUrl:"https://easy-onramp-api.zksync.dev/api",services:[],provider:null,dev:!1};return{get(){return e},set(n){const{...r}=n;return Object.assign(e,r),n.provider&&FT({integrator:"ZKsync Easy OnRamp",providers:[n.provider]}),e}}})();async function GT(e){const n=ln.get().apiUrl,r=new URL(`${n}/quotes`),s=new URLSearchParams;s.append("to",e.toAddress),s.append("chainId",e.chainId.toString()),s.append("token",e.toToken),s.append("routeType","buy");const o=ln.get().services;return o.length>0&&s.append("services",o.join(",")),e.fiatCurrency&&s.append("fiatCurrency",e.fiatCurrency),e.fiatAmount&&s.append("fiatAmount",e.fiatAmount.toString()),ln.get().dev&&s.append("dev","true"),await fetch(`${r}?${s.toString()}`).then(c=>c.json()).then(c=>c).catch(c=>{throw c})}async function HT(){const e=ln.get().apiUrl,n=new URL(`${e}/config`);return await fetch(n).then(s=>s.json()).then(s=>s).catch(s=>{throw s})}var Or={exports:{}};/**
* @license
* Lodash <https://lodash.com/>
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
* Released under MIT license <https://lodash.com/license>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
*/var QT=Or.exports,Bl;function zT(){return Bl||(Bl=1,function(e,n){(function(){var r,s="4.17.21",o=200,u="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",c="Expected a function",l="Invalid `variable` option passed into `_.template`",h="__lodash_hash_undefined__",m=500,A="__lodash_placeholder__",w=1,x=2,T=4,I=1,C=2,N=1,S=2,M=4,G=8,ee=16,H=32,Q=64,F=128,se=256,K=512,ge=30,Y="...",fe=800,Ae=16,Te=1,$e=2,Ve=3,xe=1/0,ve=9007199254740991,Fe=17976931348623157e292,_t=NaN,ht=4294967295,ar=ht-1,Es=ht>>>1,ei=[["ary",F],["bind",N],["bindKey",S],["curry",G],["curryRight",ee],["flip",K],["partial",H],["partialRight",Q],["rearg",se]],He="[object Arguments]",ti="[object Array]",Bh="[object AsyncFunction]",ur="[object Boolean]",cr="[object Date]",Sh="[object DOMException]",ni="[object Error]",ri="[object Function]",fu="[object GeneratorFunction]",pt="[object Map]",fr="[object Number]",Rh="[object Null]",Nt="[object Object]",lu="[object Promise]",Dh="[object Proxy]",lr="[object RegExp]",gt="[object Set]",dr="[object String]",ii="[object Symbol]",Ch="[object Undefined]",hr="[object WeakMap]",_h="[object WeakSet]",pr="[object ArrayBuffer]",Cn="[object DataView]",vs="[object Float32Array]",Ps="[object Float64Array]",Ts="[object Int8Array]",Is="[object Int16Array]",Bs="[object Int32Array]",Ss="[object Uint8Array]",Rs="[object Uint8ClampedArray]",Ds="[object Uint16Array]",Cs="[object Uint32Array]",Nh=/\b__p \+= '';/g,Oh=/\b(__p \+=) '' \+/g,Mh=/(__e\(.*?\)|\b__t\)) \+\n'';/g,du=/&(?:amp|lt|gt|quot|#39);/g,hu=/[&<>"']/g,Uh=RegExp(du.source),Fh=RegExp(hu.source),kh=/<%-([\s\S]+?)%>/g,Lh=/<%([\s\S]+?)%>/g,pu=/<%=([\s\S]+?)%>/g,Gh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Hh=/^\w*$/,Qh=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,_s=/[\\^$.*+?()[\]{}|]/g,zh=RegExp(_s.source),Ns=/^\s+/,Wh=/\s/,$h=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Vh=/\{\n\/\* \[wrapped with (.+)\] \*/,qh=/,? & /,Jh=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Kh=/[()=,{}\[\]\/\s]/,Yh=/\\(\\)?/g,jh=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,gu=/\w*$/,Zh=/^[-+]0x[0-9a-f]+$/i,Xh=/^0b[01]+$/i,ep=/^\[object .+?Constructor\]$/,tp=/^0o[0-7]+$/i,np=/^(?:0|[1-9]\d*)$/,rp=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,si=/($^)/,ip=/['\n\r\u2028\u2029\\]/g,oi="\\ud800-\\udfff",sp="\\u0300-\\u036f",op="\\ufe20-\\ufe2f",ap="\\u20d0-\\u20ff",mu=sp+op+ap,Au="\\u2700-\\u27bf",yu="a-z\\xdf-\\xf6\\xf8-\\xff",up="\\xac\\xb1\\xd7\\xf7",cp="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",fp="\\u2000-\\u206f",lp=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",wu="A-Z\\xc0-\\xd6\\xd8-\\xde",bu="\\ufe0e\\ufe0f",xu=up+cp+fp+lp,Os="['’]",dp="["+oi+"]",Eu="["+xu+"]",ai="["+mu+"]",vu="\\d+",hp="["+Au+"]",Pu="["+yu+"]",Tu="[^"+oi+xu+vu+Au+yu+wu+"]",Ms="\\ud83c[\\udffb-\\udfff]",pp="(?:"+ai+"|"+Ms+")",Iu="[^"+oi+"]",Us="(?:\\ud83c[\\udde6-\\uddff]){2}",Fs="[\\ud800-\\udbff][\\udc00-\\udfff]",_n="["+wu+"]",Bu="\\u200d",Su="(?:"+Pu+"|"+Tu+")",gp="(?:"+_n+"|"+Tu+")",Ru="(?:"+Os+"(?:d|ll|m|re|s|t|ve))?",Du="(?:"+Os+"(?:D|LL|M|RE|S|T|VE))?",Cu=pp+"?",_u="["+bu+"]?",mp="(?:"+Bu+"(?:"+[Iu,Us,Fs].join("|")+")"+_u+Cu+")*",Ap="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",yp="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Nu=_u+Cu+mp,wp="(?:"+[hp,Us,Fs].join("|")+")"+Nu,bp="(?:"+[Iu+ai+"?",ai,Us,Fs,dp].join("|")+")",xp=RegExp(Os,"g"),Ep=RegExp(ai,"g"),ks=RegExp(Ms+"(?="+Ms+")|"+bp+Nu,"g"),vp=RegExp([_n+"?"+Pu+"+"+Ru+"(?="+[Eu,_n,"$"].join("|")+")",gp+"+"+Du+"(?="+[Eu,_n+Su,"$"].join("|")+")",_n+"?"+Su+"+"+Ru,_n+"+"+Du,yp,Ap,vu,wp].join("|"),"g"),Pp=RegExp("["+Bu+oi+mu+bu+"]"),Tp=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ip=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Bp=-1,me={};me[vs]=me[Ps]=me[Ts]=me[Is]=me[Bs]=me[Ss]=me[Rs]=me[Ds]=me[Cs]=!0,me[He]=me[ti]=me[pr]=me[ur]=me[Cn]=me[cr]=me[ni]=me[ri]=me[pt]=me[fr]=me[Nt]=me[lr]=me[gt]=me[dr]=me[hr]=!1;var pe={};pe[He]=pe[ti]=pe[pr]=pe[Cn]=pe[ur]=pe[cr]=pe[vs]=pe[Ps]=pe[Ts]=pe[Is]=pe[Bs]=pe[pt]=pe[fr]=pe[Nt]=pe[lr]=pe[gt]=pe[dr]=pe[ii]=pe[Ss]=pe[Rs]=pe[Ds]=pe[Cs]=!0,pe[ni]=pe[ri]=pe[hr]=!1;var Sp={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Rp={"&":"&","<":"<",">":">",'"':""","'":"'"},Dp={"&":"&","<":"<",">":">",""":'"',"'":"'"},Cp={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},_p=parseFloat,Np=parseInt,Ou=typeof ji=="object"&&ji&&ji.Object===Object&&ji,Op=typeof self=="object"&&self&&self.Object===Object&&self,Ne=Ou||Op||Function("return this")(),Ls=n&&!n.nodeType&&n,mn=Ls&&!0&&e&&!e.nodeType&&e,Mu=mn&&mn.exports===Ls,Gs=Mu&&Ou.process,it=function(){try{var E=mn&&mn.require&&mn.require("util").types;return E||Gs&&Gs.binding&&Gs.binding("util")}catch{}}(),Uu=it&&it.isArrayBuffer,Fu=it&&it.isDate,ku=it&&it.isMap,Lu=it&&it.isRegExp,Gu=it&&it.isSet,Hu=it&&it.isTypedArray;function Ze(E,B,P){switch(P.length){case 0:return E.call(B);case 1:return E.call(B,P[0]);case 2:return E.call(B,P[0],P[1]);case 3:return E.call(B,P[0],P[1],P[2])}return E.apply(B,P)}function Mp(E,B,P,k){for(var V=-1,ue=E==null?0:E.length;++V<ue;){var Re=E[V];B(k,Re,P(Re),E)}return k}function st(E,B){for(var P=-1,k=E==null?0:E.length;++P<k&&B(E[P],P,E)!==!1;);return E}function Up(E,B){for(var P=E==null?0:E.length;P--&&B(E[P],P,E)!==!1;);return E}function Qu(E,B){for(var P=-1,k=E==null?0:E.length;++P<k;)if(!B(E[P],P,E))return!1;return!0}function Zt(E,B){for(var P=-1,k=E==null?0:E.length,V=0,ue=[];++P<k;){var Re=E[P];B(Re,P,E)&&(ue[V++]=Re)}return ue}function ui(E,B){var P=E==null?0:E.length;return!!P&&Nn(E,B,0)>-1}function Hs(E,B,P){for(var k=-1,V=E==null?0:E.length;++k<V;)if(P(B,E[k]))return!0;return!1}function ye(E,B){for(var P=-1,k=E==null?0:E.length,V=Array(k);++P<k;)V[P]=B(E[P],P,E);return V}function Xt(E,B){for(var P=-1,k=B.length,V=E.length;++P<k;)E[V+P]=B[P];return E}function Qs(E,B,P,k){var V=-1,ue=E==null?0:E.length;for(k&&ue&&(P=E[++V]);++V<ue;)P=B(P,E[V],V,E);return P}function Fp(E,B,P,k){var V=E==null?0:E.length;for(k&&V&&(P=E[--V]);V--;)P=B(P,E[V],V,E);return P}function zs(E,B){for(var P=-1,k=E==null?0:E.length;++P<k;)if(B(E[P],P,E))return!0;return!1}var kp=Ws("length");function Lp(E){return E.split("")}function Gp(E){return E.match(Jh)||[]}function zu(E,B,P){var k;return P(E,function(V,ue,Re){if(B(V,ue,Re))return k=ue,!1}),k}function ci(E,B,P,k){for(var V=E.length,ue=P+(k?1:-1);k?ue--:++ue<V;)if(B(E[ue],ue,E))return ue;return-1}function Nn(E,B,P){return B===B?Zp(E,B,P):ci(E,Wu,P)}function Hp(E,B,P,k){for(var V=P-1,ue=E.length;++V<ue;)if(k(E[V],B))return V;return-1}function Wu(E){return E!==E}function $u(E,B){var P=E==null?0:E.length;return P?Vs(E,B)/P:_t}function Ws(E){return function(B){return B==null?r:B[E]}}function $s(E){return function(B){return E==null?r:E[B]}}function Vu(E,B,P,k,V){return V(E,function(ue,Re,he){P=k?(k=!1,ue):B(P,ue,Re,he)}),P}function Qp(E,B){var P=E.length;for(E.sort(B);P--;)E[P]=E[P].value;return E}function Vs(E,B){for(var P,k=-1,V=E.length;++k<V;){var ue=B(E[k]);ue!==r&&(P=P===r?ue:P+ue)}return P}function qs(E,B){for(var P=-1,k=Array(E);++P<E;)k[P]=B(P);return k}function zp(E,B){return ye(B,function(P){return[P,E[P]]})}function qu(E){return E&&E.slice(0,ju(E)+1).replace(Ns,"")}function Xe(E){return function(B){return E(B)}}function Js(E,B){return ye(B,function(P){return E[P]})}function gr(E,B){return E.has(B)}function Ju(E,B){for(var P=-1,k=E.length;++P<k&&Nn(B,E[P],0)>-1;);return P}function Ku(E,B){for(var P=E.length;P--&&Nn(B,E[P],0)>-1;);return P}function Wp(E,B){for(var P=E.length,k=0;P--;)E[P]===B&&++k;return k}var $p=$s(Sp),Vp=$s(Rp);function qp(E){return"\\"+Cp[E]}function Jp(E,B){return E==null?r:E[B]}function On(E){return Pp.test(E)}function Kp(E){return Tp.test(E)}function Yp(E){for(var B,P=[];!(B=E.next()).done;)P.push(B.value);return P}function Ks(E){var B=-1,P=Array(E.size);return E.forEach(function(k,V){P[++B]=[V,k]}),P}function Yu(E,B){return function(P){return E(B(P))}}function en(E,B){for(var P=-1,k=E.length,V=0,ue=[];++P<k;){var Re=E[P];(Re===B||Re===A)&&(E[P]=A,ue[V++]=P)}return ue}function fi(E){var B=-1,P=Array(E.size);return E.forEach(function(k){P[++B]=k}),P}function jp(E){var B=-1,P=Array(E.size);return E.forEach(function(k){P[++B]=[k,k]}),P}function Zp(E,B,P){for(var k=P-1,V=E.length;++k<V;)if(E[k]===B)return k;return-1}function Xp(E,B,P){for(var k=P+1;k--;)if(E[k]===B)return k;return k}function Mn(E){return On(E)?tg(E):kp(E)}function mt(E){return On(E)?ng(E):Lp(E)}function ju(E){for(var B=E.length;B--&&Wh.test(E.charAt(B)););return B}var eg=$s(Dp);function tg(E){for(var B=ks.lastIndex=0;ks.test(E);)++B;return B}function ng(E){return E.match(ks)||[]}function rg(E){return E.match(vp)||[]}var ig=function E(B){B=B==null?Ne:Un.defaults(Ne.Object(),B,Un.pick(Ne,Ip));var P=B.Array,k=B.Date,V=B.Error,ue=B.Function,Re=B.Math,he=B.Object,Ys=B.RegExp,sg=B.String,ot=B.TypeError,li=P.prototype,og=ue.prototype,Fn=he.prototype,di=B["__core-js_shared__"],hi=og.toString,de=Fn.hasOwnProperty,ag=0,Zu=function(){var t=/[^.]+$/.exec(di&&di.keys&&di.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),pi=Fn.toString,ug=hi.call(he),cg=Ne._,fg=Ys("^"+hi.call(de).replace(_s,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),gi=Mu?B.Buffer:r,tn=B.Symbol,mi=B.Uint8Array,Xu=gi?gi.allocUnsafe:r,Ai=Yu(he.getPrototypeOf,he),ec=he.create,tc=Fn.propertyIsEnumerable,yi=li.splice,nc=tn?tn.isConcatSpreadable:r,mr=tn?tn.iterator:r,An=tn?tn.toStringTag:r,wi=function(){try{var t=En(he,"defineProperty");return t({},"",{}),t}catch{}}(),lg=B.clearTimeout!==Ne.clearTimeout&&B.clearTimeout,dg=k&&k.now!==Ne.Date.now&&k.now,hg=B.setTimeout!==Ne.setTimeout&&B.setTimeout,bi=Re.ceil,xi=Re.floor,js=he.getOwnPropertySymbols,pg=gi?gi.isBuffer:r,rc=B.isFinite,gg=li.join,mg=Yu(he.keys,he),De=Re.max,ke=Re.min,Ag=k.now,yg=B.parseInt,ic=Re.random,wg=li.reverse,Zs=En(B,"DataView"),Ar=En(B,"Map"),Xs=En(B,"Promise"),kn=En(B,"Set"),yr=En(B,"WeakMap"),wr=En(he,"create"),Ei=yr&&new yr,Ln={},bg=vn(Zs),xg=vn(Ar),Eg=vn(Xs),vg=vn(kn),Pg=vn(yr),vi=tn?tn.prototype:r,br=vi?vi.valueOf:r,sc=vi?vi.toString:r;function p(t){if(Pe(t)&&!q(t)&&!(t instanceof ne)){if(t instanceof at)return t;if(de.call(t,"__wrapped__"))return af(t)}return new at(t)}var Gn=function(){function t(){}return function(i){if(!Ee(i))return{};if(ec)return ec(i);t.prototype=i;var a=new t;return t.prototype=r,a}}();function Pi(){}function at(t,i){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!i,this.__index__=0,this.__values__=r}p.templateSettings={escape:kh,evaluate:Lh,interpolate:pu,variable:"",imports:{_:p}},p.prototype=Pi.prototype,p.prototype.constructor=p,at.prototype=Gn(Pi.prototype),at.prototype.constructor=at;function ne(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=ht,this.__views__=[]}function Tg(){var t=new ne(this.__wrapped__);return t.__actions__=qe(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=qe(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=qe(this.__views__),t}function Ig(){if(this.__filtered__){var t=new ne(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function Bg(){var t=this.__wrapped__.value(),i=this.__dir__,a=q(t),f=i<0,d=a?t.length:0,g=L0(0,d,this.__views__),y=g.start,b=g.end,v=b-y,R=f?b:y-1,D=this.__iteratees__,_=D.length,U=0,L=ke(v,this.__takeCount__);if(!a||!f&&d==v&&L==v)return Rc(t,this.__actions__);var W=[];e:for(;v--&&U<L;){R+=i;for(var j=-1,$=t[R];++j<_;){var te=D[j],ie=te.iteratee,nt=te.type,We=ie($);if(nt==$e)$=We;else if(!We){if(nt==Te)continue e;break e}}W[U++]=$}return W}ne.prototype=Gn(Pi.prototype),ne.prototype.constructor=ne;function yn(t){var i=-1,a=t==null?0:t.length;for(this.clear();++i<a;){var f=t[i];this.set(f[0],f[1])}}function Sg(){this.__data__=wr?wr(null):{},this.size=0}function Rg(t){var i=this.has(t)&&delete this.__data__[t];return this.size-=i?1:0,i}function Dg(t){var i=this.__data__;if(wr){var a=i[t];return a===h?r:a}return de.call(i,t)?i[t]:r}function Cg(t){var i=this.__data__;return wr?i[t]!==r:de.call(i,t)}function _g(t,i){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=wr&&i===r?h:i,this}yn.prototype.clear=Sg,yn.prototype.delete=Rg,yn.prototype.get=Dg,yn.prototype.has=Cg,yn.prototype.set=_g;function Ot(t){var i=-1,a=t==null?0:t.length;for(this.clear();++i<a;){var f=t[i];this.set(f[0],f[1])}}function Ng(){this.__data__=[],this.size=0}function Og(t){var i=this.__data__,a=Ti(i,t);if(a<0)return!1;var f=i.length-1;return a==f?i.pop():yi.call(i,a,1),--this.size,!0}function Mg(t){var i=this.__data__,a=Ti(i,t);return a<0?r:i[a][1]}function Ug(t){return Ti(this.__data__,t)>-1}function Fg(t,i){var a=this.__data__,f=Ti(a,t);return f<0?(++this.size,a.push([t,i])):a[f][1]=i,this}Ot.prototype.clear=Ng,Ot.prototype.delete=Og,Ot.prototype.get=Mg,Ot.prototype.has=Ug,Ot.prototype.set=Fg;function Mt(t){var i=-1,a=t==null?0:t.length;for(this.clear();++i<a;){var f=t[i];this.set(f[0],f[1])}}function kg(){this.size=0,this.__data__={hash:new yn,map:new(Ar||Ot),string:new yn}}function Lg(t){var i=Fi(this,t).delete(t);return this.size-=i?1:0,i}function Gg(t){return Fi(this,t).get(t)}function Hg(t){return Fi(this,t).has(t)}function Qg(t,i){var a=Fi(this,t),f=a.size;return a.set(t,i),this.size+=a.size==f?0:1,this}Mt.prototype.clear=kg,Mt.prototype.delete=Lg,Mt.prototype.get=Gg,Mt.prototype.has=Hg,Mt.prototype.set=Qg;function wn(t){var i=-1,a=t==null?0:t.length;for(this.__data__=new Mt;++i<a;)this.add(t[i])}function zg(t){return this.__data__.set(t,h),this}function Wg(t){return this.__data__.has(t)}wn.prototype.add=wn.prototype.push=zg,wn.prototype.has=Wg;function At(t){var i=this.__data__=new Ot(t);this.size=i.size}function $g(){this.__data__=new Ot,this.size=0}function Vg(t){var i=this.__data__,a=i.delete(t);return this.size=i.size,a}function qg(t){return this.__data__.get(t)}function Jg(t){return this.__data__.has(t)}function Kg(t,i){var a=this.__data__;if(a instanceof Ot){var f=a.__data__;if(!Ar||f.length<o-1)return f.push([t,i]),this.size=++a.size,this;a=this.__data__=new Mt(f)}return a.set(t,i),this.size=a.size,this}At.prototype.clear=$g,At.prototype.delete=Vg,At.prototype.get=qg,At.prototype.has=Jg,At.prototype.set=Kg;function oc(t,i){var a=q(t),f=!a&&Pn(t),d=!a&&!f&&an(t),g=!a&&!f&&!d&&Wn(t),y=a||f||d||g,b=y?qs(t.length,sg):[],v=b.length;for(var R in t)(i||de.call(t,R))&&!(y&&(R=="length"||d&&(R=="offset"||R=="parent")||g&&(R=="buffer"||R=="byteLength"||R=="byteOffset")||Lt(R,v)))&&b.push(R);return b}function ac(t){var i=t.length;return i?t[fo(0,i-1)]:r}function Yg(t,i){return ki(qe(t),bn(i,0,t.length))}function jg(t){return ki(qe(t))}function eo(t,i,a){(a!==r&&!yt(t[i],a)||a===r&&!(i in t))&&Ut(t,i,a)}function xr(t,i,a){var f=t[i];(!(de.call(t,i)&&yt(f,a))||a===r&&!(i in t))&&Ut(t,i,a)}function Ti(t,i){for(var a=t.length;a--;)if(yt(t[a][0],i))return a;return-1}function Zg(t,i,a,f){return nn(t,function(d,g,y){i(f,d,a(d),y)}),f}function uc(t,i){return t&&vt(i,_e(i),t)}function Xg(t,i){return t&&vt(i,Ke(i),t)}function Ut(t,i,a){i=="__proto__"&&wi?wi(t,i,{configurable:!0,enumerable:!0,value:a,writable:!0}):t[i]=a}function to(t,i){for(var a=-1,f=i.length,d=P(f),g=t==null;++a<f;)d[a]=g?r:Uo(t,i[a]);return d}function bn(t,i,a){return t===t&&(a!==r&&(t=t<=a?t:a),i!==r&&(t=t>=i?t:i)),t}function ut(t,i,a,f,d,g){var y,b=i&w,v=i&x,R=i&T;if(a&&(y=d?a(t,f,d,g):a(t)),y!==r)return y;if(!Ee(t))return t;var D=q(t);if(D){if(y=H0(t),!b)return qe(t,y)}else{var _=Le(t),U=_==ri||_==fu;if(an(t))return _c(t,b);if(_==Nt||_==He||U&&!d){if(y=v||U?{}:jc(t),!b)return v?D0(t,Xg(y,t)):R0(t,uc(y,t))}else{if(!pe[_])return d?t:{};y=Q0(t,_,b)}}g||(g=new At);var L=g.get(t);if(L)return L;g.set(t,y),Bf(t)?t.forEach(function($){y.add(ut($,i,a,$,t,g))}):Tf(t)&&t.forEach(function($,te){y.set(te,ut($,i,a,te,t,g))});var W=R?v?Eo:xo:v?Ke:_e,j=D?r:W(t);return st(j||t,function($,te){j&&(te=$,$=t[te]),xr(y,te,ut($,i,a,te,t,g))}),y}function e0(t){var i=_e(t);return function(a){return cc(a,t,i)}}function cc(t,i,a){var f=a.length;if(t==null)return!f;for(t=he(t);f--;){var d=a[f],g=i[d],y=t[d];if(y===r&&!(d in t)||!g(y))return!1}return!0}function fc(t,i,a){if(typeof t!="function")throw new ot(c);return Sr(function(){t.apply(r,a)},i)}function Er(t,i,a,f){var d=-1,g=ui,y=!0,b=t.length,v=[],R=i.length;if(!b)return v;a&&(i=ye(i,Xe(a))),f?(g=Hs,y=!1):i.length>=o&&(g=gr,y=!1,i=new wn(i));e:for(;++d<b;){var D=t[d],_=a==null?D:a(D);if(D=f||D!==0?D:0,y&&_===_){for(var U=R;U--;)if(i[U]===_)continue e;v.push(D)}else g(i,_,f)||v.push(D)}return v}var nn=Fc(Et),lc=Fc(ro,!0);function t0(t,i){var a=!0;return nn(t,function(f,d,g){return a=!!i(f,d,g),a}),a}function Ii(t,i,a){for(var f=-1,d=t.length;++f<d;){var g=t[f],y=i(g);if(y!=null&&(b===r?y===y&&!tt(y):a(y,b)))var b=y,v=g}return v}function n0(t,i,a,f){var d=t.length;for(a=J(a),a<0&&(a=-a>d?0:d+a),f=f===r||f>d?d:J(f),f<0&&(f+=d),f=a>f?0:Rf(f);a<f;)t[a++]=i;return t}function dc(t,i){var a=[];return nn(t,function(f,d,g){i(f,d,g)&&a.push(f)}),a}function Oe(t,i,a,f,d){var g=-1,y=t.length;for(a||(a=W0),d||(d=[]);++g<y;){var b=t[g];i>0&&a(b)?i>1?Oe(b,i-1,a,f,d):Xt(d,b):f||(d[d.length]=b)}return d}var no=kc(),hc=kc(!0);function Et(t,i){return t&&no(t,i,_e)}function ro(t,i){return t&&hc(t,i,_e)}function Bi(t,i){return Zt(i,function(a){return Gt(t[a])})}function xn(t,i){i=sn(i,t);for(var a=0,f=i.length;t!=null&&a<f;)t=t[Pt(i[a++])];return a&&a==f?t:r}function pc(t,i,a){var f=i(t);return q(t)?f:Xt(f,a(t))}function Qe(t){return t==null?t===r?Ch:Rh:An&&An in he(t)?k0(t):j0(t)}function io(t,i){return t>i}function r0(t,i){return t!=null&&de.call(t,i)}function i0(t,i){return t!=null&&i in he(t)}function s0(t,i,a){return t>=ke(i,a)&&t<De(i,a)}function so(t,i,a){for(var f=a?Hs:ui,d=t[0].length,g=t.length,y=g,b=P(g),v=1/0,R=[];y--;){var D=t[y];y&&i&&(D=ye(D,Xe(i))),v=ke(D.length,v),b[y]=!a&&(i||d>=120&&D.length>=120)?new wn(y&&D):r}D=t[0];var _=-1,U=b[0];e:for(;++_<d&&R.length<v;){var L=D[_],W=i?i(L):L;if(L=a||L!==0?L:0,!(U?gr(U,W):f(R,W,a))){for(y=g;--y;){var j=b[y];if(!(j?gr(j,W):f(t[y],W,a)))continue e}U&&U.push(W),R.push(L)}}return R}function o0(t,i,a,f){return Et(t,function(d,g,y){i(f,a(d),g,y)}),f}function vr(t,i,a){i=sn(i,t),t=tf(t,i);var f=t==null?t:t[Pt(ft(i))];return f==null?r:Ze(f,t,a)}function gc(t){return Pe(t)&&Qe(t)==He}function a0(t){return Pe(t)&&Qe(t)==pr}function u0(t){return Pe(t)&&Qe(t)==cr}function Pr(t,i,a,f,d){return t===i?!0:t==null||i==null||!Pe(t)&&!Pe(i)?t!==t&&i!==i:c0(t,i,a,f,Pr,d)}function c0(t,i,a,f,d,g){var y=q(t),b=q(i),v=y?ti:Le(t),R=b?ti:Le(i);v=v==He?Nt:v,R=R==He?Nt:R;var D=v==Nt,_=R==Nt,U=v==R;if(U&&an(t)){if(!an(i))return!1;y=!0,D=!1}if(U&&!D)return g||(g=new At),y||Wn(t)?Jc(t,i,a,f,d,g):U0(t,i,v,a,f,d,g);if(!(a&I)){var L=D&&de.call(t,"__wrapped__"),W=_&&de.call(i,"__wrapped__");if(L||W){var j=L?t.value():t,$=W?i.value():i;return g||(g=new At),d(j,$,a,f,g)}}return U?(g||(g=new At),F0(t,i,a,f,d,g)):!1}function f0(t){return Pe(t)&&Le(t)==pt}function oo(t,i,a,f){var d=a.length,g=d,y=!f;if(t==null)return!g;for(t=he(t);d--;){var b=a[d];if(y&&b[2]?b[1]!==t[b[0]]:!(b[0]in t))return!1}for(;++d<g;){b=a[d];var v=b[0],R=t[v],D=b[1];if(y&&b[2]){if(R===r&&!(v in t))return!1}else{var _=new At;if(f)var U=f(R,D,v,t,i,_);if(!(U===r?Pr(D,R,I|C,f,_):U))return!1}}return!0}function mc(t){if(!Ee(t)||V0(t))return!1;var i=Gt(t)?fg:ep;return i.test(vn(t))}function l0(t){return Pe(t)&&Qe(t)==lr}function d0(t){return Pe(t)&&Le(t)==gt}function h0(t){return Pe(t)&&Wi(t.length)&&!!me[Qe(t)]}function Ac(t){return typeof t=="function"?t:t==null?Ye:typeof t=="object"?q(t)?bc(t[0],t[1]):wc(t):Gf(t)}function ao(t){if(!Br(t))return mg(t);var i=[];for(var a in he(t))de.call(t,a)&&a!="constructor"&&i.push(a);return i}function p0(t){if(!Ee(t))return Y0(t);var i=Br(t),a=[];for(var f in t)f=="constructor"&&(i||!de.call(t,f))||a.push(f);return a}function uo(t,i){return t<i}function yc(t,i){var a=-1,f=Je(t)?P(t.length):[];return nn(t,function(d,g,y){f[++a]=i(d,g,y)}),f}function wc(t){var i=Po(t);return i.length==1&&i[0][2]?Xc(i[0][0],i[0][1]):function(a){return a===t||oo(a,t,i)}}function bc(t,i){return Io(t)&&Zc(i)?Xc(Pt(t),i):function(a){var f=Uo(a,t);return f===r&&f===i?Fo(a,t):Pr(i,f,I|C)}}function Si(t,i,a,f,d){t!==i&&no(i,function(g,y){if(d||(d=new At),Ee(g))g0(t,i,y,a,Si,f,d);else{var b=f?f(So(t,y),g,y+"",t,i,d):r;b===r&&(b=g),eo(t,y,b)}},Ke)}function g0(t,i,a,f,d,g,y){var b=So(t,a),v=So(i,a),R=y.get(v);if(R){eo(t,a,R);return}var D=g?g(b,v,a+"",t,i,y):r,_=D===r;if(_){var U=q(v),L=!U&&an(v),W=!U&&!L&&Wn(v);D=v,U||L||W?q(b)?D=b:Ie(b)?D=qe(b):L?(_=!1,D=_c(v,!0)):W?(_=!1,D=Nc(v,!0)):D=[]:Rr(v)||Pn(v)?(D=b,Pn(b)?D=Df(b):(!Ee(b)||Gt(b))&&(D=jc(v))):_=!1}_&&(y.set(v,D),d(D,v,f,g,y),y.delete(v)),eo(t,a,D)}function xc(t,i){var a=t.length;if(a)return i+=i<0?a:0,Lt(i,a)?t[i]:r}function Ec(t,i,a){i.length?i=ye(i,function(g){return q(g)?function(y){return xn(y,g.length===1?g[0]:g)}:g}):i=[Ye];var f=-1;i=ye(i,Xe(z()));var d=yc(t,function(g,y,b){var v=ye(i,function(R){return R(g)});return{criteria:v,index:++f,value:g}});return Qp(d,function(g,y){return S0(g,y,a)})}function m0(t,i){return vc(t,i,function(a,f){return Fo(t,f)})}function vc(t,i,a){for(var f=-1,d=i.length,g={};++f<d;){var y=i[f],b=xn(t,y);a(b,y)&&Tr(g,sn(y,t),b)}return g}function A0(t){return function(i){return xn(i,t)}}function co(t,i,a,f){var d=f?Hp:Nn,g=-1,y=i.length,b=t;for(t===i&&(i=qe(i)),a&&(b=ye(t,Xe(a)));++g<y;)for(var v=0,R=i[g],D=a?a(R):R;(v=d(b,D,v,f))>-1;)b!==t&&yi.call(b,v,1),yi.call(t,v,1);return t}function Pc(t,i){for(var a=t?i.length:0,f=a-1;a--;){var d=i[a];if(a==f||d!==g){var g=d;Lt(d)?yi.call(t,d,1):po(t,d)}}return t}function fo(t,i){return t+xi(ic()*(i-t+1))}function y0(t,i,a,f){for(var d=-1,g=De(bi((i-t)/(a||1)),0),y=P(g);g--;)y[f?g:++d]=t,t+=a;return y}function lo(t,i){var a="";if(!t||i<1||i>ve)return a;do i%2&&(a+=t),i=xi(i/2),i&&(t+=t);while(i);return a}function Z(t,i){return Ro(ef(t,i,Ye),t+"")}function w0(t){return ac($n(t))}function b0(t,i){var a=$n(t);return ki(a,bn(i,0,a.length))}function Tr(t,i,a,f){if(!Ee(t))return t;i=sn(i,t);for(var d=-1,g=i.length,y=g-1,b=t;b!=null&&++d<g;){var v=Pt(i[d]),R=a;if(v==="__proto__"||v==="constructor"||v==="prototype")return t;if(d!=y){var D=b[v];R=f?f(D,v,b):r,R===r&&(R=Ee(D)?D:Lt(i[d+1])?[]:{})}xr(b,v,R),b=b[v]}return t}var Tc=Ei?function(t,i){return Ei.set(t,i),t}:Ye,x0=wi?function(t,i){return wi(t,"toString",{configurable:!0,enumerable:!1,value:Lo(i),writable:!0})}:Ye;function E0(t){return ki($n(t))}function ct(t,i,a){var f=-1,d=t.length;i<0&&(i=-i>d?0:d+i),a=a>d?d:a,a<0&&(a+=d),d=i>a?0:a-i>>>0,i>>>=0;for(var g=P(d);++f<d;)g[f]=t[f+i];return g}function v0(t,i){var a;return nn(t,function(f,d,g){return a=i(f,d,g),!a}),!!a}function Ri(t,i,a){var f=0,d=t==null?f:t.length;if(typeof i=="number"&&i===i&&d<=Es){for(;f<d;){var g=f+d>>>1,y=t[g];y!==null&&!tt(y)&&(a?y<=i:y<i)?f=g+1:d=g}return d}return ho(t,i,Ye,a)}function ho(t,i,a,f){var d=0,g=t==null?0:t.length;if(g===0)return 0;i=a(i);for(var y=i!==i,b=i===null,v=tt(i),R=i===r;d<g;){var D=xi((d+g)/2),_=a(t[D]),U=_!==r,L=_===null,W=_===_,j=tt(_);if(y)var $=f||W;else R?$=W&&(f||U):b?$=W&&U&&(f||!L):v?$=W&&U&&!L&&(f||!j):L||j?$=!1:$=f?_<=i:_<i;$?d=D+1:g=D}return ke(g,ar)}function Ic(t,i){for(var a=-1,f=t.length,d=0,g=[];++a<f;){var y=t[a],b=i?i(y):y;if(!a||!yt(b,v)){var v=b;g[d++]=y===0?0:y}}return g}function Bc(t){return typeof t=="number"?t:tt(t)?_t:+t}function et(t){if(typeof t=="string")return t;if(q(t))return ye(t,et)+"";if(tt(t))return sc?sc.call(t):"";var i=t+"";return i=="0"&&1/t==-1/0?"-0":i}function rn(t,i,a){var f=-1,d=ui,g=t.length,y=!0,b=[],v=b;if(a)y=!1,d=Hs;else if(g>=o){var R=i?null:O0(t);if(R)return fi(R);y=!1,d=gr,v=new wn}else v=i?[]:b;e:for(;++f<g;){var D=t[f],_=i?i(D):D;if(D=a||D!==0?D:0,y&&_===_){for(var U=v.length;U--;)if(v[U]===_)continue e;i&&v.push(_),b.push(D)}else d(v,_,a)||(v!==b&&v.push(_),b.push(D))}return b}function po(t,i){return i=sn(i,t),t=tf(t,i),t==null||delete t[Pt(ft(i))]}function Sc(t,i,a,f){return Tr(t,i,a(xn(t,i)),f)}function Di(t,i,a,f){for(var d=t.length,g=f?d:-1;(f?g--:++g<d)&&i(t[g],g,t););return a?ct(t,f?0:g,f?g+1:d):ct(t,f?g+1:0,f?d:g)}function Rc(t,i){var a=t;return a instanceof ne&&(a=a.value()),Qs(i,function(f,d){return d.func.apply(d.thisArg,Xt([f],d.args))},a)}function go(t,i,a){var f=t.length;if(f<2)return f?rn(t[0]):[];for(var d=-1,g=P(f);++d<f;)for(var y=t[d],b=-1;++b<f;)b!=d&&(g[d]=Er(g[d]||y,t[b],i,a));return rn(Oe(g,1),i,a)}function Dc(t,i,a){for(var f=-1,d=t.length,g=i.length,y={};++f<d;){var b=f<g?i[f]:r;a(y,t[f],b)}return y}function mo(t){return Ie(t)?t:[]}function Ao(t){return typeof t=="function"?t:Ye}function sn(t,i){return q(t)?t:Io(t,i)?[t]:of(le(t))}var P0=Z;function on(t,i,a){var f=t.length;return a=a===r?f:a,!i&&a>=f?t:ct(t,i,a)}var Cc=lg||function(t){return Ne.clearTimeout(t)};function _c(t,i){if(i)return t.slice();var a=t.length,f=Xu?Xu(a):new t.constructor(a);return t.copy(f),f}function yo(t){var i=new t.constructor(t.byteLength);return new mi(i).set(new mi(t)),i}function T0(t,i){var a=i?yo(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.byteLength)}function I0(t){var i=new t.constructor(t.source,gu.exec(t));return i.lastIndex=t.lastIndex,i}function B0(t){return br?he(br.call(t)):{}}function Nc(t,i){var a=i?yo(t.buffer):t.buffer;return new t.constructor(a,t.byteOffset,t.length)}function Oc(t,i){if(t!==i){var a=t!==r,f=t===null,d=t===t,g=tt(t),y=i!==r,b=i===null,v=i===i,R=tt(i);if(!b&&!R&&!g&&t>i||g&&y&&v&&!b&&!R||f&&y&&v||!a&&v||!d)return 1;if(!f&&!g&&!R&&t<i||R&&a&&d&&!f&&!g||b&&a&&d||!y&&d||!v)return-1}return 0}function S0(t,i,a){for(var f=-1,d=t.criteria,g=i.criteria,y=d.length,b=a.length;++f<y;){var v=Oc(d[f],g[f]);if(v){if(f>=b)return v;var R=a[f];return v*(R=="desc"?-1:1)}}return t.index-i.index}function Mc(t,i,a,f){for(var d=-1,g=t.length,y=a.length,b=-1,v=i.length,R=De(g-y,0),D=P(v+R),_=!f;++b<v;)D[b]=i[b];for(;++d<y;)(_||d<g)&&(D[a[d]]=t[d]);for(;R--;)D[b++]=t[d++];return D}function Uc(t,i,a,f){for(var d=-1,g=t.length,y=-1,b=a.length,v=-1,R=i.length,D=De(g-b,0),_=P(D+R),U=!f;++d<D;)_[d]=t[d];for(var L=d;++v<R;)_[L+v]=i[v];for(;++y<b;)(U||d<g)&&(_[L+a[y]]=t[d++]);return _}function qe(t,i){var a=-1,f=t.length;for(i||(i=P(f));++a<f;)i[a]=t[a];return i}function vt(t,i,a,f){var d=!a;a||(a={});for(var g=-1,y=i.length;++g<y;){var b=i[g],v=f?f(a[b],t[b],b,a,t):r;v===r&&(v=t[b]),d?Ut(a,b,v):xr(a,b,v)}return a}function R0(t,i){return vt(t,To(t),i)}function D0(t,i){return vt(t,Kc(t),i)}function Ci(t,i){return function(a,f){var d=q(a)?Mp:Zg,g=i?i():{};return d(a,t,z(f,2),g)}}function Hn(t){return Z(function(i,a){var f=-1,d=a.length,g=d>1?a[d-1]:r,y=d>2?a[2]:r;for(g=t.length>3&&typeof g=="function"?(d--,g):r,y&&ze(a[0],a[1],y)&&(g=d<3?r:g,d=1),i=he(i);++f<d;){var b=a[f];b&&t(i,b,f,g)}return i})}function Fc(t,i){return function(a,f){if(a==null)return a;if(!Je(a))return t(a,f);for(var d=a.length,g=i?d:-1,y=he(a);(i?g--:++g<d)&&f(y[g],g,y)!==!1;);return a}}function kc(t){return function(i,a,f){for(var d=-1,g=he(i),y=f(i),b=y.length;b--;){var v=y[t?b:++d];if(a(g[v],v,g)===!1)break}return i}}function C0(t,i,a){var f=i&N,d=Ir(t);function g(){var y=this&&this!==Ne&&this instanceof g?d:t;return y.apply(f?a:this,arguments)}return g}function Lc(t){return function(i){i=le(i);var a=On(i)?mt(i):r,f=a?a[0]:i.charAt(0),d=a?on(a,1).join(""):i.slice(1);return f[t]()+d}}function Qn(t){return function(i){return Qs(kf(Ff(i).replace(xp,"")),t,"")}}function Ir(t){return function(){var i=arguments;switch(i.length){case 0:return new t;case 1:return new t(i[0]);case 2:return new t(i[0],i[1]);case 3:return new t(i[0],i[1],i[2]);case 4:return new t(i[0],i[1],i[2],i[3]);case 5:return new t(i[0],i[1],i[2],i[3],i[4]);case 6:return new t(i[0],i[1],i[2],i[3],i[4],i[5]);case 7:return new t(i[0],i[1],i[2],i[3],i[4],i[5],i[6])}var a=Gn(t.prototype),f=t.apply(a,i);return Ee(f)?f:a}}function _0(t,i,a){var f=Ir(t);function d(){for(var g=arguments.length,y=P(g),b=g,v=zn(d);b--;)y[b]=arguments[b];var R=g<3&&y[0]!==v&&y[g-1]!==v?[]:en(y,v);if(g-=R.length,g<a)return Wc(t,i,_i,d.placeholder,r,y,R,r,r,a-g);var D=this&&this!==Ne&&this instanceof d?f:t;return Ze(D,this,y)}return d}function Gc(t){return function(i,a,f){var d=he(i);if(!Je(i)){var g=z(a,3);i=_e(i),a=function(b){return g(d[b],b,d)}}var y=t(i,a,f);return y>-1?d[g?i[y]:y]:r}}function Hc(t){return kt(function(i){var a=i.length,f=a,d=at.prototype.thru;for(t&&i.reverse();f--;){var g=i[f];if(typeof g!="function")throw new ot(c);if(d&&!y&&Ui(g)=="wrapper")var y=new at([],!0)}for(f=y?f:a;++f<a;){g=i[f];var b=Ui(g),v=b=="wrapper"?vo(g):r;v&&Bo(v[0])&&v[1]==(F|G|H|se)&&!v[4].length&&v[9]==1?y=y[Ui(v[0])].apply(y,v[3]):y=g.length==1&&Bo(g)?y[b]():y.thru(g)}return function(){var R=arguments,D=R[0];if(y&&R.length==1&&q(D))return y.plant(D).value();for(var _=0,U=a?i[_].apply(this,R):D;++_<a;)U=i[_].call(this,U);return U}})}function _i(t,i,a,f,d,g,y,b,v,R){var D=i&F,_=i&N,U=i&S,L=i&(G|ee),W=i&K,j=U?r:Ir(t);function $(){for(var te=arguments.length,ie=P(te),nt=te;nt--;)ie[nt]=arguments[nt];if(L)var We=zn($),rt=Wp(ie,We);if(f&&(ie=Mc(ie,f,d,L)),g&&(ie=Uc(ie,g,y,L)),te-=rt,L&&te<R){var Be=en(ie,We);return Wc(t,i,_i,$.placeholder,a,ie,Be,b,v,R-te)}var wt=_?a:this,Qt=U?wt[t]:t;return te=ie.length,b?ie=Z0(ie,b):W&&te>1&&ie.reverse(),D&&v<te&&(ie.length=v),this&&this!==Ne&&this instanceof $&&(Qt=j||Ir(Qt)),Qt.apply(wt,ie)}return $}function Qc(t,i){return function(a,f){return o0(a,t,i(f),{})}}function Ni(t,i){return function(a,f){var d;if(a===r&&f===r)return i;if(a!==r&&(d=a),f!==r){if(d===r)return f;typeof a=="string"||typeof f=="string"?(a=et(a),f=et(f)):(a=Bc(a),f=Bc(f)),d=t(a,f)}return d}}function wo(t){return kt(function(i){return i=ye(i,Xe(z())),Z(function(a){var f=this;return t(i,function(d){return Ze(d,f,a)})})})}function Oi(t,i){i=i===r?" ":et(i);var a=i.length;if(a<2)return a?lo(i,t):i;var f=lo(i,bi(t/Mn(i)));return On(i)?on(mt(f),0,t).join(""):f.slice(0,t)}function N0(t,i,a,f){var d=i&N,g=Ir(t);function y(){for(var b=-1,v=arguments.length,R=-1,D=f.length,_=P(D+v),U=this&&this!==Ne&&this instanceof y?g:t;++R<D;)_[R]=f[R];for(;v--;)_[R++]=arguments[++b];return Ze(U,d?a:this,_)}return y}function zc(t){return function(i,a,f){return f&&typeof f!="number"&&ze(i,a,f)&&(a=f=r),i=Ht(i),a===r?(a=i,i=0):a=Ht(a),f=f===r?i<a?1:-1:Ht(f),y0(i,a,f,t)}}function Mi(t){return function(i,a){return typeof i=="string"&&typeof a=="string"||(i=lt(i),a=lt(a)),t(i,a)}}function Wc(t,i,a,f,d,g,y,b,v,R){var D=i&G,_=D?y:r,U=D?r:y,L=D?g:r,W=D?r:g;i|=D?H:Q,i&=~(D?Q:H),i&M||(i&=-4);var j=[t,i,d,L,_,W,U,b,v,R],$=a.apply(r,j);return Bo(t)&&nf($,j),$.placeholder=f,rf($,t,i)}function bo(t){var i=Re[t];return function(a,f){if(a=lt(a),f=f==null?0:ke(J(f),292),f&&rc(a)){var d=(le(a)+"e").split("e"),g=i(d[0]+"e"+(+d[1]+f));return d=(le(g)+"e").split("e"),+(d[0]+"e"+(+d[1]-f))}return i(a)}}var O0=kn&&1/fi(new kn([,-0]))[1]==xe?function(t){return new kn(t)}:Qo;function $c(t){return function(i){var a=Le(i);return a==pt?Ks(i):a==gt?jp(i):zp(i,t(i))}}function Ft(t,i,a,f,d,g,y,b){var v=i&S;if(!v&&typeof t!="function")throw new ot(c);var R=f?f.length:0;if(R||(i&=-97,f=d=r),y=y===r?y:De(J(y),0),b=b===r?b:J(b),R-=d?d.length:0,i&Q){var D=f,_=d;f=d=r}var U=v?r:vo(t),L=[t,i,a,f,d,D,_,g,y,b];if(U&&K0(L,U),t=L[0],i=L[1],a=L[2],f=L[3],d=L[4],b=L[9]=L[9]===r?v?0:t.length:De(L[9]-R,0),!b&&i&(G|ee)&&(i&=-25),!i||i==N)var W=C0(t,i,a);else i==G||i==ee?W=_0(t,i,b):(i==H||i==(N|H))&&!d.length?W=N0(t,i,a,f):W=_i.apply(r,L);var j=U?Tc:nf;return rf(j(W,L),t,i)}function Vc(t,i,a,f){return t===r||yt(t,Fn[a])&&!de.call(f,a)?i:t}function qc(t,i,a,f,d,g){return Ee(t)&&Ee(i)&&(g.set(i,t),Si(t,i,r,qc,g),g.delete(i)),t}function M0(t){return Rr(t)?r:t}function Jc(t,i,a,f,d,g){var y=a&I,b=t.length,v=i.length;if(b!=v&&!(y&&v>b))return!1;var R=g.get(t),D=g.get(i);if(R&&D)return R==i&&D==t;var _=-1,U=!0,L=a&C?new wn:r;for(g.set(t,i),g.set(i,t);++_<b;){var W=t[_],j=i[_];if(f)var $=y?f(j,W,_,i,t,g):f(W,j,_,t,i,g);if($!==r){if($)continue;U=!1;break}if(L){if(!zs(i,function(te,ie){if(!gr(L,ie)&&(W===te||d(W,te,a,f,g)))return L.push(ie)})){U=!1;break}}else if(!(W===j||d(W,j,a,f,g))){U=!1;break}}return g.delete(t),g.delete(i),U}function U0(t,i,a,f,d,g,y){switch(a){case Cn:if(t.byteLength!=i.byteLength||t.byteOffset!=i.byteOffset)return!1;t=t.buffer,i=i.buffer;case pr:return!(t.byteLength!=i.byteLength||!g(new mi(t),new mi(i)));case ur:case cr:case fr:return yt(+t,+i);case ni:return t.name==i.name&&t.message==i.message;case lr:case dr:return t==i+"";case pt:var b=Ks;case gt:var v=f&I;if(b||(b=fi),t.size!=i.size&&!v)return!1;var R=y.get(t);if(R)return R==i;f|=C,y.set(t,i);var D=Jc(b(t),b(i),f,d,g,y);return y.delete(t),D;case ii:if(br)return br.call(t)==br.call(i)}return!1}function F0(t,i,a,f,d,g){var y=a&I,b=xo(t),v=b.length,R=xo(i),D=R.length;if(v!=D&&!y)return!1;for(var _=v;_--;){var U=b[_];if(!(y?U in i:de.call(i,U)))return!1}var L=g.get(t),W=g.get(i);if(L&&W)return L==i&&W==t;var j=!0;g.set(t,i),g.set(i,t);for(var $=y;++_<v;){U=b[_];var te=t[U],ie=i[U];if(f)var nt=y?f(ie,te,U,i,t,g):f(te,ie,U,t,i,g);if(!(nt===r?te===ie||d(te,ie,a,f,g):nt)){j=!1;break}$||($=U=="constructor")}if(j&&!$){var We=t.constructor,rt=i.constructor;We!=rt&&"constructor"in t&&"constructor"in i&&!(typeof We=="function"&&We instanceof We&&typeof rt=="function"&&rt instanceof rt)&&(j=!1)}return g.delete(t),g.delete(i),j}function kt(t){return Ro(ef(t,r,ff),t+"")}function xo(t){return pc(t,_e,To)}function Eo(t){return pc(t,Ke,Kc)}var vo=Ei?function(t){return Ei.get(t)}:Qo;function Ui(t){for(var i=t.name+"",a=Ln[i],f=de.call(Ln,i)?a.length:0;f--;){var d=a[f],g=d.func;if(g==null||g==t)return d.name}return i}function zn(t){var i=de.call(p,"placeholder")?p:t;return i.placeholder}function z(){var t=p.iteratee||Go;return t=t===Go?Ac:t,arguments.length?t(arguments[0],arguments[1]):t}function Fi(t,i){var a=t.__data__;return $0(i)?a[typeof i=="string"?"string":"hash"]:a.map}function Po(t){for(var i=_e(t),a=i.length;a--;){var f=i[a],d=t[f];i[a]=[f,d,Zc(d)]}return i}function En(t,i){var a=Jp(t,i);return mc(a)?a:r}function k0(t){var i=de.call(t,An),a=t[An];try{t[An]=r;var f=!0}catch{}var d=pi.call(t);return f&&(i?t[An]=a:delete t[An]),d}var To=js?function(t){return t==null?[]:(t=he(t),Zt(js(t),function(i){return tc.call(t,i)}))}:zo,Kc=js?function(t){for(var i=[];t;)Xt(i,To(t)),t=Ai(t);return i}:zo,Le=Qe;(Zs&&Le(new Zs(new ArrayBuffer(1)))!=Cn||Ar&&Le(new Ar)!=pt||Xs&&Le(Xs.resolve())!=lu||kn&&Le(new kn)!=gt||yr&&Le(new yr)!=hr)&&(Le=function(t){var i=Qe(t),a=i==Nt?t.constructor:r,f=a?vn(a):"";if(f)switch(f){case bg:return Cn;case xg:return pt;case Eg:return lu;case vg:return gt;case Pg:return hr}return i});function L0(t,i,a){for(var f=-1,d=a.length;++f<d;){var g=a[f],y=g.size;switch(g.type){case"drop":t+=y;break;case"dropRight":i-=y;break;case"take":i=ke(i,t+y);break;case"takeRight":t=De(t,i-y);break}}return{start:t,end:i}}function G0(t){var i=t.match(Vh);return i?i[1].split(qh):[]}function Yc(t,i,a){i=sn(i,t);for(var f=-1,d=i.length,g=!1;++f<d;){var y=Pt(i[f]);if(!(g=t!=null&&a(t,y)))break;t=t[y]}return g||++f!=d?g:(d=t==null?0:t.length,!!d&&Wi(d)&&Lt(y,d)&&(q(t)||Pn(t)))}function H0(t){var i=t.length,a=new t.constructor(i);return i&&typeof t[0]=="string"&&de.call(t,"index")&&(a.index=t.index,a.input=t.input),a}function jc(t){return typeof t.constructor=="function"&&!Br(t)?Gn(Ai(t)):{}}function Q0(t,i,a){var f=t.constructor;switch(i){case pr:return yo(t);case ur:case cr:return new f(+t);case Cn:return T0(t,a);case vs:case Ps:case Ts:case Is:case Bs:case Ss:case Rs:case Ds:case Cs:return Nc(t,a);case pt:return new f;case fr:case dr:return new f(t);case lr:return I0(t);case gt:return new f;case ii:return B0(t)}}function z0(t,i){var a=i.length;if(!a)return t;var f=a-1;return i[f]=(a>1?"& ":"")+i[f],i=i.join(a>2?", ":" "),t.replace($h,`{
/* [wrapped with `+i+`] */
`)}function W0(t){return q(t)||Pn(t)||!!(nc&&t&&t[nc])}function Lt(t,i){var a=typeof t;return i=i??ve,!!i&&(a=="number"||a!="symbol"&&np.test(t))&&t>-1&&t%1==0&&t<i}function ze(t,i,a){if(!Ee(a))return!1;var f=typeof i;return(f=="number"?Je(a)&&Lt(i,a.length):f=="string"&&i in a)?yt(a[i],t):!1}function Io(t,i){if(q(t))return!1;var a=typeof t;return a=="number"||a=="symbol"||a=="boolean"||t==null||tt(t)?!0:Hh.test(t)||!Gh.test(t)||i!=null&&t in he(i)}function $0(t){var i=typeof t;return i=="string"||i=="number"||i=="symbol"||i=="boolean"?t!=="__proto__":t===null}function Bo(t){var i=Ui(t),a=p[i];if(typeof a!="function"||!(i in ne.prototype))return!1;if(t===a)return!0;var f=vo(a);return!!f&&t===f[0]}function V0(t){return!!Zu&&Zu in t}var q0=di?Gt:Wo;function Br(t){var i=t&&t.constructor,a=typeof i=="function"&&i.prototype||Fn;return t===a}function Zc(t){return t===t&&!Ee(t)}function Xc(t,i){return function(a){return a==null?!1:a[t]===i&&(i!==r||t in he(a))}}function J0(t){var i=Qi(t,function(f){return a.size===m&&a.clear(),f}),a=i.cache;return i}function K0(t,i){var a=t[1],f=i[1],d=a|f,g=d<(N|S|F),y=f==F&&a==G||f==F&&a==se&&t[7].length<=i[8]||f==(F|se)&&i[7].length<=i[8]&&a==G;if(!(g||y))return t;f&N&&(t[2]=i[2],d|=a&N?0:M);var b=i[3];if(b){var v=t[3];t[3]=v?Mc(v,b,i[4]):b,t[4]=v?en(t[3],A):i[4]}return b=i[5],b&&(v=t[5],t[5]=v?Uc(v,b,i[6]):b,t[6]=v?en(t[5],A):i[6]),b=i[7],b&&(t[7]=b),f&F&&(t[8]=t[8]==null?i[8]:ke(t[8],i[8])),t[9]==null&&(t[9]=i[9]),t[0]=i[0],t[1]=d,t}function Y0(t){var i=[];if(t!=null)for(var a in he(t))i.push(a);return i}function j0(t){return pi.call(t)}function ef(t,i,a){return i=De(i===r?t.length-1:i,0),function(){for(var f=arguments,d=-1,g=De(f.length-i,0),y=P(g);++d<g;)y[d]=f[i+d];d=-1;for(var b=P(i+1);++d<i;)b[d]=f[d];return b[i]=a(y),Ze(t,this,b)}}function tf(t,i){return i.length<2?t:xn(t,ct(i,0,-1))}function Z0(t,i){for(var a=t.length,f=ke(i.length,a),d=qe(t);f--;){var g=i[f];t[f]=Lt(g,a)?d[g]:r}return t}function So(t,i){if(!(i==="constructor"&&typeof t[i]=="function")&&i!="__proto__")return t[i]}var nf=sf(Tc),Sr=hg||function(t,i){return Ne.setTimeout(t,i)},Ro=sf(x0);function rf(t,i,a){var f=i+"";return Ro(t,z0(f,X0(G0(f),a)))}function sf(t){var i=0,a=0;return function(){var f=Ag(),d=Ae-(f-a);if(a=f,d>0){if(++i>=fe)return arguments[0]}else i=0;return t.apply(r,arguments)}}function ki(t,i){var a=-1,f=t.length,d=f-1;for(i=i===r?f:i;++a<i;){var g=fo(a,d),y=t[g];t[g]=t[a],t[a]=y}return t.length=i,t}var of=J0(function(t){var i=[];return t.charCodeAt(0)===46&&i.push(""),t.replace(Qh,function(a,f,d,g){i.push(d?g.replace(Yh,"$1"):f||a)}),i});function Pt(t){if(typeof t=="string"||tt(t))return t;var i=t+"";return i=="0"&&1/t==-1/0?"-0":i}function vn(t){if(t!=null){try{return hi.call(t)}catch{}try{return t+""}catch{}}return""}function X0(t,i){return st(ei,function(a){var f="_."+a[0];i&a[1]&&!ui(t,f)&&t.push(f)}),t.sort()}function af(t){if(t instanceof ne)return t.clone();var i=new at(t.__wrapped__,t.__chain__);return i.__actions__=qe(t.__actions__),i.__index__=t.__index__,i.__values__=t.__values__,i}function em(t,i,a){(a?ze(t,i,a):i===r)?i=1:i=De(J(i),0);var f=t==null?0:t.length;if(!f||i<1)return[];for(var d=0,g=0,y=P(bi(f/i));d<f;)y[g++]=ct(t,d,d+=i);return y}function tm(t){for(var i=-1,a=t==null?0:t.length,f=0,d=[];++i<a;){var g=t[i];g&&(d[f++]=g)}return d}function nm(){var t=arguments.length;if(!t)return[];for(var i=P(t-1),a=arguments[0],f=t;f--;)i[f-1]=arguments[f];return Xt(q(a)?qe(a):[a],Oe(i,1))}var rm=Z(function(t,i){return Ie(t)?Er(t,Oe(i,1,Ie,!0)):[]}),im=Z(function(t,i){var a=ft(i);return Ie(a)&&(a=r),Ie(t)?Er(t,Oe(i,1,Ie,!0),z(a,2)):[]}),sm=Z(function(t,i){var a=ft(i);return Ie(a)&&(a=r),Ie(t)?Er(t,Oe(i,1,Ie,!0),r,a):[]});function om(t,i,a){var f=t==null?0:t.length;return f?(i=a||i===r?1:J(i),ct(t,i<0?0:i,f)):[]}function am(t,i,a){var f=t==null?0:t.length;return f?(i=a||i===r?1:J(i),i=f-i,ct(t,0,i<0?0:i)):[]}function um(t,i){return t&&t.length?Di(t,z(i,3),!0,!0):[]}function cm(t,i){return t&&t.length?Di(t,z(i,3),!0):[]}function fm(t,i,a,f){var d=t==null?0:t.length;return d?(a&&typeof a!="number"&&ze(t,i,a)&&(a=0,f=d),n0(t,i,a,f)):[]}function uf(t,i,a){var f=t==null?0:t.length;if(!f)return-1;var d=a==null?0:J(a);return d<0&&(d=De(f+d,0)),ci(t,z(i,3),d)}function cf(t,i,a){var f=t==null?0:t.length;if(!f)return-1;var d=f-1;return a!==r&&(d=J(a),d=a<0?De(f+d,0):ke(d,f-1)),ci(t,z(i,3),d,!0)}function ff(t){var i=t==null?0:t.length;return i?Oe(t,1):[]}function lm(t){var i=t==null?0:t.length;return i?Oe(t,xe):[]}function dm(t,i){var a=t==null?0:t.length;return a?(i=i===r?1:J(i),Oe(t,i)):[]}function hm(t){for(var i=-1,a=t==null?0:t.length,f={};++i<a;){var d=t[i];f[d[0]]=d[1]}return f}function lf(t){return t&&t.length?t[0]:r}function pm(t,i,a){var f=t==null?0:t.length;if(!f)return-1;var d=a==null?0:J(a);return d<0&&(d=De(f+d,0)),Nn(t,i,d)}function gm(t){var i=t==null?0:t.length;return i?ct(t,0,-1):[]}var mm=Z(function(t){var i=ye(t,mo);return i.length&&i[0]===t[0]?so(i):[]}),Am=Z(function(t){var i=ft(t),a=ye(t,mo);return i===ft(a)?i=r:a.pop(),a.length&&a[0]===t[0]?so(a,z(i,2)):[]}),ym=Z(function(t){var i=ft(t),a=ye(t,mo);return i=typeof i=="function"?i:r,i&&a.pop(),a.length&&a[0]===t[0]?so(a,r,i):[]});function wm(t,i){return t==null?"":gg.call(t,i)}function ft(t){var i=t==null?0:t.length;return i?t[i-1]:r}function bm(t,i,a){var f=t==null?0:t.length;if(!f)return-1;var d=f;return a!==r&&(d=J(a),d=d<0?De(f+d,0):ke(d,f-1)),i===i?Xp(t,i,d):ci(t,Wu,d,!0)}function xm(t,i){return t&&t.length?xc(t,J(i)):r}var Em=Z(df);function df(t,i){return t&&t.length&&i&&i.length?co(t,i):t}function vm(t,i,a){return t&&t.length&&i&&i.length?co(t,i,z(a,2)):t}function Pm(t,i,a){return t&&t.length&&i&&i.length?co(t,i,r,a):t}var Tm=kt(function(t,i){var a=t==null?0:t.length,f=to(t,i);return Pc(t,ye(i,function(d){return Lt(d,a)?+d:d}).sort(Oc)),f});function Im(t,i){var a=[];if(!(t&&t.length))return a;var f=-1,d=[],g=t.length;for(i=z(i,3);++f<g;){var y=t[f];i(y,f,t)&&(a.push(y),d.push(f))}return Pc(t,d),a}function Do(t){return t==null?t:wg.call(t)}function Bm(t,i,a){var f=t==null?0:t.length;return f?(a&&typeof a!="number"&&ze(t,i,a)?(i=0,a=f):(i=i==null?0:J(i),a=a===r?f:J(a)),ct(t,i,a)):[]}function Sm(t,i){return Ri(t,i)}function Rm(t,i,a){return ho(t,i,z(a,2))}function Dm(t,i){var a=t==null?0:t.length;if(a){var f=Ri(t,i);if(f<a&&yt(t[f],i))return f}return-1}function Cm(t,i){return Ri(t,i,!0)}function _m(t,i,a){return ho(t,i,z(a,2),!0)}function Nm(t,i){var a=t==null?0:t.length;if(a){var f=Ri(t,i,!0)-1;if(yt(t[f],i))return f}return-1}function Om(t){return t&&t.length?Ic(t):[]}function Mm(t,i){return t&&t.length?Ic(t,z(i,2)):[]}function Um(t){var i=t==null?0:t.length;return i?ct(t,1,i):[]}function Fm(t,i,a){return t&&t.length?(i=a||i===r?1:J(i),ct(t,0,i<0?0:i)):[]}function km(t,i,a){var f=t==null?0:t.length;return f?(i=a||i===r?1:J(i),i=f-i,ct(t,i<0?0:i,f)):[]}function Lm(t,i){return t&&t.length?Di(t,z(i,3),!1,!0):[]}function Gm(t,i){return t&&t.length?Di(t,z(i,3)):[]}var Hm=Z(function(t){return rn(Oe(t,1,Ie,!0))}),Qm=Z(function(t){var i=ft(t);return Ie(i)&&(i=r),rn(Oe(t,1,Ie,!0),z(i,2))}),zm=Z(function(t){var i=ft(t);return i=typeof i=="function"?i:r,rn(Oe(t,1,Ie,!0),r,i)});function Wm(t){return t&&t.length?rn(t):[]}function $m(t,i){return t&&t.length?rn(t,z(i,2)):[]}function Vm(t,i){return i=typeof i=="function"?i:r,t&&t.length?rn(t,r,i):[]}function Co(t){if(!(t&&t.length))return[];var i=0;return t=Zt(t,function(a){if(Ie(a))return i=De(a.length,i),!0}),qs(i,function(a){return ye(t,Ws(a))})}function hf(t,i){if(!(t&&t.length))return[];var a=Co(t);return i==null?a:ye(a,function(f){return Ze(i,r,f)})}var qm=Z(function(t,i){return Ie(t)?Er(t,i):[]}),Jm=Z(function(t){return go(Zt(t,Ie))}),Km=Z(function(t){var i=ft(t);return Ie(i)&&(i=r),go(Zt(t,Ie),z(i,2))}),Ym=Z(function(t){var i=ft(t);return i=typeof i=="function"?i:r,go(Zt(t,Ie),r,i)}),jm=Z(Co);function Zm(t,i){return Dc(t||[],i||[],xr)}function Xm(t,i){return Dc(t||[],i||[],Tr)}var eA=Z(function(t){var i=t.length,a=i>1?t[i-1]:r;return a=typeof a=="function"?(t.pop(),a):r,hf(t,a)});function pf(t){var i=p(t);return i.__chain__=!0,i}function tA(t,i){return i(t),t}function Li(t,i){return i(t)}var nA=kt(function(t){var i=t.length,a=i?t[0]:0,f=this.__wrapped__,d=function(g){return to(g,t)};return i>1||this.__actions__.length||!(f instanceof ne)||!Lt(a)?this.thru(d):(f=f.slice(a,+a+(i?1:0)),f.__actions__.push({func:Li,args:[d],thisArg:r}),new at(f,this.__chain__).thru(function(g){return i&&!g.length&&g.push(r),g}))});function rA(){return pf(this)}function iA(){return new at(this.value(),this.__chain__)}function sA(){this.__values__===r&&(this.__values__=Sf(this.value()));var t=this.__index__>=this.__values__.length,i=t?r:this.__values__[this.__index__++];return{done:t,value:i}}function oA(){return this}function aA(t){for(var i,a=this;a instanceof Pi;){var f=af(a);f.__index__=0,f.__values__=r,i?d.__wrapped__=f:i=f;var d=f;a=a.__wrapped__}return d.__wrapped__=t,i}function uA(){var t=this.__wrapped__;if(t instanceof ne){var i=t;return this.__actions__.length&&(i=new ne(this)),i=i.reverse(),i.__actions__.push({func:Li,args:[Do],thisArg:r}),new at(i,this.__chain__)}return this.thru(Do)}function cA(){return Rc(this.__wrapped__,this.__actions__)}var fA=Ci(function(t,i,a){de.call(t,a)?++t[a]:Ut(t,a,1)});function lA(t,i,a){var f=q(t)?Qu:t0;return a&&ze(t,i,a)&&(i=r),f(t,z(i,3))}function dA(t,i){var a=q(t)?Zt:dc;return a(t,z(i,3))}var hA=Gc(uf),pA=Gc(cf);function gA(t,i){return Oe(Gi(t,i),1)}function mA(t,i){return Oe(Gi(t,i),xe)}function AA(t,i,a){return a=a===r?1:J(a),Oe(Gi(t,i),a)}function gf(t,i){var a=q(t)?st:nn;return a(t,z(i,3))}function mf(t,i){var a=q(t)?Up:lc;return a(t,z(i,3))}var yA=Ci(function(t,i,a){de.call(t,a)?t[a].push(i):Ut(t,a,[i])});function wA(t,i,a,f){t=Je(t)?t:$n(t),a=a&&!f?J(a):0;var d=t.length;return a<0&&(a=De(d+a,0)),$i(t)?a<=d&&t.indexOf(i,a)>-1:!!d&&Nn(t,i,a)>-1}var bA=Z(function(t,i,a){var f=-1,d=typeof i=="function",g=Je(t)?P(t.length):[];return nn(t,function(y){g[++f]=d?Ze(i,y,a):vr(y,i,a)}),g}),xA=Ci(function(t,i,a){Ut(t,a,i)});function Gi(t,i){var a=q(t)?ye:yc;return a(t,z(i,3))}function EA(t,i,a,f){return t==null?[]:(q(i)||(i=i==null?[]:[i]),a=f?r:a,q(a)||(a=a==null?[]:[a]),Ec(t,i,a))}var vA=Ci(function(t,i,a){t[a?0:1].push(i)},function(){return[[],[]]});function PA(t,i,a){var f=q(t)?Qs:Vu,d=arguments.length<3;return f(t,z(i,4),a,d,nn)}function TA(t,i,a){var f=q(t)?Fp:Vu,d=arguments.length<3;return f(t,z(i,4),a,d,lc)}function IA(t,i){var a=q(t)?Zt:dc;return a(t,zi(z(i,3)))}function BA(t){var i=q(t)?ac:w0;return i(t)}function SA(t,i,a){(a?ze(t,i,a):i===r)?i=1:i=J(i);var f=q(t)?Yg:b0;return f(t,i)}function RA(t){var i=q(t)?jg:E0;return i(t)}function DA(t){if(t==null)return 0;if(Je(t))return $i(t)?Mn(t):t.length;var i=Le(t);return i==pt||i==gt?t.size:ao(t).length}function CA(t,i,a){var f=q(t)?zs:v0;return a&&ze(t,i,a)&&(i=r),f(t,z(i,3))}var _A=Z(function(t,i){if(t==null)return[];var a=i.length;return a>1&&ze(t,i[0],i[1])?i=[]:a>2&&ze(i[0],i[1],i[2])&&(i=[i[0]]),Ec(t,Oe(i,1),[])}),Hi=dg||function(){return Ne.Date.now()};function NA(t,i){if(typeof i!="function")throw new ot(c);return t=J(t),function(){if(--t<1)return i.apply(this,arguments)}}function Af(t,i,a){return i=a?r:i,i=t&&i==null?t.length:i,Ft(t,F,r,r,r,r,i)}function yf(t,i){var a;if(typeof i!="function")throw new ot(c);return t=J(t),function(){return--t>0&&(a=i.apply(this,arguments)),t<=1&&(i=r),a}}var _o=Z(function(t,i,a){var f=N;if(a.length){var d=en(a,zn(_o));f|=H}return Ft(t,f,i,a,d)}),wf=Z(function(t,i,a){var f=N|S;if(a.length){var d=en(a,zn(wf));f|=H}return Ft(i,f,t,a,d)});function bf(t,i,a){i=a?r:i;var f=Ft(t,G,r,r,r,r,r,i);return f.placeholder=bf.placeholder,f}function xf(t,i,a){i=a?r:i;var f=Ft(t,ee,r,r,r,r,r,i);return f.placeholder=xf.placeholder,f}function Ef(t,i,a){var f,d,g,y,b,v,R=0,D=!1,_=!1,U=!0;if(typeof t!="function")throw new ot(c);i=lt(i)||0,Ee(a)&&(D=!!a.leading,_="maxWait"in a,g=_?De(lt(a.maxWait)||0,i):g,U="trailing"in a?!!a.trailing:U);function L(Be){var wt=f,Qt=d;return f=d=r,R=Be,y=t.apply(Qt,wt),y}function W(Be){return R=Be,b=Sr(te,i),D?L(Be):y}function j(Be){var wt=Be-v,Qt=Be-R,Hf=i-wt;return _?ke(Hf,g-Qt):Hf}function $(Be){var wt=Be-v,Qt=Be-R;return v===r||wt>=i||wt<0||_&&Qt>=g}function te(){var Be=Hi();if($(Be))return ie(Be);b=Sr(te,j(Be))}function ie(Be){return b=r,U&&f?L(Be):(f=d=r,y)}function nt(){b!==r&&Cc(b),R=0,f=v=d=b=r}function We(){return b===r?y:ie(Hi())}function rt(){var Be=Hi(),wt=$(Be);if(f=arguments,d=this,v=Be,wt){if(b===r)return W(v);if(_)return Cc(b),b=Sr(te,i),L(v)}return b===r&&(b=Sr(te,i)),y}return rt.cancel=nt,rt.flush=We,rt}var OA=Z(function(t,i){return fc(t,1,i)}),MA=Z(function(t,i,a){return fc(t,lt(i)||0,a)});function UA(t){return Ft(t,K)}function Qi(t,i){if(typeof t!="function"||i!=null&&typeof i!="function")throw new ot(c);var a=function(){var f=arguments,d=i?i.apply(this,f):f[0],g=a.cache;if(g.has(d))return g.get(d);var y=t.apply(this,f);return a.cache=g.set(d,y)||g,y};return a.cache=new(Qi.Cache||Mt),a}Qi.Cache=Mt;function zi(t){if(typeof t!="function")throw new ot(c);return function(){var i=arguments;switch(i.length){case 0:return!t.call(this);case 1:return!t.call(this,i[0]);case 2:return!t.call(this,i[0],i[1]);case 3:return!t.call(this,i[0],i[1],i[2])}return!t.apply(this,i)}}function FA(t){return yf(2,t)}var kA=P0(function(t,i){i=i.length==1&&q(i[0])?ye(i[0],Xe(z())):ye(Oe(i,1),Xe(z()));var a=i.length;return Z(function(f){for(var d=-1,g=ke(f.length,a);++d<g;)f[d]=i[d].call(this,f[d]);return Ze(t,this,f)})}),No=Z(function(t,i){var a=en(i,zn(No));return Ft(t,H,r,i,a)}),vf=Z(function(t,i){var a=en(i,zn(vf));return Ft(t,Q,r,i,a)}),LA=kt(function(t,i){return Ft(t,se,r,r,r,i)});function GA(t,i){if(typeof t!="function")throw new ot(c);return i=i===r?i:J(i),Z(t,i)}function HA(t,i){if(typeof t!="function")throw new ot(c);return i=i==null?0:De(J(i),0),Z(function(a){var f=a[i],d=on(a,0,i);return f&&Xt(d,f),Ze(t,this,d)})}function QA(t,i,a){var f=!0,d=!0;if(typeof t!="function")throw new ot(c);return Ee(a)&&(f="leading"in a?!!a.leading:f,d="trailing"in a?!!a.trailing:d),Ef(t,i,{leading:f,maxWait:i,trailing:d})}function zA(t){return Af(t,1)}function WA(t,i){return No(Ao(i),t)}function $A(){if(!arguments.length)return[];var t=arguments[0];return q(t)?t:[t]}function VA(t){return ut(t,T)}function qA(t,i){return i=typeof i=="function"?i:r,ut(t,T,i)}function JA(t){return ut(t,w|T)}function KA(t,i){return i=typeof i=="function"?i:r,ut(t,w|T,i)}function YA(t,i){return i==null||cc(t,i,_e(i))}function yt(t,i){return t===i||t!==t&&i!==i}var jA=Mi(io),ZA=Mi(function(t,i){return t>=i}),Pn=gc(function(){return arguments}())?gc:function(t){return Pe(t)&&de.call(t,"callee")&&!tc.call(t,"callee")},q=P.isArray,XA=Uu?Xe(Uu):a0;function Je(t){return t!=null&&Wi(t.length)&&!Gt(t)}function Ie(t){return Pe(t)&&Je(t)}function ey(t){return t===!0||t===!1||Pe(t)&&Qe(t)==ur}var an=pg||Wo,ty=Fu?Xe(Fu):u0;function ny(t){return Pe(t)&&t.nodeType===1&&!Rr(t)}function ry(t){if(t==null)return!0;if(Je(t)&&(q(t)||typeof t=="string"||typeof t.splice=="function"||an(t)||Wn(t)||Pn(t)))return!t.length;var i=Le(t);if(i==pt||i==gt)return!t.size;if(Br(t))return!ao(t).length;for(var a in t)if(de.call(t,a))return!1;return!0}function iy(t,i){return Pr(t,i)}function sy(t,i,a){a=typeof a=="function"?a:r;var f=a?a(t,i):r;return f===r?Pr(t,i,r,a):!!f}function Oo(t){if(!Pe(t))return!1;var i=Qe(t);return i==ni||i==Sh||typeof t.message=="string"&&typeof t.name=="string"&&!Rr(t)}function oy(t){return typeof t=="number"&&rc(t)}function Gt(t){if(!Ee(t))return!1;var i=Qe(t);return i==ri||i==fu||i==Bh||i==Dh}function Pf(t){return typeof t=="number"&&t==J(t)}function Wi(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=ve}function Ee(t){var i=typeof t;return t!=null&&(i=="object"||i=="function")}function Pe(t){return t!=null&&typeof t=="object"}var Tf=ku?Xe(ku):f0;function ay(t,i){return t===i||oo(t,i,Po(i))}function uy(t,i,a){return a=typeof a=="function"?a:r,oo(t,i,Po(i),a)}function cy(t){return If(t)&&t!=+t}function fy(t){if(q0(t))throw new V(u);return mc(t)}function ly(t){return t===null}function dy(t){return t==null}function If(t){return typeof t=="number"||Pe(t)&&Qe(t)==fr}function Rr(t){if(!Pe(t)||Qe(t)!=Nt)return!1;var i=Ai(t);if(i===null)return!0;var a=de.call(i,"constructor")&&i.constructor;return typeof a=="function"&&a instanceof a&&hi.call(a)==ug}var Mo=Lu?Xe(Lu):l0;function hy(t){return Pf(t)&&t>=-9007199254740991&&t<=ve}var Bf=Gu?Xe(Gu):d0;function $i(t){return typeof t=="string"||!q(t)&&Pe(t)&&Qe(t)==dr}function tt(t){return typeof t=="symbol"||Pe(t)&&Qe(t)==ii}var Wn=Hu?Xe(Hu):h0;function py(t){return t===r}function gy(t){return Pe(t)&&Le(t)==hr}function my(t){return Pe(t)&&Qe(t)==_h}var Ay=Mi(uo),yy=Mi(function(t,i){return t<=i});function Sf(t){if(!t)return[];if(Je(t))return $i(t)?mt(t):qe(t);if(mr&&t[mr])return Yp(t[mr]());var i=Le(t),a=i==pt?Ks:i==gt?fi:$n;return a(t)}function Ht(t){if(!t)return t===0?t:0;if(t=lt(t),t===xe||t===-1/0){var i=t<0?-1:1;return i*Fe}return t===t?t:0}function J(t){var i=Ht(t),a=i%1;return i===i?a?i-a:i:0}function Rf(t){return t?bn(J(t),0,ht):0}function lt(t){if(typeof t=="number")return t;if(tt(t))return _t;if(Ee(t)){var i=typeof t.valueOf=="function"?t.valueOf():t;t=Ee(i)?i+"":i}if(typeof t!="string")return t===0?t:+t;t=qu(t);var a=Xh.test(t);return a||tp.test(t)?Np(t.slice(2),a?2:8):Zh.test(t)?_t:+t}function Df(t){return vt(t,Ke(t))}function wy(t){return t?bn(J(t),-9007199254740991,ve):t===0?t:0}function le(t){return t==null?"":et(t)}var by=Hn(function(t,i){if(Br(i)||Je(i)){vt(i,_e(i),t);return}for(var a in i)de.call(i,a)&&xr(t,a,i[a])}),Cf=Hn(function(t,i){vt(i,Ke(i),t)}),Vi=Hn(function(t,i,a,f){vt(i,Ke(i),t,f)}),xy=Hn(function(t,i,a,f){vt(i,_e(i),t,f)}),Ey=kt(to);function vy(t,i){var a=Gn(t);return i==null?a:uc(a,i)}var Py=Z(function(t,i){t=he(t);var a=-1,f=i.length,d=f>2?i[2]:r;for(d&&ze(i[0],i[1],d)&&(f=1);++a<f;)for(var g=i[a],y=Ke(g),b=-1,v=y.length;++b<v;){var R=y[b],D=t[R];(D===r||yt(D,Fn[R])&&!de.call(t,R))&&(t[R]=g[R])}return t}),Ty=Z(function(t){return t.push(r,qc),Ze(_f,r,t)});function Iy(t,i){return zu(t,z(i,3),Et)}function By(t,i){return zu(t,z(i,3),ro)}function Sy(t,i){return t==null?t:no(t,z(i,3),Ke)}function Ry(t,i){return t==null?t:hc(t,z(i,3),Ke)}function Dy(t,i){return t&&Et(t,z(i,3))}function Cy(t,i){return t&&ro(t,z(i,3))}function _y(t){return t==null?[]:Bi(t,_e(t))}function Ny(t){return t==null?[]:Bi(t,Ke(t))}function Uo(t,i,a){var f=t==null?r:xn(t,i);return f===r?a:f}function Oy(t,i){return t!=null&&Yc(t,i,r0)}function Fo(t,i){return t!=null&&Yc(t,i,i0)}var My=Qc(function(t,i,a){i!=null&&typeof i.toString!="function"&&(i=pi.call(i)),t[i]=a},Lo(Ye)),Uy=Qc(function(t,i,a){i!=null&&typeof i.toString!="function"&&(i=pi.call(i)),de.call(t,i)?t[i].push(a):t[i]=[a]},z),Fy=Z(vr);function _e(t){return Je(t)?oc(t):ao(t)}function Ke(t){return Je(t)?oc(t,!0):p0(t)}function ky(t,i){var a={};return i=z(i,3),Et(t,function(f,d,g){Ut(a,i(f,d,g),f)}),a}function Ly(t,i){var a={};return i=z(i,3),Et(t,function(f,d,g){Ut(a,d,i(f,d,g))}),a}var Gy=Hn(function(t,i,a){Si(t,i,a)}),_f=Hn(function(t,i,a,f){Si(t,i,a,f)}),Hy=kt(function(t,i){var a={};if(t==null)return a;var f=!1;i=ye(i,function(g){return g=sn(g,t),f||(f=g.length>1),g}),vt(t,Eo(t),a),f&&(a=ut(a,w|x|T,M0));for(var d=i.length;d--;)po(a,i[d]);return a});function Qy(t,i){return Nf(t,zi(z(i)))}var zy=kt(function(t,i){return t==null?{}:m0(t,i)});function Nf(t,i){if(t==null)return{};var a=ye(Eo(t),function(f){return[f]});return i=z(i),vc(t,a,function(f,d){return i(f,d[0])})}function Wy(t,i,a){i=sn(i,t);var f=-1,d=i.length;for(d||(d=1,t=r);++f<d;){var g=t==null?r:t[Pt(i[f])];g===r&&(f=d,g=a),t=Gt(g)?g.call(t):g}return t}function $y(t,i,a){return t==null?t:Tr(t,i,a)}function Vy(t,i,a,f){return f=typeof f=="function"?f:r,t==null?t:Tr(t,i,a,f)}var Of=$c(_e),Mf=$c(Ke);function qy(t,i,a){var f=q(t),d=f||an(t)||Wn(t);if(i=z(i,4),a==null){var g=t&&t.constructor;d?a=f?new g:[]:Ee(t)?a=Gt(g)?Gn(Ai(t)):{}:a={}}return(d?st:Et)(t,function(y,b,v){return i(a,y,b,v)}),a}function Jy(t,i){return t==null?!0:po(t,i)}function Ky(t,i,a){return t==null?t:Sc(t,i,Ao(a))}function Yy(t,i,a,f){return f=typeof f=="function"?f:r,t==null?t:Sc(t,i,Ao(a),f)}function $n(t){return t==null?[]:Js(t,_e(t))}function jy(t){return t==null?[]:Js(t,Ke(t))}function Zy(t,i,a){return a===r&&(a=i,i=r),a!==r&&(a=lt(a),a=a===a?a:0),i!==r&&(i=lt(i),i=i===i?i:0),bn(lt(t),i,a)}function Xy(t,i,a){return i=Ht(i),a===r?(a=i,i=0):a=Ht(a),t=lt(t),s0(t,i,a)}function ew(t,i,a){if(a&&typeof a!="boolean"&&ze(t,i,a)&&(i=a=r),a===r&&(typeof i=="boolean"?(a=i,i=r):typeof t=="boolean"&&(a=t,t=r)),t===r&&i===r?(t=0,i=1):(t=Ht(t),i===r?(i=t,t=0):i=Ht(i)),t>i){var f=t;t=i,i=f}if(a||t%1||i%1){var d=ic();return ke(t+d*(i-t+_p("1e-"+((d+"").length-1))),i)}return fo(t,i)}var tw=Qn(function(t,i,a){return i=i.toLowerCase(),t+(a?Uf(i):i)});function Uf(t){return ko(le(t).toLowerCase())}function Ff(t){return t=le(t),t&&t.replace(rp,$p).replace(Ep,"")}function nw(t,i,a){t=le(t),i=et(i);var f=t.length;a=a===r?f:bn(J(a),0,f);var d=a;return a-=i.length,a>=0&&t.slice(a,d)==i}function rw(t){return t=le(t),t&&Fh.test(t)?t.replace(hu,Vp):t}function iw(t){return t=le(t),t&&zh.test(t)?t.replace(_s,"\\$&"):t}var sw=Qn(function(t,i,a){return t+(a?"-":"")+i.toLowerCase()}),ow=Qn(function(t,i,a){return t+(a?" ":"")+i.toLowerCase()}),aw=Lc("toLowerCase");function uw(t,i,a){t=le(t),i=J(i);var f=i?Mn(t):0;if(!i||f>=i)return t;var d=(i-f)/2;return Oi(xi(d),a)+t+Oi(bi(d),a)}function cw(t,i,a){t=le(t),i=J(i);var f=i?Mn(t):0;return i&&f<i?t+Oi(i-f,a):t}function fw(t,i,a){t=le(t),i=J(i);var f=i?Mn(t):0;return i&&f<i?Oi(i-f,a)+t:t}function lw(t,i,a){return a||i==null?i=0:i&&(i=+i),yg(le(t).replace(Ns,""),i||0)}function dw(t,i,a){return(a?ze(t,i,a):i===r)?i=1:i=J(i),lo(le(t),i)}function hw(){var t=arguments,i=le(t[0]);return t.length<3?i:i.replace(t[1],t[2])}var pw=Qn(function(t,i,a){return t+(a?"_":"")+i.toLowerCase()});function gw(t,i,a){return a&&typeof a!="number"&&ze(t,i,a)&&(i=a=r),a=a===r?ht:a>>>0,a?(t=le(t),t&&(typeof i=="string"||i!=null&&!Mo(i))&&(i=et(i),!i&&On(t))?on(mt(t),0,a):t.split(i,a)):[]}var mw=Qn(function(t,i,a){return t+(a?" ":"")+ko(i)});function Aw(t,i,a){return t=le(t),a=a==null?0:bn(J(a),0,t.length),i=et(i),t.slice(a,a+i.length)==i}function yw(t,i,a){var f=p.templateSettings;a&&ze(t,i,a)&&(i=r),t=le(t),i=Vi({},i,f,Vc);var d=Vi({},i.imports,f.imports,Vc),g=_e(d),y=Js(d,g),b,v,R=0,D=i.interpolate||si,_="__p += '",U=Ys((i.escape||si).source+"|"+D.source+"|"+(D===pu?jh:si).source+"|"+(i.evaluate||si).source+"|$","g"),L="//# sourceURL="+(de.call(i,"sourceURL")?(i.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Bp+"]")+`
`;t.replace(U,function($,te,ie,nt,We,rt){return ie||(ie=nt),_+=t.slice(R,rt).replace(ip,qp),te&&(b=!0,_+=`' +
__e(`+te+`) +
'`),We&&(v=!0,_+=`';
`+We+`;
__p += '`),ie&&(_+=`' +
((__t = (`+ie+`)) == null ? '' : __t) +
'`),R=rt+$.length,$}),_+=`';
`;var W=de.call(i,"variable")&&i.variable;if(!W)_=`with (obj) {
`+_+`
}
`;else if(Kh.test(W))throw new V(l);_=(v?_.replace(Nh,""):_).replace(Oh,"$1").replace(Mh,"$1;"),_="function("+(W||"obj")+`) {
`+(W?"":`obj || (obj = {});
`)+"var __t, __p = ''"+(b?", __e = _.escape":"")+(v?`, __j = Array.prototype.join;
function print() { __p += __j.call(arguments, '') }
`:`;
`)+_+`return __p
}`;var j=Lf(function(){return ue(g,L+"return "+_).apply(r,y)});if(j.source=_,Oo(j))throw j;return j}function ww(t){return le(t).toLowerCase()}function bw(t){return le(t).toUpperCase()}function xw(t,i,a){if(t=le(t),t&&(a||i===r))return qu(t);if(!t||!(i=et(i)))return t;var f=mt(t),d=mt(i),g=Ju(f,d),y=Ku(f,d)+1;return on(f,g,y).join("")}function Ew(t,i,a){if(t=le(t),t&&(a||i===r))return t.slice(0,ju(t)+1);if(!t||!(i=et(i)))return t;var f=mt(t),d=Ku(f,mt(i))+1;return on(f,0,d).join("")}function vw(t,i,a){if(t=le(t),t&&(a||i===r))return t.replace(Ns,"");if(!t||!(i=et(i)))return t;var f=mt(t),d=Ju(f,mt(i));return on(f,d).join("")}function Pw(t,i){var a=ge,f=Y;if(Ee(i)){var d="separator"in i?i.separator:d;a="length"in i?J(i.length):a,f="omission"in i?et(i.omission):f}t=le(t);var g=t.length;if(On(t)){var y=mt(t);g=y.length}if(a>=g)return t;var b=a-Mn(f);if(b<1)return f;var v=y?on(y,0,b).join(""):t.slice(0,b);if(d===r)return v+f;if(y&&(b+=v.length-b),Mo(d)){if(t.slice(b).search(d)){var R,D=v;for(d.global||(d=Ys(d.source,le(gu.exec(d))+"g")),d.lastIndex=0;R=d.exec(D);)var _=R.index;v=v.slice(0,_===r?b:_)}}else if(t.indexOf(et(d),b)!=b){var U=v.lastIndexOf(d);U>-1&&(v=v.slice(0,U))}return v+f}function Tw(t){return t=le(t),t&&Uh.test(t)?t.replace(du,eg):t}var Iw=Qn(function(t,i,a){return t+(a?" ":"")+i.toUpperCase()}),ko=Lc("toUpperCase");function kf(t,i,a){return t=le(t),i=a?r:i,i===r?Kp(t)?rg(t):Gp(t):t.match(i)||[]}var Lf=Z(function(t,i){try{return Ze(t,r,i)}catch(a){return Oo(a)?a:new V(a)}}),Bw=kt(function(t,i){return st(i,function(a){a=Pt(a),Ut(t,a,_o(t[a],t))}),t});function Sw(t){var i=t==null?0:t.length,a=z();return t=i?ye(t,function(f){if(typeof f[1]!="function")throw new ot(c);return[a(f[0]),f[1]]}):[],Z(function(f){for(var d=-1;++d<i;){var g=t[d];if(Ze(g[0],this,f))return Ze(g[1],this,f)}})}function Rw(t){return e0(ut(t,w))}function Lo(t){return function(){return t}}function Dw(t,i){return t==null||t!==t?i:t}var Cw=Hc(),_w=Hc(!0);function Ye(t){return t}function Go(t){return Ac(typeof t=="function"?t:ut(t,w))}function Nw(t){return wc(ut(t,w))}function Ow(t,i){return bc(t,ut(i,w))}var Mw=Z(function(t,i){return function(a){return vr(a,t,i)}}),Uw=Z(function(t,i){return function(a){return vr(t,a,i)}});function Ho(t,i,a){var f=_e(i),d=Bi(i,f);a==null&&!(Ee(i)&&(d.length||!f.length))&&(a=i,i=t,t=this,d=Bi(i,_e(i)));var g=!(Ee(a)&&"chain"in a)||!!a.chain,y=Gt(t);return st(d,function(b){var v=i[b];t[b]=v,y&&(t.prototype[b]=function(){var R=this.__chain__;if(g||R){var D=t(this.__wrapped__),_=D.__actions__=qe(this.__actions__);return _.push({func:v,args:arguments,thisArg:t}),D.__chain__=R,D}return v.apply(t,Xt([this.value()],arguments))})}),t}function Fw(){return Ne._===this&&(Ne._=cg),this}function Qo(){}function kw(t){return t=J(t),Z(function(i){return xc(i,t)})}var Lw=wo(ye),Gw=wo(Qu),Hw=wo(zs);function Gf(t){return Io(t)?Ws(Pt(t)):A0(t)}function Qw(t){return function(i){return t==null?r:xn(t,i)}}var zw=zc(),Ww=zc(!0);function zo(){return[]}function Wo(){return!1}function $w(){return{}}function Vw(){return""}function qw(){return!0}function Jw(t,i){if(t=J(t),t<1||t>ve)return[];var a=ht,f=ke(t,ht);i=z(i),t-=ht;for(var d=qs(f,i);++a<t;)i(a);return d}function Kw(t){return q(t)?ye(t,Pt):tt(t)?[t]:qe(of(le(t)))}function Yw(t){var i=++ag;return le(t)+i}var jw=Ni(function(t,i){return t+i},0),Zw=bo("ceil"),Xw=Ni(function(t,i){return t/i},1),eb=bo("floor");function tb(t){return t&&t.length?Ii(t,Ye,io):r}function nb(t,i){return t&&t.length?Ii(t,z(i,2),io):r}function rb(t){return $u(t,Ye)}function ib(t,i){return $u(t,z(i,2))}function sb(t){return t&&t.length?Ii(t,Ye,uo):r}function ob(t,i){return t&&t.length?Ii(t,z(i,2),uo):r}var ab=Ni(function(t,i){return t*i},1),ub=bo("round"),cb=Ni(function(t,i){return t-i},0);function fb(t){return t&&t.length?Vs(t,Ye):0}function lb(t,i){return t&&t.length?Vs(t,z(i,2)):0}return p.after=NA,p.ary=Af,p.assign=by,p.assignIn=Cf,p.assignInWith=Vi,p.assignWith=xy,p.at=Ey,p.before=yf,p.bind=_o,p.bindAll=Bw,p.bindKey=wf,p.castArray=$A,p.chain=pf,p.chunk=em,p.compact=tm,p.concat=nm,p.cond=Sw,p.conforms=Rw,p.constant=Lo,p.countBy=fA,p.create=vy,p.curry=bf,p.curryRight=xf,p.debounce=Ef,p.defaults=Py,p.defaultsDeep=Ty,p.defer=OA,p.delay=MA,p.difference=rm,p.differenceBy=im,p.differenceWith=sm,p.drop=om,p.dropRight=am,p.dropRightWhile=um,p.dropWhile=cm,p.fill=fm,p.filter=dA,p.flatMap=gA,p.flatMapDeep=mA,p.flatMapDepth=AA,p.flatten=ff,p.flattenDeep=lm,p.flattenDepth=dm,p.flip=UA,p.flow=Cw,p.flowRight=_w,p.fromPairs=hm,p.functions=_y,p.functionsIn=Ny,p.groupBy=yA,p.initial=gm,p.intersection=mm,p.intersectionBy=Am,p.intersectionWith=ym,p.invert=My,p.invertBy=Uy,p.invokeMap=bA,p.iteratee=Go,p.keyBy=xA,p.keys=_e,p.keysIn=Ke,p.map=Gi,p.mapKeys=ky,p.mapValues=Ly,p.matches=Nw,p.matchesProperty=Ow,p.memoize=Qi,p.merge=Gy,p.mergeWith=_f,p.method=Mw,p.methodOf=Uw,p.mixin=Ho,p.negate=zi,p.nthArg=kw,p.omit=Hy,p.omitBy=Qy,p.once=FA,p.orderBy=EA,p.over=Lw,p.overArgs=kA,p.overEvery=Gw,p.overSome=Hw,p.partial=No,p.partialRight=vf,p.partition=vA,p.pick=zy,p.pickBy=Nf,p.property=Gf,p.propertyOf=Qw,p.pull=Em,p.pullAll=df,p.pullAllBy=vm,p.pullAllWith=Pm,p.pullAt=Tm,p.range=zw,p.rangeRight=Ww,p.rearg=LA,p.reject=IA,p.remove=Im,p.rest=GA,p.reverse=Do,p.sampleSize=SA,p.set=$y,p.setWith=Vy,p.shuffle=RA,p.slice=Bm,p.sortBy=_A,p.sortedUniq=Om,p.sortedUniqBy=Mm,p.split=gw,p.spread=HA,p.tail=Um,p.take=Fm,p.takeRight=km,p.takeRightWhile=Lm,p.takeWhile=Gm,p.tap=tA,p.throttle=QA,p.thru=Li,p.toArray=Sf,p.toPairs=Of,p.toPairsIn=Mf,p.toPath=Kw,p.toPlainObject=Df,p.transform=qy,p.unary=zA,p.union=Hm,p.unionBy=Qm,p.unionWith=zm,p.uniq=Wm,p.uniqBy=$m,p.uniqWith=Vm,p.unset=Jy,p.unzip=Co,p.unzipWith=hf,p.update=Ky,p.updateWith=Yy,p.values=$n,p.valuesIn=jy,p.without=qm,p.words=kf,p.wrap=WA,p.xor=Jm,p.xorBy=Km,p.xorWith=Ym,p.zip=jm,p.zipObject=Zm,p.zipObjectDeep=Xm,p.zipWith=eA,p.entries=Of,p.entriesIn=Mf,p.extend=Cf,p.extendWith=Vi,Ho(p,p),p.add=jw,p.attempt=Lf,p.camelCase=tw,p.capitalize=Uf,p.ceil=Zw,p.clamp=Zy,p.clone=VA,p.cloneDeep=JA,p.cloneDeepWith=KA,p.cloneWith=qA,p.conformsTo=YA,p.deburr=Ff,p.defaultTo=Dw,p.divide=Xw,p.endsWith=nw,p.eq=yt,p.escape=rw,p.escapeRegExp=iw,p.every=lA,p.find=hA,p.findIndex=uf,p.findKey=Iy,p.findLast=pA,p.findLastIndex=cf,p.findLastKey=By,p.floor=eb,p.forEach=gf,p.forEachRight=mf,p.forIn=Sy,p.forInRight=Ry,p.forOwn=Dy,p.forOwnRight=Cy,p.get=Uo,p.gt=jA,p.gte=ZA,p.has=Oy,p.hasIn=Fo,p.head=lf,p.identity=Ye,p.includes=wA,p.indexOf=pm,p.inRange=Xy,p.invoke=Fy,p.isArguments=Pn,p.isArray=q,p.isArrayBuffer=XA,p.isArrayLike=Je,p.isArrayLikeObject=Ie,p.isBoolean=ey,p.isBuffer=an,p.isDate=ty,p.isElement=ny,p.isEmpty=ry,p.isEqual=iy,p.isEqualWith=sy,p.isError=Oo,p.isFinite=oy,p.isFunction=Gt,p.isInteger=Pf,p.isLength=Wi,p.isMap=Tf,p.isMatch=ay,p.isMatchWith=uy,p.isNaN=cy,p.isNative=fy,p.isNil=dy,p.isNull=ly,p.isNumber=If,p.isObject=Ee,p.isObjectLike=Pe,p.isPlainObject=Rr,p.isRegExp=Mo,p.isSafeInteger=hy,p.isSet=Bf,p.isString=$i,p.isSymbol=tt,p.isTypedArray=Wn,p.isUndefined=py,p.isWeakMap=gy,p.isWeakSet=my,p.join=wm,p.kebabCase=sw,p.last=ft,p.lastIndexOf=bm,p.lowerCase=ow,p.lowerFirst=aw,p.lt=Ay,p.lte=yy,p.max=tb,p.maxBy=nb,p.mean=rb,p.meanBy=ib,p.min=sb,p.minBy=ob,p.stubArray=zo,p.stubFalse=Wo,p.stubObject=$w,p.stubString=Vw,p.stubTrue=qw,p.multiply=ab,p.nth=xm,p.noConflict=Fw,p.noop=Qo,p.now=Hi,p.pad=uw,p.padEnd=cw,p.padStart=fw,p.parseInt=lw,p.random=ew,p.reduce=PA,p.reduceRight=TA,p.repeat=dw,p.replace=hw,p.result=Wy,p.round=ub,p.runInContext=E,p.sample=BA,p.size=DA,p.snakeCase=pw,p.some=CA,p.sortedIndex=Sm,p.sortedIndexBy=Rm,p.sortedIndexOf=Dm,p.sortedLastIndex=Cm,p.sortedLastIndexBy=_m,p.sortedLastIndexOf=Nm,p.startCase=mw,p.startsWith=Aw,p.subtract=cb,p.sum=fb,p.sumBy=lb,p.template=yw,p.times=Jw,p.toFinite=Ht,p.toInteger=J,p.toLength=Rf,p.toLower=ww,p.toNumber=lt,p.toSafeInteger=wy,p.toString=le,p.toUpper=bw,p.trim=xw,p.trimEnd=Ew,p.trimStart=vw,p.truncate=Pw,p.unescape=Tw,p.uniqueId=Yw,p.upperCase=Iw,p.upperFirst=ko,p.each=gf,p.eachRight=mf,p.first=lf,Ho(p,function(){var t={};return Et(p,function(i,a){de.call(p.prototype,a)||(t[a]=i)}),t}(),{chain:!1}),p.VERSION=s,st(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){p[t].placeholder=p}),st(["drop","take"],function(t,i){ne.prototype[t]=function(a){a=a===r?1:De(J(a),0);var f=this.__filtered__&&!i?new ne(this):this.clone();return f.__filtered__?f.__takeCount__=ke(a,f.__takeCount__):f.__views__.push({size:ke(a,ht),type:t+(f.__dir__<0?"Right":"")}),f},ne.prototype[t+"Right"]=function(a){return this.reverse()[t](a).reverse()}}),st(["filter","map","takeWhile"],function(t,i){var a=i+1,f=a==Te||a==Ve;ne.prototype[t]=function(d){var g=this.clone();return g.__iteratees__.push({iteratee:z(d,3),type:a}),g.__filtered__=g.__filtered__||f,g}}),st(["head","last"],function(t,i){var a="take"+(i?"Right":"");ne.prototype[t]=function(){return this[a](1).value()[0]}}),st(["initial","tail"],function(t,i){var a="drop"+(i?"":"Right");ne.prototype[t]=function(){return this.__filtered__?new ne(this):this[a](1)}}),ne.prototype.compact=function(){return this.filter(Ye)},ne.prototype.find=function(t){return this.filter(t).head()},ne.prototype.findLast=function(t){return this.reverse().find(t)},ne.prototype.invokeMap=Z(function(t,i){return typeof t=="function"?new ne(this):this.map(function(a){return vr(a,t,i)})}),ne.prototype.reject=function(t){return this.filter(zi(z(t)))},ne.prototype.slice=function(t,i){t=J(t);var a=this;return a.__filtered__&&(t>0||i<0)?new ne(a):(t<0?a=a.takeRight(-t):t&&(a=a.drop(t)),i!==r&&(i=J(i),a=i<0?a.dropRight(-i):a.take(i-t)),a)},ne.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},ne.prototype.toArray=function(){return this.take(ht)},Et(ne.prototype,function(t,i){var a=/^(?:filter|find|map|reject)|While$/.test(i),f=/^(?:head|last)$/.test(i),d=p[f?"take"+(i=="last"?"Right":""):i],g=f||/^find/.test(i);d&&(p.prototype[i]=function(){var y=this.__wrapped__,b=f?[1]:arguments,v=y instanceof ne,R=b[0],D=v||q(y),_=function(te){var ie=d.apply(p,Xt([te],b));return f&&U?ie[0]:ie};D&&a&&typeof R=="function"&&R.length!=1&&(v=D=!1);var U=this.__chain__,L=!!this.__actions__.length,W=g&&!U,j=v&&!L;if(!g&&D){y=j?y:new ne(this);var $=t.apply(y,b);return $.__actions__.push({func:Li,args:[_],thisArg:r}),new at($,U)}return W&&j?t.apply(this,b):($=this.thru(_),W?f?$.value()[0]:$.value():$)})}),st(["pop","push","shift","sort","splice","unshift"],function(t){var i=li[t],a=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",f=/^(?:pop|shift)$/.test(t);p.prototype[t]=function(){var d=arguments;if(f&&!this.__chain__){var g=this.value();return i.apply(q(g)?g:[],d)}return this[a](function(y){return i.apply(q(y)?y:[],d)})}}),Et(ne.prototype,function(t,i){var a=p[i];if(a){var f=a.name+"";de.call(Ln,f)||(Ln[f]=[]),Ln[f].push({name:i,func:a})}}),Ln[_i(r,S).name]=[{name:"wrapper",func:r}],ne.prototype.clone=Tg,ne.prototype.reverse=Ig,ne.prototype.value=Bg,p.prototype.at=nA,p.prototype.chain=rA,p.prototype.commit=iA,p.prototype.next=sA,p.prototype.plant=aA,p.prototype.reverse=uA,p.prototype.toJSON=p.prototype.valueOf=p.prototype.value=cA,p.prototype.first=p.prototype.head,mr&&(p.prototype[mr]=oA),p},Un=ig();mn?((mn.exports=Un)._=Un,Ls._=Un):Ne._=Un}).call(QT)}(Or,Or.exports)),Or.exports}var Kn=zT();const Me=[];for(let e=0;e<256;++e)Me.push((e+256).toString(16).slice(1));function WT(e,n=0){return(Me[e[n+0]]+Me[e[n+1]]+Me[e[n+2]]+Me[e[n+3]]+"-"+Me[e[n+4]]+Me[e[n+5]]+"-"+Me[e[n+6]]+Me[e[n+7]]+"-"+Me[e[n+8]]+Me[e[n+9]]+"-"+Me[e[n+10]]+Me[e[n+11]]+Me[e[n+12]]+Me[e[n+13]]+Me[e[n+14]]+Me[e[n+15]]).toLowerCase()}let oa;const $T=new Uint8Array(16);function VT(){if(!oa){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");oa=crypto.getRandomValues.bind(crypto)}return oa($T)}const qT=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Sl={randomUUID:qT};function JT(e,n,r){var o;if(Sl.randomUUID&&!e)return Sl.randomUUID();e=e||{};const s=e.random??((o=e.rng)==null?void 0:o.call(e))??VT();if(s.length<16)throw new Error("Random bytes length must be >= 16");return s[6]=s[6]&15|64,s[8]=s[8]&63|128,WT(s)}const we={state:{},get(e){return this.state[e]?Kn.cloneDeep(this.state[e]):void 0},getExecutionOptions(e){var n,r,s,o;return{allowExecution:(r=(n=this.state[e])==null?void 0:n.executionOptions)==null?void 0:r.allowExecution,executeInBackground:(o=(s=this.state[e])==null?void 0:s.executionOptions)==null?void 0:o.executeInBackground}},set(e,n){const r=KT(e);return this.state[r.id]={route:r,executionOptions:{allowExecution:!0,executeInBackground:!1,...n}},Kn.cloneDeep(this.state[r.id])},update(e,n){var s,o;const r=Kn.cloneDeep(n);if(this.state[e]){this.state[e]={...this.state[e],route:{...this.state[e].route,...r.route??{}},executionOptions:{...this.state[e].executionOptions,...r.executionOptions??{}}};const u=Kn.cloneDeep(this.state[e].route);return(o=(s=this.state[e].executionOptions)==null?void 0:s.onUpdateHook)==null||o.call(s,u),u}},delete(e){delete this.state[e]}};function KT(e){if(!e.id){const n=JT();e.id=n,e.steps.forEach((r,s)=>{r.id=`${n}:${s}`})}return e}class YT{constructor(n){re(this,"routeId");re(this,"stepId");re(this,"_step");this.routeId=n.id.split(":")[0],this.stepId=+n.id.split(":")[1],this._step=Kn.cloneDeep(n),this.initExecution()}initExecution(){this._step.execution||(this._step.execution={status:"PENDING",process:[]}),this._step.execution.status==="FAILED"&&(this._step.execution.status="PENDING"),this.updateStepInRoute()}get step(){return this._step}get executionOptions(){return we.getExecutionOptions(this.routeId)??{}}get executionStopped(){return this.executionOptions==null?!0:!this.executionOptions.allowExecution}get interactionDisabled(){return this.executionOptions.executeInBackground==null?!1:this.executionOptions.executeInBackground}get allStepsCompleted(){return this._step.execution.process.every(n=>n.status==="DONE")}completeStep(){return this.allStepsCompleted?(this._step.execution.status="DONE",this.updateStepInRoute()):this.updateStepInRoute(!0),this._step}findOrCreateProcess(n){const r=this.getProcessByType(n.type);return r&&r.status==="DONE"?this.updateProcess(r):(this._step.execution.process.push(n),this.updateProcess(n))}updateProcess({type:n,status:r,message:s,params:o}){const u=this.getProcessByType(n);if(!u)throw new Error("Can't find a process for the given type.");switch(r){case"FAILED":this._step.execution.status="FAILED";break;case"PENDING":this._step.execution.status="PENDING";break;case"ACTION_REQUIRED":this._step.execution.status="ACTION_REQUIRED";break}if(u.status=r,u.message=s,o)for(const[l,h]of Object.entries(o))u[l]=h;const c=r==="FAILED"||r==="ACTION_REQUIRED"&&this.interactionDisabled;return this.updateStepInRoute(c),u}updateStepInRoute(n=!1){const r=we.get(this.routeId);r&&(r.route.steps[this.stepId]=this._step,n?cu(this.routeId):we.update(this.routeId,{route:r.route}))}injectLifiSteps(n){const r=we.get(this.routeId).route;this._step={...n.steps[0],type:"lifi_token_swap",id:`${this.routeId}:${this.stepId}`},r.steps[this.stepId]={...this._step,lifiRoute:n},we.update(this.routeId,{route:r})}getProcessByType(n){if(!this._step.execution)throw new Error("Can't find a process in an empty execution");return this._step.execution.process.find(r=>r.type===n)??null}}class Th{constructor(n,r){re(this,"routeId");re(this,"stepManager");this.routeId=n.id,this.stepManager=new YT(Kn.cloneDeep(r))}get route(){return we.get(this.routeId).route}}class jT extends Th{constructor(n,r){super(n,r)}async executeStep(){let n;try{if(this.stepManager.step.lifiRoute)n=await _T(this.stepManager.step.lifiRoute,{updateRouteHook:this.onUpdateHook.bind(this),executeInBackground:this.stepManager.executionOptions.executeInBackground});else{const r=kT(this.stepManager.step.swapQuote);n=await Ph(r,{updateRouteHook:this.onUpdateHook.bind(this),executeInBackground:this.stepManager.executionOptions.executeInBackground})}this.stepManager.injectLifiSteps(n)}catch{}finally{return this.stepManager.completeStep()}}onUpdateHook(n){this.processRoute(n)}processRoute(n){var s,o,u;const r=(o=(s=n.steps[0].execution)==null?void 0:s.process)==null?void 0:o[n.steps[0].execution.process.length-1];if(r&&r.status==="FAILED"&&!r.message)switch((u=r.error)==null?void 0:u.code){case 1002:r.message=It.TransactionUnderpriced;break;case 1003:r.message=It.TransactionReverted;break;case 1007:r.message="Chain switch is required.";break;case 1009:r.message=It.GasLimitLow;break;case 1010:r.message="Transaction was cancelled.";break;case 1011:r.message=It.SlippageError;break;case 1012:r.message="Signature required.";break;case 1013:r.message="The balance is too low to complete transaction.";break;case 1015:r.message="Insufficient funds to complete transaction.";break;case 1017:r.message="Wallet was changed during execution.";break;default:r.message="Action failed.";break}this.stepManager.injectLifiSteps(n)}}async function ZT(e){const n=ln.get().apiUrl,r=new URL(`${n}/order-status/transak`);return r.searchParams.append("orderId",e),ln.get().dev&&r.searchParams.append("dev","true"),await fetch(r).then(o=>o.json()).then(o=>o).catch(o=>{throw o})}class XT extends Th{constructor(n,r){super(n,r)}async executeStep(){if(this.stepManager.step.type==="onramp_via_link")try{const r=await this.openOnRampLink();if(r.status!=="DONE")return cu(this.stepManager.routeId),this.stepManager.step;await this.checkOrderStatus(r.orderId)}catch(r){throw new Error(`TRANSAK_STEP_ERROR: ${r.message}`)}return this.stepManager.completeStep()}async checkOrderStatus(n){if(!n)throw new Error("No Order ID provided to check status.");const r="STATUS_CHECK",s=this.stepManager.findOrCreateProcess({status:"PENDING",type:r,message:"Checking order status with Transak."});return new Promise(o=>{const u=async l=>{const h=await ZT(n);if(this.stepManager.executionStopped)return clearInterval(l),o(s);if(h.status==="AWAITING_PAYMENT_FROM_USER"||h.status==="PAYMENT_DONE_MARKED_BY_USER")this.stepManager.updateProcess({status:"PENDING",type:r,message:"Transak order is awaiting for payment."});else if(h.status==="PROCESSING"||h.status==="PENDING_DELIVERY_FROM_TRANSAK")this.stepManager.updateProcess({status:"PENDING",type:r,message:"Payment is pending processing with Transak."});else if(h.status==="ON_HOLD_PENDING_DELIVERY_FROM_TRANSAK")this.stepManager.updateProcess({status:"PENDING",type:r,message:`Order is on hold pending delivery from Transak. Order ID: ${n}`});else{if(h.status==="COMPLETED")return clearInterval(l),o(this.stepManager.updateProcess({status:"DONE",type:r,message:"Payment completed successfully.",params:{toAmount:h.cryptoAmount,toToken:h.cryptoCurrency,fromAmount:h.fiatAmount,fromCurrency:h.fiatCurrency}}));if(h.status==="CANCELLED")return clearInterval(l),o(this.stepManager.updateProcess({status:"CANCELLED",type:r,message:"Payment was cancelled."}));if(h.status==="EXPIRED")return clearInterval(l),o(this.stepManager.updateProcess({status:"CANCELLED",type:r,message:"Order expired."}));if(h.status==="REFUNDED")return clearInterval(l),o(this.stepManager.updateProcess({status:"CANCELLED",type:r,message:"Order was refunded."}));if(h.status==="FAILED")return clearInterval(l),o(this.stepManager.updateProcess({status:"FAILED",type:r,message:"Order failed: "+h.statusMessage}))}},c=setInterval(async()=>{await u(c)},3e3)})}async openOnRampLink(){const n="EXTERNAL",r=this.stepManager.findOrCreateProcess({status:"ACTION_REQUIRED",type:n,message:"Complete payment process in Transak window."});return new Promise(s=>{if(r.status==="DONE"&&r.orderId||this.stepManager.executionStopped||this.stepManager.interactionDisabled)return s(r);const o=new URL(this.stepManager.step.link);o.searchParams.set("redirectURL",window.location.origin);const u=window.open(o.toString(),"_blank","width=600,height=800");if(!u)return s(this.stepManager.updateProcess({status:"FAILED",type:n,message:"Payment window failed to open."}));const c=setInterval(()=>{if(!u||u.closed)return clearInterval(c),clearInterval(l),s(this.stepManager.updateProcess({status:"CANCELLED",type:n,message:"Payment window was closed before completing the process."}))},1e3),l=setInterval(()=>{try{const h=u==null?void 0:u.location.href;if(!h||!h.startsWith(window.location.origin))return;const m=new URL(h),A=m.searchParams.get("orderId"),w=m.searchParams.get("status");if(A&&w)switch(clearInterval(c),clearInterval(l),u==null||u.close(),w){case"COMPLETED":case"AWAITING_PAYMENT_FROM_USER":case"ON_HOLD_PENDING_DELIVERY_FROM_TRANSAK":case"PAYMENT_DONE_MARKED_BY_USER":case"PENDING_DELIVERY_FROM_TRANSAK":case"PROCESSING":return s(this.stepManager.updateProcess({status:"DONE",type:n,message:`Payment completed with Transak. Order ID: ${A}`,params:{orderId:A}}));case"FAILED":case"CANCELLED":case"EXPIRED":case"REFUNDED":return s(this.stepManager.updateProcess({status:"FAILED",type:n,message:`Payment failed with Transak. Order ID: ${A}`,params:{orderId:A}}));default:return s(this.stepManager.updateProcess({status:"FAILED",type:n,message:`Unknown order status received from Transak. Order ID: ${A}`,params:{orderId:A}}))}}catch(h){if(h instanceof DOMException&&h.name==="SecurityError")return}},1e3)})}}function e2(e,n){if(n.type==="onramp_via_link")switch(e.provider.key){case"transak":return new XT(e,n)}else if(n.type==="lifi_token_swap")return new jT(e,n);throw new Error(`No executor found for ${n.type}`)}async function Ih(e,n){if(e.id){const o=we.get(e.id);if(o!=null&&o.promise)return o.promise}const r=we.set({...e,status:"RUNNING"},n),s=i2(r);return we.update(r.route.id,{promise:s}),s}function t2(e,n){const r=we.get(e.id);if(r&&"executeInBackground"in n){we.update(e.id,{executionOptions:n});const s=r.route.steps.find(o=>o.type.includes("lifi"));s&&s.lifiRoute&&uu(s.lifiRoute,{executeInBackground:n.executeInBackground})}}function cu(e){const n=we.get(e);if(!n)return;we.update(e,{route:{...n.route,status:"HALTING"},executionOptions:{allowExecution:!1}});const r=n.route.steps.find(s=>s.type.includes("lifi"));r&&r.lifiRoute&&Ma(r.lifiRoute)}async function n2(e,n){if(!e.id)return Promise.reject({error:new Error("Quote does not have an id. Please call executeRoute instead."),route:e});const r=we.get(e.id);if(r)return r.promise;const s=await r2(e);return Ih(s,n)}async function r2(e){for(let n=0;n<e.steps.length;n++){const r=e.steps[n];r.execution&&(r.execution.process=r.execution.process.filter(s=>s.status==="DONE"))}return e}async function i2(e){var o,u;for(let c=0;c<e.route.steps.length;c++){if(((o=e.route.steps[c].execution)==null?void 0:o.status)==="DONE")continue;const h=e2(e.route,e.route.steps[c]);try{await h.executeStep();const m=we.get(e.route.id);if(m&&!((u=m.executionOptions)!=null&&u.allowExecution)){const A=we.update(m.route.id,{route:{...m.route,status:"HALTED"}});return we.delete(A.id),A}}catch(m){const A=we.get(e.route.id);throw we.update(A.route.id,{route:{...A.route,status:"HALTED"}}),we.delete(A.route.id),new Error("ERROR in SDK",m)}}const n=we.get(e.route.id),r=n.route.steps.every(c=>{var l;return((l=c.execution)==null?void 0:l.status)==="DONE"});let s;return r?s=we.update(n.route.id,{route:{...n.route,status:"DONE"}}):s=we.update(n.route.id,{route:{...n.route,status:"HALTED"}}),we.delete(s.id),s}function s2(e,n,r="include"){return n.length?e.map(o=>({...o,paymentMethods:o.paymentMethods.filter(u=>{const c=n.includes(u.method);return r==="include"?c:!c})})).filter(o=>o.paymentMethods.length>0):[...e]}function o2(e,n,r){return{type:e,provider:r,...n}}function a2(e,n=!0,r="asc"){const s=(o,u)=>{const c=r==="asc"?1:-1;return(o.pay.totalFeeFiat-u.pay.totalFeeFiat)*c};return n?e.map(o=>({...o,paymentMethods:[...o.paymentMethods].sort(s)})):e.flatMap(o=>o.paymentMethods.map(u=>({...o,paymentMethods:[u]}))).sort((o,u)=>s(o.paymentMethods[0],u.paymentMethods[0]))}function u2(e){return e.flatMap(r=>r.paymentMethods.map(s=>({...r,paymentMethods:[s]}))).sort((r,s)=>r.paymentMethods[0].receive.amountFiat-s.paymentMethods[0].receive.amountFiat)}function c2(e){return e.map(n=>({...n,paymentMethods:n.paymentMethods.sort((r,s)=>r.receive.amountFiat-s.receive.amountFiat)}))}exports.BaseError=O;exports.EVM=DT;exports.Hash=ka;exports.HttpRequestError=U1;exports.InvalidAddressError=Xn;exports.abytes=qr;exports.aexists=Fr;exports.ahash=Fb;exports.call=Hd;exports.concat=gn;exports.concatBytes=qb;exports.config=ln;exports.createOnRampConfig=LT;exports.decodeErrorResult=Md;exports.encodeAbiParameters=Jr;exports.executeRoute=Ih;exports.fetchConfig=HT;exports.fetchQuotes=GT;exports.filterByPaymentMethod=s2;exports.getUrl=Va;exports.isAddress=Jt;exports.isHex=St;exports.localBatchGatewayRequest=DE;exports.localBatchGatewayUrl=Fd;exports.quoteToRoute=o2;exports.randomBytes=Jb;exports.resumeRouteExecution=n2;exports.sha256=hd;exports.sortByFees=a2;exports.sortByHighestReturn=u2;exports.sortProviderQuotes=c2;exports.stopRouteExecution=cu;exports.stringify=Rt;exports.toBytes=hs;exports.updateRouteExecution=t2;
//# sourceMappingURL=index-Bx76ZFXt.cjs.map