;
! function() {
    try {
        var e = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof global ? global : "undefined" != typeof window ? window : "undefined" != typeof self ? self : {},
            n = (new e.Error).stack;
        n && ((e._debugIds || (e._debugIds = {}))[n] = "da5c5a11-e979-0808-71ad-a70f74326a11")
    } catch (e) {}
}();
(globalThis.TURBOPACK || (globalThis.TURBOPACK = [])).push(["object" == typeof document ? document.currentScript : void 0, 514034, e => {
    "use strict";
    var t = e.i(621030);
    class r extends t.BaseError {
        constructor({
            docsPath: e
        } = {}) {
            super("Could not find an Account to execute with this Action.\nPlease provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.", {
                docsPath: e,
                docsSlug: "account",
                name: "AccountNotFoundError"
            })
        }
    }
    class n extends t.BaseError {
        constructor({
            docsPath: e,
            metaMessages: t,
            type: r
        }) {
            super(`Account type "${r}" is not supported.`, {
                docsPath: e,
                metaMessages: t,
                name: "AccountTypeNotSupportedError"
            })
        }
    }
    e.s(["AccountNotFoundError", 0, r, "AccountTypeNotSupportedError", 0, n])
}, 749084, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(514034),
        n = e.i(186897);
    async function i(e, {
        account: a = e.account,
        message: s
    }) {
        if (!a) throw new r.AccountNotFoundError({
            docsPath: "/docs/actions/wallet/signMessage"
        });
        let o = (0, t.parseAccount)(a);
        if (o.signMessage) return o.signMessage({
            message: s
        });
        let c = "string" == typeof s ? (0, n.stringToHex)(s) : s.raw instanceof Uint8Array ? (0, n.toHex)(s.raw) : s.raw;
        return e.request({
            method: "personal_sign",
            params: [c, o.address]
        }, {
            retryCount: 0
        })
    }
    e.s(["signMessage", 0, i])
}, 212146, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(762281);
    e.s(["createClient", 0, function(e) {
        let {
            batch: n,
            chain: i,
            ccipRead: a,
            dataSuffix: s,
            key: o = "base",
            name: c = "Base Client",
            type: u = "base"
        } = e, l = e.experimental_blockTag ? ? ("number" == typeof i ? .experimental_preconfirmationTime ? "pending" : void 0), d = Math.min(Math.max(Math.floor((i ? .blockTime ? ? 12e3) / 2), 500), 4e3), f = e.pollingInterval ? ? d, p = e.cacheTime ? ? f, m = e.account ? (0, t.parseAccount)(e.account) : void 0, {
            config: h,
            request: g,
            value: y
        } = e.transport({
            account: m,
            chain: i,
            pollingInterval: f
        }), b = {
            account: m,
            batch: n,
            cacheTime: p,
            ccipRead: a,
            chain: i,
            dataSuffix: s,
            key: o,
            name: c,
            pollingInterval: f,
            request: g,
            transport: { ...h,
                ...y
            },
            type: u,
            uid: (0, r.uid)(),
            ...l ? {
                experimental_blockTag: l
            } : {}
        };
        return Object.assign(b, {
            extend: function e(t) {
                return r => {
                    let n = r(t);
                    for (let e in b) delete n[e];
                    let i = { ...t,
                        ...n
                    };
                    return Object.assign(i, {
                        extend: e(i)
                    })
                }
            }(b)
        })
    }, "rpcSchema", 0, function() {
        return null
    }])
}, 883798, e => {
    "use strict";
    var t = e.i(881997);
    e.s(["custom", 0, function(e, r = {}) {
        let {
            key: n = "custom",
            methods: i,
            name: a = "Custom Provider",
            retryDelay: s
        } = r;
        return ({
            retryCount: o
        }) => (0, t.createTransport)({
            key: n,
            methods: i,
            name: a,
            request: e.request.bind(e),
            retryCount: r.retryCount ? ? o,
            retryDelay: s,
            type: "custom"
        })
    }])
}, 970413, e => {
    "use strict";
    e.s(["defineChain", 0, function(e) {
        let t = {
            formatters: void 0,
            fees: void 0,
            serializers: void 0,
            ...e
        };
        return Object.assign(t, {
            extend: function e(t) {
                return r => {
                    let n = "function" == typeof r ? r(t) : r,
                        i = { ...t,
                            ...n
                        };
                    return Object.assign(i, {
                        extend: e(i)
                    })
                }
            }(t)
        })
    }, "extendSchema", 0, function() {
        return {}
    }])
}, 536760, e => {
    "use strict";
    var t = e.i(637608),
        r = e.i(54541);
    let n = {
        "0x0": "legacy",
        "0x1": "eip2930",
        "0x2": "eip1559",
        "0x3": "eip4844",
        "0x4": "eip7702"
    };

    function i(e, r) {
        let i = { ...e,
            blockHash: e.blockHash ? e.blockHash : null,
            blockNumber: e.blockNumber ? BigInt(e.blockNumber) : null,
            ...null != e.blockTimestamp && {
                blockTimestamp: BigInt(e.blockTimestamp)
            },
            chainId: e.chainId ? (0, t.hexToNumber)(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 ? (0, t.hexToNumber)(e.nonce) : void 0,
            to: e.to ? e.to : null,
            transactionIndex: e.transactionIndex ? Number(e.transactionIndex) : null,
            type: e.type ? n[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 && (i.authorizationList = e.authorizationList.map(e => ({
            address: e.address,
            chainId: Number(e.chainId),
            nonce: Number(e.nonce),
            r: e.r,
            s: e.s,
            yParity: Number(e.yParity)
        }))), i.yParity = (() => {
            if (e.yParity) return Number(e.yParity);
            if ("bigint" == typeof i.v) {
                if (0 n === i.v || 27 n === i.v) return 0;
                if (1 n === i.v || 28 n === i.v) return 1;
                if (i.v >= 35 n) return +(i.v % 2 n === 0 n)
            }
        })(), "legacy" === i.type && (delete i.accessList, delete i.maxFeePerBlobGas, delete i.maxFeePerGas, delete i.maxPriorityFeePerGas, delete i.yParity), "eip2930" === i.type && (delete i.maxFeePerBlobGas, delete i.maxFeePerGas, delete i.maxPriorityFeePerGas), "eip1559" === i.type && delete i.maxFeePerBlobGas, i
    }
    let a = (0, r.defineFormatter)("transaction", i);
    e.s(["defineTransaction", 0, a, "formatTransaction", 0, i, "transactionType", 0, n])
}, 130178, e => {
    "use strict";
    var t = e.i(54541),
        r = e.i(536760);

    function n(e, t) {
        let n = (e.transactions ? ? []).map(e => "string" == typeof e ? e : (0, r.formatTransaction)(e));
        return { ...e,
            baseFeePerGas: e.baseFeePerGas ? BigInt(e.baseFeePerGas) : null,
            blobGasUsed: e.blobGasUsed ? BigInt(e.blobGasUsed) : void 0,
            difficulty: e.difficulty ? BigInt(e.difficulty) : void 0,
            excessBlobGas: e.excessBlobGas ? BigInt(e.excessBlobGas) : void 0,
            gasLimit: e.gasLimit ? BigInt(e.gasLimit) : void 0,
            gasUsed: e.gasUsed ? BigInt(e.gasUsed) : void 0,
            hash: e.hash ? e.hash : null,
            logsBloom: e.logsBloom ? e.logsBloom : null,
            nonce: e.nonce ? e.nonce : null,
            number: e.number ? BigInt(e.number) : null,
            size: e.size ? BigInt(e.size) : void 0,
            timestamp: e.timestamp ? BigInt(e.timestamp) : void 0,
            transactions: n,
            totalDifficulty: e.totalDifficulty ? BigInt(e.totalDifficulty) : null
        }
    }
    let i = (0, t.defineFormatter)("block", n);
    e.s(["defineBlock", 0, i, "formatBlock", 0, n])
}, 743141, e => {
    "use strict";
    e.s(["formatLog", 0, function(e, {
        args: t,
        eventName: r
    } = {}) {
        return { ...e,
            blockHash: e.blockHash ? e.blockHash : null,
            blockNumber: e.blockNumber ? BigInt(e.blockNumber) : null,
            blockTimestamp: e.blockTimestamp ? BigInt(e.blockTimestamp) : null === e.blockTimestamp ? null : void 0,
            logIndex: e.logIndex ? Number(e.logIndex) : null,
            transactionHash: e.transactionHash ? e.transactionHash : null,
            transactionIndex: e.transactionIndex ? Number(e.transactionIndex) : null,
            ...r ? {
                args: t,
                eventName: r
            } : {}
        }
    }])
}, 900042, e => {
    "use strict";
    var t = e.i(637608),
        r = e.i(54541),
        n = e.i(743141),
        i = e.i(536760);
    let a = {
        "0x0": "reverted",
        "0x1": "success"
    };

    function s(e, r) {
        let s = { ...e,
            blockNumber: e.blockNumber ? BigInt(e.blockNumber) : null,
            contractAddress: e.contractAddress ? e.contractAddress : null,
            cumulativeGasUsed: e.cumulativeGasUsed ? BigInt(e.cumulativeGasUsed) : null,
            effectiveGasPrice: e.effectiveGasPrice ? BigInt(e.effectiveGasPrice) : null,
            gasUsed: e.gasUsed ? BigInt(e.gasUsed) : null,
            logs: e.logs ? e.logs.map(e => (0, n.formatLog)(e)) : null,
            to: e.to ? e.to : null,
            transactionIndex: e.transactionIndex ? (0, t.hexToNumber)(e.transactionIndex) : null,
            status: e.status ? a[e.status] : null,
            type: e.type ? i.transactionType[e.type] || e.type : null
        };
        return e.blobGasPrice && (s.blobGasPrice = BigInt(e.blobGasPrice)), e.blobGasUsed && (s.blobGasUsed = BigInt(e.blobGasUsed)), s
    }
    let o = (0, r.defineFormatter)("transactionReceipt", s);
    e.s(["defineTransactionReceipt", 0, o, "formatTransactionReceipt", 0, s, "receiptStatuses", 0, a])
}, 632768, e => {
    "use strict";
    var t = e.i(621030),
        r = e.i(857302),
        n = e.i(318877),
        i = e.i(186897);

    function a(e, t = "hex") {
        let o = function e(t) {
                var r, i;
                let a, o, c, u;
                return Array.isArray(t) ? (o = s(a = (r = t.map(t => e(t))).reduce((e, t) => e + t.length, 0)), {
                    length: a <= 55 ? 1 + a : 1 + o + a,
                    encode(e) {
                        for (let {
                                encode: t
                            } of (a <= 55 ? e.pushByte(192 + a) : (e.pushByte(247 + o), 1 === o ? e.pushUint8(a) : 2 === o ? e.pushUint16(a) : 3 === o ? e.pushUint24(a) : e.pushUint32(a)), r)) t(e)
                    }
                }) : (u = s((c = "string" == typeof(i = t) ? (0, n.hexToBytes)(i) : i).length), {
                    length: 1 === c.length && c[0] < 128 ? 1 : c.length <= 55 ? 1 + c.length : 1 + u + c.length,
                    encode(e) {
                        1 === c.length && c[0] < 128 || (c.length <= 55 ? e.pushByte(128 + c.length) : (e.pushByte(183 + u), 1 === u ? e.pushUint8(c.length) : 2 === u ? e.pushUint16(c.length) : 3 === u ? e.pushUint24(c.length) : e.pushUint32(c.length))), e.pushBytes(c)
                    }
                })
            }(e),
            c = (0, r.createCursor)(new Uint8Array(o.length));
        return (o.encode(c), "hex" === t) ? (0, i.bytesToHex)(c.bytes) : c.bytes
    }

    function s(e) {
        if (e < 256) return 1;
        if (e < 65536) return 2;
        if (e < 0x1000000) return 3;
        if (e < 0x100000000) return 4;
        throw new t.BaseError("Length is too large.")
    }
    e.s(["bytesToRlp", 0, function(e, t = "bytes") {
        return a(e, t)
    }, "hexToRlp", 0, function(e, t = "hex") {
        return a(e, t)
    }, "toRlp", 0, a])
}, 469752, e => {
    "use strict";
    e.s(["serializeAuthorizationList", () => n]);
    var t = e.i(186897),
        r = e.i(683469);

    function n(e) {
        if (!e || 0 === e.length) return [];
        let n = [];
        for (let i of e) {
            let {
                chainId: e,
                nonce: a,
                ...s
            } = i, o = i.address;
            n.push([e ? (0, t.toHex)(e) : "0x", o, a ? (0, t.toHex)(a) : "0x", ...(0, r.toYParitySignatureArray)({}, s)])
        }
        return n
    }
}, 706139, 895315, 225120, 430344, 502930, 840406, 539959, 524770, 899953, e => {
    "use strict";
    var t = e.i(318877),
        r = e.i(186897);

    function n(e) {
        let {
            kzg: n
        } = e, i = e.to ? ? ("string" == typeof e.blobs[0] ? "hex" : "bytes"), a = "string" == typeof e.blobs[0] ? e.blobs.map(e => (0, t.hexToBytes)(e)) : e.blobs, s = [];
        for (let e of a) s.push(Uint8Array.from(n.blobToKzgCommitment(e)));
        return "bytes" === i ? s : s.map(e => (0, r.bytesToHex)(e))
    }

    function i(e) {
        let {
            kzg: n
        } = e, i = e.to ? ? ("string" == typeof e.blobs[0] ? "hex" : "bytes"), a = "string" == typeof e.blobs[0] ? e.blobs.map(e => (0, t.hexToBytes)(e)) : e.blobs, s = "string" == typeof e.commitments[0] ? e.commitments.map(e => (0, t.hexToBytes)(e)) : e.commitments, o = [];
        for (let e = 0; e < a.length; e++) {
            let t = a[e],
                r = s[e];
            o.push(Uint8Array.from(n.computeBlobKzgProof(t, r)))
        }
        return "bytes" === i ? o : o.map(e => (0, r.bytesToHex)(e))
    }
    e.s(["blobsToCommitments", 0, n], 706139), e.s(["blobsToProofs", 0, i], 895315);
    var a = e.i(281851),
        s = e.i(229315);

    function o(e, n) {
        let i = (0, a.sha256)((0, s.isHex)(e, {
            strict: !1
        }) ? (0, t.toBytes)(e) : e);
        return "bytes" === (n || "hex") ? i : (0, r.toHex)(i)
    }

    function c(e) {
        let {
            commitment: t,
            version: n = 1
        } = e, i = e.to ? ? ("string" == typeof t ? "hex" : "bytes"), a = o(t, "bytes");
        return a.set([n], 0), "bytes" === i ? a : (0, r.bytesToHex)(a)
    }
    e.s(["sha256", 0, o], 225120), e.s(["commitmentToVersionedHash", 0, c], 430344), e.s(["commitmentsToVersionedHashes", 0, function(e) {
        let {
            commitments: t,
            version: r
        } = e, n = e.to ? ? ("string" == typeof t[0] ? "hex" : "bytes"), i = [];
        for (let e of t) i.push(c({
            commitment: e,
            to: n,
            version: r
        }));
        return i
    }], 502930);
    e.s(["versionedHashVersionKzg", 0, 1], 840406);
    var u = e.i(621030);
    class l extends u.BaseError {
        constructor({
            maxSize: e,
            size: t
        }) {
            super("Blob size is too large.", {
                metaMessages: [`Max: ${e} bytes`, `Given: ${t} bytes`],
                name: "BlobSizeTooLargeError"
            })
        }
    }
    class d extends u.BaseError {
        constructor() {
            super("Blob data must not be empty.", {
                name: "EmptyBlobError"
            })
        }
    }
    class f extends u.BaseError {
        constructor({
            hash: e,
            size: t
        }) {
            super(`Versioned hash "${e}" size is invalid.`, {
                metaMessages: ["Expected: 32", `Received: ${t}`],
                name: "InvalidVersionedHashSizeError"
            })
        }
    }
    class p extends u.BaseError {
        constructor({
            hash: e,
            version: t
        }) {
            super(`Versioned hash "${e}" version is invalid.`, {
                metaMessages: ["Expected: 1", `Received: ${t}`],
                name: "InvalidVersionedHashVersionError"
            })
        }
    }
    e.s(["BlobSizeTooLargeError", 0, l, "EmptyBlobError", 0, d, "InvalidVersionedHashSizeError", 0, f, "InvalidVersionedHashVersionError", 0, p], 539959);
    var m = e.i(857302),
        h = e.i(203375);

    function g(e) {
        let n = e.to ? ? ("string" == typeof e.data ? "hex" : "bytes"),
            i = "string" == typeof e.data ? (0, t.hexToBytes)(e.data) : e.data,
            a = (0, h.size)(i);
        if (!a) throw new d;
        if (a > 761855) throw new l({
            maxSize: 761855,
            size: a
        });
        let s = [],
            o = !0,
            c = 0;
        for (; o;) {
            let e = (0, m.createCursor)(new Uint8Array(131072)),
                t = 0;
            for (; t < 4096;) {
                let r = i.slice(c, c + 31);
                if (e.pushByte(0), e.pushBytes(r), r.length < 31) {
                    e.pushByte(128), o = !1;
                    break
                }
                t++, c += 31
            }
            s.push(e)
        }
        return "bytes" === n ? s.map(e => e.bytes) : s.map(e => (0, r.bytesToHex)(e.bytes))
    }
    e.s(["toBlobs", 0, g], 524770), e.s(["toBlobSidecars", 0, function(e) {
        let {
            data: t,
            kzg: r,
            to: a
        } = e, s = e.blobs ? ? g({
            data: t,
            to: a
        }), o = e.commitments ? ? n({
            blobs: s,
            kzg: r,
            to: a
        }), c = e.proofs ? ? i({
            blobs: s,
            commitments: o,
            kzg: r,
            to: a
        }), u = [];
        for (let e = 0; e < s.length; e++) u.push({
            blob: s[e],
            commitment: o[e],
            proof: c[e]
        });
        return u
    }], 899953)
}, 175174, e => {
    "use strict";
    var t = e.i(840406),
        r = e.i(306243),
        n = e.i(108157),
        i = e.i(621030),
        a = e.i(539959),
        s = e.i(603641),
        o = e.i(869076),
        c = e.i(571333),
        u = e.i(203375),
        l = e.i(394254),
        d = e.i(637608);

    function f(e) {
        let {
            chainId: t,
            maxPriorityFeePerGas: i,
            maxFeePerGas: a,
            to: u
        } = e;
        if (t <= 0) throw new s.InvalidChainIdError({
            chainId: t
        });
        if (u && !(0, c.isAddress)(u)) throw new n.InvalidAddressError({
            address: u
        });
        if (a && a > r.maxUint256) throw new o.FeeCapTooHighError({
            maxFeePerGas: a
        });
        if (i && a && i > a) throw new o.TipAboveFeeCapError({
            maxFeePerGas: a,
            maxPriorityFeePerGas: i
        })
    }
    e.s(["assertTransactionEIP1559", 0, f, "assertTransactionEIP2930", 0, function(e) {
        let {
            chainId: t,
            maxPriorityFeePerGas: a,
            gasPrice: u,
            maxFeePerGas: l,
            to: d
        } = e;
        if (t <= 0) throw new s.InvalidChainIdError({
            chainId: t
        });
        if (d && !(0, c.isAddress)(d)) throw new n.InvalidAddressError({
            address: d
        });
        if (a || l) throw new i.BaseError("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");
        if (u && u > r.maxUint256) throw new o.FeeCapTooHighError({
            maxFeePerGas: u
        })
    }, "assertTransactionEIP4844", 0, function(e) {
        let {
            blobVersionedHashes: r
        } = e;
        if (r) {
            if (0 === r.length) throw new a.EmptyBlobError;
            for (let e of r) {
                let r = (0, u.size)(e),
                    n = (0, d.hexToNumber)((0, l.slice)(e, 0, 1));
                if (32 !== r) throw new a.InvalidVersionedHashSizeError({
                    hash: e,
                    size: r
                });
                if (n !== t.versionedHashVersionKzg) throw new a.InvalidVersionedHashVersionError({
                    hash: e,
                    version: n
                })
            }
        }
        f(e)
    }, "assertTransactionEIP7702", 0, function(e) {
        let {
            authorizationList: t
        } = e;
        if (t)
            for (let e of t) {
                let {
                    chainId: t
                } = e, r = e.address;
                if (!(0, c.isAddress)(r)) throw new n.InvalidAddressError({
                    address: r
                });
                if (t < 0) throw new s.InvalidChainIdError({
                    chainId: t
                })
            }
        f(e)
    }, "assertTransactionLegacy", 0, function(e) {
        let {
            chainId: t,
            maxPriorityFeePerGas: a,
            gasPrice: u,
            maxFeePerGas: l,
            to: d
        } = e;
        if (d && !(0, c.isAddress)(d)) throw new n.InvalidAddressError({
            address: d
        });
        if (void 0 !== t && t <= 0) throw new s.InvalidChainIdError({
            chainId: t
        });
        if (a || l) throw new i.BaseError("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");
        if (u && u > r.maxUint256) throw new o.FeeCapTooHighError({
            maxFeePerGas: u
        })
    }])
}, 50143, e => {
    "use strict";
    var t = e.i(484309);
    e.s(["getTransactionType", 0, function(e) {
        if (e.type) return e.type;
        if (void 0 !== e.authorizationList) return "eip7702";
        if (void 0 !== e.blobs || void 0 !== e.blobVersionedHashes || void 0 !== e.maxFeePerBlobGas || void 0 !== e.sidecars) return "eip4844";
        if (void 0 !== e.maxFeePerGas || void 0 !== e.maxPriorityFeePerGas) return "eip1559";
        if (void 0 !== e.gasPrice) return void 0 !== e.accessList ? "eip2930" : "legacy";
        throw new t.InvalidSerializableTransactionError({
            transaction: e
        })
    }])
}, 683469, 204403, e => {
    "use strict";
    e.s(["serializeTransaction", () => g, "toYParitySignatureArray", () => y], 683469);
    var t = e.i(484309),
        r = e.i(469752),
        n = e.i(706139),
        i = e.i(895315),
        a = e.i(502930),
        s = e.i(899953),
        o = e.i(844268),
        c = e.i(19472),
        u = e.i(186897),
        l = e.i(632768),
        d = e.i(175174),
        f = e.i(50143),
        p = e.i(108157),
        m = e.i(571333);

    function h(e) {
        if (!e || 0 === e.length) return [];
        let r = [];
        for (let n = 0; n < e.length; n++) {
            let {
                address: i,
                storageKeys: a
            } = e[n];
            for (let e = 0; e < a.length; e++)
                if (a[e].length - 2 != 64) throw new t.InvalidStorageKeySizeError({
                    storageKey: a[e]
                });
            if (!(0, m.isAddress)(i, {
                    strict: !1
                })) throw new p.InvalidAddressError({
                address: i
            });
            r.push([i, a])
        }
        return r
    }

    function g(e, p) {
        let m = (0, f.getTransactionType)(e);
        return "eip1559" === m ? function(e, t) {
            let {
                chainId: r,
                gas: n,
                nonce: i,
                to: a,
                value: s,
                maxFeePerGas: c,
                maxPriorityFeePerGas: f,
                accessList: p,
                data: m
            } = e;
            (0, d.assertTransactionEIP1559)(e);
            let g = h(p),
                b = [(0, u.numberToHex)(r), i ? (0, u.numberToHex)(i) : "0x", f ? (0, u.numberToHex)(f) : "0x", c ? (0, u.numberToHex)(c) : "0x", n ? (0, u.numberToHex)(n) : "0x", a ? ? "0x", s ? (0, u.numberToHex)(s) : "0x", m ? ? "0x", g, ...y(e, t)];
            return (0, o.concatHex)(["0x02", (0, l.toRlp)(b)])
        }(e, p) : "eip2930" === m ? function(e, t) {
            let {
                chainId: r,
                gas: n,
                data: i,
                nonce: a,
                to: s,
                value: c,
                accessList: f,
                gasPrice: p
            } = e;
            (0, d.assertTransactionEIP2930)(e);
            let m = h(f),
                g = [(0, u.numberToHex)(r), a ? (0, u.numberToHex)(a) : "0x", p ? (0, u.numberToHex)(p) : "0x", n ? (0, u.numberToHex)(n) : "0x", s ? ? "0x", c ? (0, u.numberToHex)(c) : "0x", i ? ? "0x", m, ...y(e, t)];
            return (0, o.concatHex)(["0x01", (0, l.toRlp)(g)])
        }(e, p) : "eip4844" === m ? function(e, t) {
            let {
                chainId: r,
                gas: c,
                nonce: f,
                to: p,
                value: m,
                maxFeePerBlobGas: g,
                maxFeePerGas: b,
                maxPriorityFeePerGas: v,
                accessList: w,
                data: x
            } = e;
            (0, d.assertTransactionEIP4844)(e);
            let E = e.blobVersionedHashes,
                T = e.sidecars;
            if (e.blobs && (void 0 === E || void 0 === T)) {
                let t = "string" == typeof e.blobs[0] ? e.blobs : e.blobs.map(e => (0, u.bytesToHex)(e)),
                    r = e.kzg,
                    o = (0, n.blobsToCommitments)({
                        blobs: t,
                        kzg: r
                    });
                if (void 0 === E && (E = (0, a.commitmentsToVersionedHashes)({
                        commitments: o
                    })), void 0 === T) {
                    let e = (0, i.blobsToProofs)({
                        blobs: t,
                        commitments: o,
                        kzg: r
                    });
                    T = (0, s.toBlobSidecars)({
                        blobs: t,
                        commitments: o,
                        proofs: e
                    })
                }
            }
            let A = h(w),
                B = [(0, u.numberToHex)(r), f ? (0, u.numberToHex)(f) : "0x", v ? (0, u.numberToHex)(v) : "0x", b ? (0, u.numberToHex)(b) : "0x", c ? (0, u.numberToHex)(c) : "0x", p ? ? "0x", m ? (0, u.numberToHex)(m) : "0x", x ? ? "0x", A, g ? (0, u.numberToHex)(g) : "0x", E ? ? [], ...y(e, t)],
                P = [],
                I = [],
                C = [];
            if (T)
                for (let e = 0; e < T.length; e++) {
                    let {
                        blob: t,
                        commitment: r,
                        proof: n
                    } = T[e];
                    P.push(t), I.push(r), C.push(n)
                }
            return (0, o.concatHex)(["0x03", T ? (0, l.toRlp)([B, P, I, C]) : (0, l.toRlp)(B)])
        }(e, p) : "eip7702" === m ? function(e, t) {
            let {
                authorizationList: n,
                chainId: i,
                gas: a,
                nonce: s,
                to: c,
                value: f,
                maxFeePerGas: p,
                maxPriorityFeePerGas: m,
                accessList: g,
                data: b
            } = e;
            (0, d.assertTransactionEIP7702)(e);
            let v = h(g),
                w = (0, r.serializeAuthorizationList)(n);
            return (0, o.concatHex)(["0x04", (0, l.toRlp)([(0, u.numberToHex)(i), s ? (0, u.numberToHex)(s) : "0x", m ? (0, u.numberToHex)(m) : "0x", p ? (0, u.numberToHex)(p) : "0x", a ? (0, u.numberToHex)(a) : "0x", c ? ? "0x", f ? (0, u.numberToHex)(f) : "0x", b ? ? "0x", v, w, ...y(e, t)])])
        }(e, p) : function(e, r) {
            let {
                chainId: n = 0,
                gas: i,
                data: a,
                nonce: s,
                to: o,
                value: f,
                gasPrice: p
            } = e;
            (0, d.assertTransactionLegacy)(e);
            let m = [s ? (0, u.numberToHex)(s) : "0x", p ? (0, u.numberToHex)(p) : "0x", i ? (0, u.numberToHex)(i) : "0x", o ? ? "0x", f ? (0, u.numberToHex)(f) : "0x", a ? ? "0x"];
            if (r) {
                let e = (() => {
                        if (r.v >= 35 n) return (r.v - 35 n) / 2 n > 0 ? r.v : 27 n + (35 n === r.v ? 0 n : 1 n);
                        if (n > 0) return BigInt(2 * n) + BigInt(35 n + r.v - 27 n);
                        let e = 27 n + (27 n === r.v ? 0 n : 1 n);
                        if (r.v !== e) throw new t.InvalidLegacyVError({
                            v: r.v
                        });
                        return e
                    })(),
                    i = (0, c.trim)(r.r),
                    a = (0, c.trim)(r.s);
                m = [...m, (0, u.numberToHex)(e), "0x00" === i ? "0x" : i, "0x00" === a ? "0x" : a]
            } else n > 0 && (m = [...m, (0, u.numberToHex)(n), "0x", "0x"]);
            return (0, l.toRlp)(m)
        }(e, p)
    }

    function y(e, t) {
        let r = t ? ? e,
            {
                v: n,
                yParity: i
            } = r;
        if (void 0 === r.r || void 0 === r.s || void 0 === n && void 0 === i) return [];
        let a = (0, c.trim)(r.r),
            s = (0, c.trim)(r.s);
        return ["number" == typeof i ? i ? (0, u.numberToHex)(1) : "0x" : 0 n === n ? "0x" : 1 n === n ? (0, u.numberToHex)(1) : 27 n === n ? "0x" : (0, u.numberToHex)(1), "0x00" === a ? "0x" : a, "0x00" === s ? "0x" : s]
    }
    e.s(["serializeAccessList", 0, h], 204403)
}, 70156, e => {
    "use strict";
    var t = e.i(479322),
        r = e.i(18014);
    e.i(328798);
    var n = e.i(175947),
        i = e.i(46933),
        a = e.i(700447);
    let s = new Map;
    async function o(e) {
        let {
            getSocket: r,
            keepAlive: o = !0,
            key: c = "socket",
            reconnect: u = !0,
            url: l
        } = e, {
            interval: d = 3e4
        } = "object" == typeof o ? o : {}, {
            attempts: f = 5,
            delay: p = 2e3
        } = "object" == typeof u ? u : {}, m = JSON.stringify({
            keepAlive: o,
            key: c,
            url: l,
            reconnect: u
        }), h = s.get(m);
        if (h) return h;
        let g = 0,
            {
                schedule: y
            } = (0, n.createBatchScheduler)({
                id: m,
                fn: async () => {
                    let e, n, c, y = new Map,
                        b = new Map,
                        v = !1;

                    function w() {
                        u && g < f ? v || (v = !0, g++, n ? .close(), setTimeout(async () => {
                            await x().catch(console.error), v = !1
                        }, p)) : (y.clear(), b.clear())
                    }
                    async function x() {
                        let i = await r({
                            onClose() {
                                for (let e of y.values()) e.onError ? .(new t.SocketClosedError({
                                    url: l
                                }));
                                for (let e of b.values()) e.onError ? .(new t.SocketClosedError({
                                    url: l
                                }));
                                w()
                            },
                            onError(t) {
                                for (let r of (e = t, y.values())) r.onError ? .(e);
                                for (let t of b.values()) t.onError ? .(e);
                                w()
                            },
                            onOpen() {
                                e = void 0, g = 0
                            },
                            onResponse(e) {
                                let t = "eth_subscription" === e.method,
                                    r = t ? e.params.subscription : e.id,
                                    n = t ? b : y,
                                    i = n.get(r);
                                i && i.onResponse(e), t || n.delete(r)
                            }
                        });
                        if (n = i, o && (c && clearInterval(c), c = setInterval(() => n.ping ? .(), d)), u && b.size > 0)
                            for (let [e, {
                                    onResponse: t,
                                    body: r,
                                    onError: n
                                }] of b.entries()) r && (b.delete(e), h ? .request({
                                body: r,
                                onResponse: t,
                                onError: n
                            }));
                        return i
                    }
                    return await x(), e = void 0, h = {
                        close() {
                            c && clearInterval(c), n.close(), s.delete(m)
                        },
                        get socket() {
                            return n
                        },
                        request({
                            body: t,
                            onError: r,
                            onResponse: i
                        }) {
                            e && r && r(e);
                            let s = t.id ? ? a.idCache.take(),
                                o = e => {
                                    ("number" != typeof e.id || s === e.id) && ("eth_subscribe" === t.method && "string" == typeof e.result && b.set(e.result, {
                                        onResponse: o,
                                        onError: r,
                                        body: t
                                    }), i(e))
                                };
                            "eth_unsubscribe" === t.method && b.delete(t.params ? .[0]), y.set(s, {
                                onResponse: o,
                                onError: r
                            });
                            try {
                                n.request({
                                    body: {
                                        jsonrpc: "2.0",
                                        id: s,
                                        ...t
                                    }
                                })
                            } catch (e) {
                                r ? .(e)
                            }
                        },
                        requestAsync({
                            body: e,
                            timeout: r = 1e4
                        }) {
                            return (0, i.withTimeout)(() => new Promise((t, r) => this.request({
                                body: e,
                                onError: r,
                                onResponse: t
                            })), {
                                errorInstance: new t.TimeoutError({
                                    body: e,
                                    url: l
                                }),
                                timeout: r
                            })
                        },
                        requests: y,
                        subscriptions: b,
                        url: l
                    }, s.set(m, h), [h]
                }
            }),
            [b, [v]] = await y();
        return v
    }
    async function c(r, n = {}) {
        let {
            keepAlive: i,
            reconnect: a
        } = n;
        return o({
            async getSocket({
                onClose: n,
                onError: i,
                onOpen: a,
                onResponse: s
            }) {
                let o = await e.A(1634).then(e => e.WebSocket),
                    c = new o(r);

                function u() {
                    c.removeEventListener("close", u), c.removeEventListener("message", l), c.removeEventListener("error", i), c.removeEventListener("open", a), n()
                }

                function l({
                    data: e
                }) {
                    if ("string" != typeof e || 0 !== e.trim().length) try {
                        let t = JSON.parse(e);
                        s(t)
                    } catch (e) {
                        i(e)
                    }
                }
                c.addEventListener("close", u), c.addEventListener("message", l), c.addEventListener("error", i), c.addEventListener("open", a), c.readyState === o.CONNECTING && await new Promise((e, t) => {
                    c && (c.onopen = e, c.onerror = t)
                });
                let {
                    close: d
                } = c;
                return Object.assign(c, {
                    close() {
                        d.bind(c)(), u()
                    },
                    ping() {
                        try {
                            if (c.readyState === c.CLOSED || c.readyState === c.CLOSING) throw new t.WebSocketRequestError({
                                url: c.url,
                                cause: new t.SocketClosedError({
                                    url: c.url
                                })
                            });
                            c.send(JSON.stringify({
                                jsonrpc: "2.0",
                                id: null,
                                method: "net_version",
                                params: []
                            }))
                        } catch (e) {
                            i(e)
                        }
                    },
                    request({
                        body: e
                    }) {
                        if (c.readyState === c.CLOSED || c.readyState === c.CLOSING) throw new t.WebSocketRequestError({
                            body: e,
                            url: c.url,
                            cause: new t.SocketClosedError({
                                url: c.url
                            })
                        });
                        return c.send(JSON.stringify(e))
                    }
                })
            },
            keepAlive: i,
            reconnect: a,
            url: r
        })
    }
    async function u(e) {
        let t = await c(e);
        return Object.assign(t.socket, {
            requests: t.requests,
            subscriptions: t.subscriptions
        })
    }
    var l = e.i(881997);
    e.s(["webSocket", 0, function(e, n = {}) {
        let {
            keepAlive: i,
            key: a = "webSocket",
            methods: s,
            name: o = "WebSocket JSON-RPC",
            reconnect: d,
            retryDelay: f
        } = n;
        return ({
            chain: p,
            retryCount: m,
            timeout: h
        }) => {
            let g = n.retryCount ? ? m,
                y = h ? ? n.timeout ? ? 1e4,
                b = e || p ? .rpcUrls.default.webSocket ? .[0],
                v = {
                    keepAlive: i,
                    reconnect: d
                };
            if (!b) throw new r.UrlRequiredError;
            return (0, l.createTransport)({
                key: a,
                methods: s,
                name: o,
                async request({
                    method: e,
                    params: r
                }) {
                    let n = {
                            method: e,
                            params: r
                        },
                        i = await c(b, v),
                        {
                            error: a,
                            result: s
                        } = await i.requestAsync({
                            body: n,
                            timeout: y
                        });
                    if (a) throw new t.RpcRequestError({
                        body: n,
                        error: a,
                        url: b
                    });
                    return s
                },
                retryCount: g,
                retryDelay: f,
                timeout: y,
                type: "webSocket"
            }, {
                getSocket: () => u(b),
                getRpcClient: () => c(b, v),
                async subscribe({
                    params: e,
                    onData: t,
                    onError: r
                }) {
                    let n = await c(b, v),
                        {
                            result: i
                        } = await new Promise((i, a) => n.request({
                            body: {
                                method: "eth_subscribe",
                                params: e
                            },
                            onError(e) {
                                a(e), r ? .(e)
                            },
                            onResponse(e) {
                                if (e.error) {
                                    a(e.error), r ? .(e.error);
                                    return
                                }
                                "number" == typeof e.id ? i(e) : "eth_subscription" === e.method && t(e.params)
                            }
                        }));
                    return {
                        subscriptionId: i,
                        unsubscribe: async () => new Promise(e => n.request({
                            body: {
                                method: "eth_unsubscribe",
                                params: [i]
                            },
                            onResponse: e
                        }))
                    }
                }
            })
        }
    }], 70156)
}, 953080, 39602, 913959, 327769, e => {
    "use strict";
    var t = e.i(621030),
        r = e.i(285510);
    e.s(["isNullUniversalResolverError", 0, function(e) {
        if (!(e instanceof t.BaseError)) return !1;
        let n = e.walk(e => e instanceof r.ContractFunctionRevertedError);
        return n instanceof r.ContractFunctionRevertedError && (n.data ? .errorName === "HttpError" || n.data ? .errorName === "ResolverError" || n.data ? .errorName === "ResolverNotContract" || n.data ? .errorName === "ResolverNotFound" || n.data ? .errorName === "ReverseAddressMismatch" || n.data ? .errorName === "UnsupportedResolverProfile")
    }], 953080);
    var n = e.i(844268),
        i = e.i(318877),
        a = e.i(186897),
        s = e.i(415013),
        o = e.i(229315);

    function c(e) {
        if (66 !== e.length || 0 !== e.indexOf("[") || 65 !== e.indexOf("]")) return null;
        let t = `0x${e.slice(1,65)}`;
        return (0, o.isHex)(t) ? t : null
    }

    function u(e) {
        let t = new Uint8Array(32).fill(0);
        return e ? c(e) || (0, s.keccak256)((0, i.stringToBytes)(e)) : (0, a.bytesToHex)(t)
    }
    e.s(["namehash", 0, function(e) {
        let t = new Uint8Array(32).fill(0);
        if (!e) return (0, a.bytesToHex)(t);
        let r = e.split(".");
        for (let e = r.length - 1; e >= 0; e -= 1) {
            let a = c(r[e]),
                o = a ? (0, i.toBytes)(a) : (0, s.keccak256)((0, i.stringToBytes)(r[e]), "bytes");
            t = (0, s.keccak256)((0, n.concat)([t, o]), "bytes")
        }
        return (0, a.bytesToHex)(t)
    }], 39602), e.s(["labelhash", 0, u], 913959), e.s(["packetToBytes", 0, function(e) {
        let t = e.replace(/^\.|\.$/gm, "");
        if (0 === t.length) return new Uint8Array(1);
        let r = new Uint8Array((0, i.stringToBytes)(t).byteLength + 2),
            n = 0,
            a = t.split(".");
        for (let e = 0; e < a.length; e++) {
            var s;
            let t = (0, i.stringToBytes)(a[e]);
            t.byteLength > 255 && (t = (0, i.stringToBytes)((s = u(a[e]), `[${s.slice(2)}]`))), r[n] = t.length, r.set(t, n + 1), n += t.length + 1
        }
        return r.byteLength !== n + 1 ? r.slice(0, n + 1) : r
    }], 327769)
}, 280958, e => {
    "use strict";
    e.s(["getAction", 0, function(e, t, r) {
        let n = e[t.name];
        if ("function" == typeof n) return n;
        let i = e[r];
        return "function" == typeof i ? i : r => t(e, r)
    }])
}, 701123, e => {
    "use strict";
    var t = e.i(624297),
        r = e.i(621030),
        n = e.i(285510),
        i = e.i(479322),
        a = e.i(962702);
    e.s(["getContractError", 0, function(e, {
        abi: s,
        address: o,
        args: c,
        docsPath: u,
        functionName: l,
        sender: d
    }) {
        let f = e instanceof n.RawContractError ? e : e instanceof r.BaseError ? e.walk(e => "data" in e) || e.walk() : {},
            {
                code: p,
                data: m,
                details: h,
                message: g,
                shortMessage: y
            } = f,
            b = e instanceof t.AbiDecodingZeroDataError ? new n.ContractFunctionZeroDataError({
                functionName: l,
                cause: e
            }) : [3, a.InternalRpcError.code].includes(p) && (m || h || g || y) || p === a.InvalidInputRpcError.code && "execution reverted" === h && m ? new n.ContractFunctionRevertedError({
                abi: s,
                data: "object" == typeof m ? m.data : m,
                functionName: l,
                message: f instanceof i.RpcRequestError ? h : y ? ? g,
                cause: e
            }) : e;
        return new n.ContractFunctionExecutionError(b, {
            abi: s,
            args: c,
            contractAddress: o,
            docsPath: u,
            functionName: l,
            sender: d
        })
    }])
}, 167164, e => {
    "use strict";
    var t = e.i(933619),
        r = e.i(56339),
        n = e.i(701123),
        i = e.i(280958),
        a = e.i(376436);
    async function s(e, s) {
        let {
            abi: o,
            address: c,
            args: u,
            functionName: l,
            ...d
        } = s, f = (0, r.encodeFunctionData)({
            abi: o,
            args: u,
            functionName: l
        });
        try {
            let {
                data: r
            } = await (0, i.getAction)(e, a.call, "call")({ ...d,
                data: f,
                to: c
            });
            return (0, t.decodeFunctionResult)({
                abi: o,
                args: u,
                functionName: l,
                data: r || "0x"
            })
        } catch (e) {
            throw (0, n.getContractError)(e, {
                abi: o,
                address: c,
                args: u,
                docsPath: "/docs/contract/readContract",
                functionName: l
            })
        }
    }
    e.s(["readContract", 0, s])
}, 266057, e => {
    "use strict";
    var t = e.i(866674),
        r = e.i(933619),
        n = e.i(56339),
        i = e.i(961304),
        a = e.i(19472),
        s = e.i(186897),
        o = e.i(953080),
        c = e.i(464997),
        u = e.i(39602),
        l = e.i(327769),
        d = e.i(280958),
        f = e.i(167164);
    async function p(e, p) {
        let {
            blockNumber: m,
            blockTag: h,
            coinType: g,
            name: y,
            gatewayUrls: b,
            strict: v
        } = p, {
            chain: w
        } = e, x = (() => {
            if (p.universalResolverAddress) return p.universalResolverAddress;
            if (!w) throw Error("client chain not configured. universalResolverAddress is required.");
            return (0, i.getChainContractAddress)({
                blockNumber: m,
                chain: w,
                contract: "ensUniversalResolver"
            })
        })(), E = w ? .ensTlds;
        if (E && !E.some(e => y.endsWith(e))) return null;
        let T = null != g ? [(0, u.namehash)(y), BigInt(g)] : [(0, u.namehash)(y)];
        try {
            let i = (0, n.encodeFunctionData)({
                    abi: t.addressResolverAbi,
                    functionName: "addr",
                    args: T
                }),
                o = {
                    address: x,
                    abi: t.universalResolverResolveAbi,
                    functionName: "resolveWithGateways",
                    args: [(0, s.toHex)((0, l.packetToBytes)(y)), i, b ? ? [c.localBatchGatewayUrl]],
                    blockNumber: m,
                    blockTag: h
                },
                u = (0, d.getAction)(e, f.readContract, "readContract"),
                p = await u(o);
            if ("0x" === p[0]) return null;
            let g = (0, r.decodeFunctionResult)({
                abi: t.addressResolverAbi,
                args: T,
                functionName: "addr",
                data: p[0]
            });
            if ("0x" === g || "0x00" === (0, a.trim)(g)) return null;
            return g
        } catch (e) {
            if (v) throw e;
            if ((0, o.isNullUniversalResolverError)(e)) return null;
            throw e
        }
    }
    e.s(["getEnsAddress", 0, p])
}, 442259, 706241, e => {
    "use strict";
    var t = e.i(167164),
        r = e.i(621030);
    class n extends r.BaseError {
        constructor({
            data: e
        }) {
            super("Unable to extract image from metadata. The metadata may be malformed or invalid.", {
                metaMessages: ["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.", "", `Provided data: ${JSON.stringify(e)}`],
                name: "EnsAvatarInvalidMetadataError"
            })
        }
    }
    class i extends r.BaseError {
        constructor({
            reason: e
        }) {
            super(`ENS NFT avatar URI is invalid. ${e}`, {
                name: "EnsAvatarInvalidNftUriError"
            })
        }
    }
    class a extends r.BaseError {
        constructor({
            uri: e
        }) {
            super(`Unable to resolve ENS avatar URI "${e}". The URI may be malformed, invalid, or does not respond with a valid image.`, {
                name: "EnsAvatarUriResolutionError"
            })
        }
    }
    class s extends r.BaseError {
        constructor({
            namespace: e
        }) {
            super(`ENS NFT avatar namespace "${e}" is not supported. Must be "erc721" or "erc1155".`, {
                name: "EnsAvatarUnsupportedNamespaceError"
            })
        }
    }
    class o extends r.BaseError {
        constructor({
            chainId: e
        }) {
            super(`Invalid ENSIP-11 chainId: ${e}. Must be between 0 and 0x7fffffff, or 1.`, {
                name: "EnsInvalidChainIdError"
            })
        }
    }
    e.s(["EnsAvatarInvalidMetadataError", 0, n, "EnsAvatarInvalidNftUriError", 0, i, "EnsAvatarUnsupportedNamespaceError", 0, s, "EnsAvatarUriResolutionError", 0, a, "EnsInvalidChainIdError", 0, o], 706241);
    let c = /(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,
        u = /^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,
        l = /^data:([a-zA-Z\-/+]*);base64,([^"].*)/,
        d = /^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;
    async function f(e) {
        try {
            let t = await fetch(e, {
                method: "HEAD"
            });
            if (200 === t.status) {
                let e = t.headers.get("content-type");
                return e ? .startsWith("image/")
            }
            return !1
        } catch (t) {
            if ("object" == typeof t && void 0 !== t.response || !Object.hasOwn(globalThis, "Image")) return !1;
            return new Promise(t => {
                let r = new Image;
                r.onload = () => {
                    t(!0)
                }, r.onerror = () => {
                    t(!1)
                }, r.src = e
            })
        }
    }

    function p(e, t) {
        return e ? e.endsWith("/") ? e.slice(0, -1) : e : t
    }

    function m({
        uri: e,
        gatewayUrls: t
    }) {
        let r = l.test(e);
        if (r) return {
            uri: e,
            isOnChain: !0,
            isEncoded: r
        };
        let n = p(t ? .ipfs, "https://ipfs.io"),
            i = p(t ? .arweave, "https://arweave.net"),
            s = e.match(c),
            {
                protocol: o,
                subpath: f,
                target: h,
                subtarget: g = ""
            } = s ? .groups || {},
            y = "ipns:/" === o || "ipns/" === f,
            b = "ipfs:/" === o || "ipfs/" === f || u.test(e);
        if (e.startsWith("http") && !y && !b) {
            let r = e;
            return t ? .arweave && (r = e.replace(/https:\/\/arweave.net/g, t ? .arweave)), {
                uri: r,
                isOnChain: !1,
                isEncoded: !1
            }
        }
        if ((y || b) && h) return {
            uri: `${n}/${y?"ipns":"ipfs"}/${h}${g}`,
            isOnChain: !1,
            isEncoded: !1
        };
        if ("ar:/" === o && h) return {
            uri: `${i}/${h}${g||""}`,
            isOnChain: !1,
            isEncoded: !1
        };
        let v = e.replace(d, "");
        if (v.startsWith("<svg") && (v = `data:image/svg+xml;base64,${btoa(v)}`), v.startsWith("data:") || v.startsWith("{")) return {
            uri: v,
            isOnChain: !0,
            isEncoded: !1
        };
        throw new a({
            uri: e
        })
    }

    function h(e) {
        if ("object" != typeof e || !("image" in e) && !("image_url" in e) && !("image_data" in e)) throw new n({
            data: e
        });
        return e.image || e.image_url || e.image_data
    }
    async function g({
        gatewayUrls: e,
        uri: t
    }) {
        try {
            let r = await fetch(t).then(e => e.json());
            return await y({
                gatewayUrls: e,
                uri: h(r)
            })
        } catch {
            throw new a({
                uri: t
            })
        }
    }
    async function y({
        gatewayUrls: e,
        uri: t
    }) {
        let {
            uri: r,
            isOnChain: n
        } = m({
            uri: t,
            gatewayUrls: e
        });
        if (n || await f(r)) return r;
        throw new a({
            uri: t
        })
    }
    async function b(e, {
        nft: r
    }) {
        if ("erc721" === r.namespace) return (0, t.readContract)(e, {
            address: r.contractAddress,
            abi: [{
                name: "tokenURI",
                type: "function",
                stateMutability: "view",
                inputs: [{
                    name: "tokenId",
                    type: "uint256"
                }],
                outputs: [{
                    name: "",
                    type: "string"
                }]
            }],
            functionName: "tokenURI",
            args: [BigInt(r.tokenID)]
        });
        if ("erc1155" === r.namespace) return (0, t.readContract)(e, {
            address: r.contractAddress,
            abi: [{
                name: "uri",
                type: "function",
                stateMutability: "view",
                inputs: [{
                    name: "_id",
                    type: "uint256"
                }],
                outputs: [{
                    name: "",
                    type: "string"
                }]
            }],
            functionName: "uri",
            args: [BigInt(r.tokenID)]
        });
        throw new s({
            namespace: r.namespace
        })
    }
    async function v(e, {
        gatewayUrls: t,
        record: r
    }) {
        return /eip155:/i.test(r) ? w(e, {
            gatewayUrls: t,
            record: r
        }) : y({
            uri: r,
            gatewayUrls: t
        })
    }
    async function w(e, {
        gatewayUrls: t,
        record: r
    }) {
        let n = function(e) {
                let t = e;
                t.startsWith("did:nft:") && (t = t.replace("did:nft:", "").replace(/_/g, "/"));
                let [r, n, a] = t.split("/"), [s, o] = r.split(":"), [c, u] = n.split(":");
                if (!s || "eip155" !== s.toLowerCase()) throw new i({
                    reason: "Only EIP-155 supported"
                });
                if (!o) throw new i({
                    reason: "Chain ID not found"
                });
                if (!u) throw new i({
                    reason: "Contract address not found"
                });
                if (!a) throw new i({
                    reason: "Token ID not found"
                });
                if (!c) throw new i({
                    reason: "ERC namespace not found"
                });
                return {
                    chainID: Number.parseInt(o, 10),
                    namespace: c.toLowerCase(),
                    contractAddress: u,
                    tokenID: a
                }
            }(r),
            {
                uri: a,
                isOnChain: s,
                isEncoded: o
            } = m({
                uri: await b(e, {
                    nft: n
                }),
                gatewayUrls: t
            });
        if (s && (a.includes("data:application/json;base64,") || a.startsWith("{"))) return y({
            uri: h(JSON.parse(o ? atob(a.replace("data:application/json;base64,", "")) : a)),
            gatewayUrls: t
        });
        let c = n.tokenID;
        return "erc1155" === n.namespace && (c = c.replace("0x", "").padStart(64, "0")), g({
            gatewayUrls: t,
            uri: a.replace(/(?:0x)?{id}/, c)
        })
    }
    e.s(["parseAvatarRecord", 0, v], 442259)
}, 971807, 898698, 44803, e => {
    "use strict";
    var t = e.i(442259),
        r = e.i(280958),
        n = e.i(866674),
        i = e.i(933619),
        a = e.i(56339),
        s = e.i(961304),
        o = e.i(186897),
        c = e.i(953080),
        u = e.i(464997),
        l = e.i(39602),
        d = e.i(327769),
        f = e.i(167164);
    async function p(e, t) {
        let {
            blockNumber: p,
            blockTag: m,
            key: h,
            name: g,
            gatewayUrls: y,
            strict: b
        } = t, {
            chain: v
        } = e, w = (() => {
            if (t.universalResolverAddress) return t.universalResolverAddress;
            if (!v) throw Error("client chain not configured. universalResolverAddress is required.");
            return (0, s.getChainContractAddress)({
                blockNumber: p,
                chain: v,
                contract: "ensUniversalResolver"
            })
        })(), x = v ? .ensTlds;
        if (x && !x.some(e => g.endsWith(e))) return null;
        try {
            let t = {
                    address: w,
                    abi: n.universalResolverResolveAbi,
                    args: [(0, o.toHex)((0, d.packetToBytes)(g)), (0, a.encodeFunctionData)({
                        abi: n.textResolverAbi,
                        functionName: "text",
                        args: [(0, l.namehash)(g), h]
                    }), y ? ? [u.localBatchGatewayUrl]],
                    functionName: "resolveWithGateways",
                    blockNumber: p,
                    blockTag: m
                },
                s = (0, r.getAction)(e, f.readContract, "readContract"),
                c = await s(t);
            if ("0x" === c[0]) return null;
            let b = (0, i.decodeFunctionResult)({
                abi: n.textResolverAbi,
                functionName: "text",
                data: c[0]
            });
            return "" === b ? null : b
        } catch (e) {
            if (b) throw e;
            if ((0, c.isNullUniversalResolverError)(e)) return null;
            throw e
        }
    }
    async function m(e, {
        blockNumber: n,
        blockTag: i,
        assetGatewayUrls: a,
        name: s,
        gatewayUrls: o,
        strict: c,
        universalResolverAddress: u
    }) {
        let l = await (0, r.getAction)(e, p, "getEnsText")({
            blockNumber: n,
            blockTag: i,
            key: "avatar",
            name: s,
            universalResolverAddress: u,
            gatewayUrls: o,
            strict: c
        });
        if (!l) return null;
        try {
            return await (0, t.parseAvatarRecord)(e, {
                record: l,
                gatewayUrls: a
            })
        } catch {
            return null
        }
    }
    async function h(e, t) {
        let {
            address: i,
            blockNumber: a,
            blockTag: o,
            coinType: l = 60 n,
            gatewayUrls: d,
            strict: p
        } = t, {
            chain: m
        } = e, h = (() => {
            if (t.universalResolverAddress) return t.universalResolverAddress;
            if (!m) throw Error("client chain not configured. universalResolverAddress is required.");
            return (0, s.getChainContractAddress)({
                blockNumber: a,
                chain: m,
                contract: "ensUniversalResolver"
            })
        })();
        try {
            let t = {
                    address: h,
                    abi: n.universalResolverReverseAbi,
                    args: [i, l, d ? ? [u.localBatchGatewayUrl]],
                    functionName: "reverseWithGateways",
                    blockNumber: a,
                    blockTag: o
                },
                s = (0, r.getAction)(e, f.readContract, "readContract"),
                [c] = await s(t);
            return c || null
        } catch (e) {
            if (p) throw e;
            if ((0, c.isNullUniversalResolverError)(e)) return null;
            throw e
        }
    }
    e.s(["getEnsText", 0, p], 898698), e.s(["getEnsAvatar", 0, m], 971807), e.s(["getEnsName", 0, h], 44803)
}, 259669, 319061, e => {
    "use strict";
    var t = e.i(961304),
        r = e.i(186897),
        n = e.i(327769),
        i = e.i(280958),
        a = e.i(167164);
    async function s(e, s) {
        let {
            blockNumber: o,
            blockTag: c,
            name: u
        } = s, {
            chain: l
        } = e, d = (() => {
            if (s.universalResolverAddress) return s.universalResolverAddress;
            if (!l) throw Error("client chain not configured. universalResolverAddress is required.");
            return (0, t.getChainContractAddress)({
                blockNumber: o,
                chain: l,
                contract: "ensUniversalResolver"
            })
        })(), f = l ? .ensTlds;
        if (f && !f.some(e => u.endsWith(e))) throw Error(`${u} is not a valid ENS TLD (${f?.join(", ")}) for chain "${l.name}" (id: ${l.id}).`);
        let [p] = await (0, i.getAction)(e, a.readContract, "readContract")({
            address: d,
            abi: [{
                inputs: [{
                    type: "bytes"
                }],
                name: "findResolver",
                outputs: [{
                    type: "address"
                }, {
                    type: "bytes32"
                }, {
                    type: "uint256"
                }],
                stateMutability: "view",
                type: "function"
            }],
            functionName: "findResolver",
            args: [(0, r.toHex)((0, n.packetToBytes)(u))],
            blockNumber: o,
            blockTag: c
        });
        return p
    }
    e.s(["getEnsResolver", 0, s], 259669);
    var o = e.i(372387),
        c = e.i(111509),
        u = e.i(375137),
        l = e.i(249618),
        d = e.i(830363);
    async function f(e, t) {
        let {
            account: n = e.account,
            blockNumber: i,
            blockTag: a = "latest",
            blobs: s,
            data: f,
            gas: p,
            gasPrice: m,
            maxFeePerBlobGas: h,
            maxFeePerGas: g,
            maxPriorityFeePerGas: y,
            to: b,
            value: v,
            ...w
        } = t, x = n ? (0, o.parseAccount)(n) : void 0;
        try {
            (0, d.assertRequest)(t);
            let n = "bigint" == typeof i ? (0, r.numberToHex)(i) : void 0,
                o = e.chain ? .formatters ? .transactionRequest ? .format,
                c = (o || l.formatTransactionRequest)({ ...(0, u.extract)(w, {
                        format: o
                    }),
                    account: x,
                    blobs: s,
                    data: f,
                    gas: p,
                    gasPrice: m,
                    maxFeePerBlobGas: h,
                    maxFeePerGas: g,
                    maxPriorityFeePerGas: y,
                    to: b,
                    value: v
                }, "createAccessList"),
                E = await e.request({
                    method: "eth_createAccessList",
                    params: [c, n || a]
                });
            return {
                accessList: E.accessList,
                gasUsed: BigInt(E.gasUsed)
            }
        } catch (r) {
            throw (0, c.getCallError)(r, { ...t,
                account: x,
                chain: e.chain
            })
        }
    }
    e.s(["createAccessList", 0, f], 319061)
}, 857511, e => {
    "use strict";
    e.s(["createFilterRequestScope", 0, function(e, {
        method: t
    }) {
        let r = {};
        return "fallback" === e.transport.type && e.transport.onResponse ? .(({
            method: e,
            response: n,
            status: i,
            transport: a
        }) => {
            "success" === i && t === e && (r[n] = a.request)
        }), t => r[t] || e.request
    }])
}, 71540, e => {
    "use strict";
    var t = e.i(857511);
    async function r(e) {
        let r = (0, t.createFilterRequestScope)(e, {
                method: "eth_newBlockFilter"
            }),
            n = await e.request({
                method: "eth_newBlockFilter"
            });
        return {
            id: n,
            request: r(n),
            type: "block"
        }
    }
    e.s(["createBlockFilter", 0, r])
}, 742881, 66259, e => {
    "use strict";
    var t = e.i(624297),
        r = e.i(621030);
    class n extends r.BaseError {
        constructor(e) {
            super(`Filter type "${e}" is not supported.`, {
                name: "FilterTypeNotSupportedError"
            })
        }
    }
    e.s(["FilterTypeNotSupportedError", 0, n], 66259);
    var i = e.i(318877),
        a = e.i(415013),
        s = e.i(65560),
        o = e.i(198905),
        c = e.i(628584),
        u = e.i(692614);
    let l = "/docs/contract/encodeEventTopics";

    function d({
        param: e,
        value: t
    }) {
        if ("string" === e.type || "bytes" === e.type) return (0, a.keccak256)((0, i.toBytes)(t));
        if ("tuple" === e.type || e.type.match(/^(.*)\[(\d+)?\]$/)) throw new n(e.type);
        return (0, o.encodeAbiParameters)([e], [t])
    }
    e.s(["encodeEventTopics", 0, function(e) {
        let {
            abi: r,
            eventName: n,
            args: i
        } = e, a = r[0];
        if (n) {
            let e = (0, u.getAbiItem)({
                abi: r,
                name: n
            });
            if (!e) throw new t.AbiEventNotFoundError(n, {
                docsPath: l
            });
            a = e
        }
        if ("event" !== a.type) throw new t.AbiEventNotFoundError(void 0, {
            docsPath: l
        });
        let o = (0, c.formatAbiItem)(a),
            f = (0, s.toEventSelector)(o),
            p = [];
        if (i && "inputs" in a) {
            let e = a.inputs ? .filter(e => "indexed" in e && e.indexed),
                t = Array.isArray(i) ? i : Object.values(i).length > 0 ? e ? .map(e => i[e.name]) ? ? [] : [];
            t.length > 0 && (p = e ? .map((e, r) => Array.isArray(t[r]) ? t[r].map((n, i) => d({
                param: e,
                value: t[r][i]
            })) : void 0 !== t[r] && null !== t[r] ? d({
                param: e,
                value: t[r]
            }) : null) ? ? [])
        }
        return [f, ...p]
    }], 742881)
}, 742362, e => {
    "use strict";
    var t = e.i(742881),
        r = e.i(186897),
        n = e.i(857511);
    async function i(e, i) {
        let {
            address: a,
            abi: s,
            args: o,
            eventName: c,
            fromBlock: u,
            strict: l,
            toBlock: d
        } = i, f = (0, n.createFilterRequestScope)(e, {
            method: "eth_newFilter"
        }), p = c ? (0, t.encodeEventTopics)({
            abi: s,
            args: o,
            eventName: c
        }) : void 0, m = await e.request({
            method: "eth_newFilter",
            params: [{
                address: a,
                fromBlock: "bigint" == typeof u ? (0, r.numberToHex)(u) : u,
                toBlock: "bigint" == typeof d ? (0, r.numberToHex)(d) : d,
                topics: p
            }]
        });
        return {
            abi: s,
            args: o,
            eventName: c,
            id: m,
            request: f(m),
            strict: !!l,
            type: "event"
        }
    }
    e.s(["createContractEventFilter", 0, i])
}, 347184, 73421, e => {
    "use strict";
    var t = e.i(742881),
        r = e.i(186897),
        n = e.i(857511);
    async function i(e, {
        address: a,
        args: s,
        event: o,
        events: c,
        fromBlock: u,
        strict: l,
        toBlock: d
    } = {}) {
        let f = c ? ? (o ? [o] : void 0),
            p = (0, n.createFilterRequestScope)(e, {
                method: "eth_newFilter"
            }),
            m = [];
        f && (m = [f.flatMap(e => (0, t.encodeEventTopics)({
            abi: [e],
            eventName: e.name,
            args: s
        }))], o && (m = m[0]));
        let h = await e.request({
            method: "eth_newFilter",
            params: [{
                address: a,
                fromBlock: "bigint" == typeof u ? (0, r.numberToHex)(u) : u,
                toBlock: "bigint" == typeof d ? (0, r.numberToHex)(d) : d,
                ...m.length ? {
                    topics: m
                } : {}
            }]
        });
        return {
            abi: f,
            args: s,
            eventName: o ? o.name : void 0,
            fromBlock: u,
            id: h,
            request: p(h),
            strict: !!l,
            toBlock: d,
            type: "event"
        }
    }
    async function a(e) {
        let t = (0, n.createFilterRequestScope)(e, {
                method: "eth_newPendingTransactionFilter"
            }),
            r = await e.request({
                method: "eth_newPendingTransactionFilter"
            });
        return {
            id: r,
            request: t(r),
            type: "transaction"
        }
    }
    e.s(["createEventFilter", 0, i], 347184), e.s(["createPendingTransactionFilter", 0, a], 73421)
}, 444364, 913046, e => {
    "use strict";
    var t = e.i(113967),
        r = e.i(415013),
        n = e.i(229315),
        i = e.i(203375),
        a = e.i(637608),
        s = e.i(186897);
    async function o({
        hash: t,
        signature: r
    }) {
        let u = (0, n.isHex)(t) ? t : (0, s.toHex)(t),
            {
                secp256k1: l
            } = await e.A(349648),
            d = (() => {
                if ("object" == typeof r && "r" in r && "s" in r) {
                    let {
                        r: e,
                        s: t,
                        v: n,
                        yParity: i
                    } = r, s = c(Number(i ? ? n));
                    return new l.Signature((0, a.hexToBigInt)(e), (0, a.hexToBigInt)(t)).addRecoveryBit(s)
                }
                let e = (0, n.isHex)(r) ? r : (0, s.toHex)(r);
                if (65 !== (0, i.size)(e)) throw Error("invalid signature length");
                let t = c((0, a.hexToNumber)(`0x${e.slice(130)}`));
                return l.Signature.fromCompact(e.substring(2, 130)).addRecoveryBit(t)
            })().recoverPublicKey(u.substring(2)).toHex(!1);
        return `0x${d}`
    }

    function c(e) {
        if (0 === e || 1 === e) return e;
        if (27 === e) return 0;
        if (28 === e) return 1;
        throw Error("Invalid yParityOrV value")
    }
    async function u({
        hash: e,
        signature: n
    }) {
        var i;
        let a;
        return i = await o({
            hash: e,
            signature: n
        }), a = (0, r.keccak256)(`0x${i.substring(4)}`).substring(26), (0, t.checksumAddress)(`0x${a}`)
    }
    e.s(["recoverPublicKey", 0, o], 913046), e.s(["recoverAddress", 0, u], 444364)
}, 156405, e => {
    "use strict";
    var t = e.i(444364),
        r = e.i(844268),
        n = e.i(318877),
        i = e.i(186897),
        a = e.i(632768),
        s = e.i(415013);
    async function o(e) {
        let {
            authorization: o,
            signature: c
        } = e;
        return (0, t.recoverAddress)({
            hash: function(e) {
                let {
                    chainId: t,
                    nonce: o,
                    to: c
                } = e, u = e.contractAddress ? ? e.address, l = (0, s.keccak256)((0, r.concatHex)(["0x05", (0, a.toRlp)([t ? (0, i.numberToHex)(t) : "0x", u, o ? (0, i.numberToHex)(o) : "0x"])]));
                return "bytes" === c ? (0, n.hexToBytes)(l) : l
            }(o),
            signature: c ? ? o
        })
    }
    e.s(["recoverAuthorizationAddress", 0, o], 156405)
}, 197122, 150439, e => {
    "use strict";
    var t = e.i(936404),
        r = e.i(949853),
        n = e.i(621030),
        i = e.i(484309);
    class a extends n.BaseError {
        constructor(e, {
            account: n,
            docsPath: a,
            chain: s,
            data: o,
            gas: c,
            gasPrice: u,
            maxFeePerGas: l,
            maxPriorityFeePerGas: d,
            nonce: f,
            to: p,
            value: m
        }) {
            const h = (0, i.prettyPrint)({
                from: n ? .address,
                to: p,
                value: void 0 !== m && `${(0,t.formatEther)(m)} ${s?.nativeCurrency?.symbol||"ETH"}`,
                data: o,
                gas: c,
                gasPrice: void 0 !== u && `${(0,r.formatGwei)(u)} gwei`,
                maxFeePerGas: void 0 !== l && `${(0,r.formatGwei)(l)} gwei`,
                maxPriorityFeePerGas: void 0 !== d && `${(0,r.formatGwei)(d)} gwei`,
                nonce: f
            });
            super(e.shortMessage, {
                cause: e,
                docsPath: a,
                metaMessages: [...e.metaMessages ? [...e.metaMessages, " "] : [], "Estimate Gas Arguments:", h].filter(Boolean),
                name: "EstimateGasExecutionError"
            }), Object.defineProperty(this, "cause", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: void 0
            }), this.cause = e
        }
    }
    e.s(["EstimateGasExecutionError", 0, a], 150439);
    var s = e.i(869076),
        o = e.i(501221);
    e.s(["getEstimateGasError", 0, function(e, {
        docsPath: t,
        ...r
    }) {
        let n;
        return new a((n = (0, o.getNodeError)(e, r)) instanceof s.UnknownNodeError ? e : n, {
            docsPath: t,
            ...r
        })
    }], 197122)
}, 789864, e => {
    "use strict";
    var t = e.i(949853),
        r = e.i(621030);
    class n extends r.BaseError {
        constructor() {
            super("`baseFeeMultiplier` must be greater than 1.", {
                name: "BaseFeeScalarError"
            })
        }
    }
    class i extends r.BaseError {
        constructor() {
            super("Chain does not support EIP-1559 fees.", {
                name: "Eip1559FeesNotSupportedError"
            })
        }
    }
    class a extends r.BaseError {
        constructor({
            maxPriorityFeePerGas: e
        }) {
            super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${(0,t.formatGwei)(e)} gwei).`, {
                name: "MaxFeePerGasTooLowError"
            })
        }
    }
    e.s(["BaseFeeScalarError", 0, n, "Eip1559FeesNotSupportedError", 0, i, "MaxFeePerGasTooLowError", 0, a])
}, 778258, e => {
    "use strict";
    var t = e.i(621030);
    class r extends t.BaseError {
        constructor({
            blockHash: e,
            blockNumber: t
        }) {
            let r = "Block";
            e && (r = `Block at hash "${e}"`), t && (r = `Block at number "${t}"`), super(`${r} could not be found.`, {
                name: "BlockNotFoundError"
            })
        }
    }
    e.s(["BlockNotFoundError", 0, r])
}, 341634, e => {
    "use strict";
    var t = e.i(778258),
        r = e.i(186897),
        n = e.i(130178);
    async function i(e, {
        blockHash: a,
        blockNumber: s,
        blockTag: o = e.experimental_blockTag ? ? "latest",
        includeTransactions: c
    } = {}) {
        let u = c ? ? !1,
            l = void 0 !== s ? (0, r.numberToHex)(s) : void 0,
            d = null;
        if (!(d = a ? await e.request({
                method: "eth_getBlockByHash",
                params: [a, u]
            }, {
                dedupe: !0
            }) : await e.request({
                method: "eth_getBlockByNumber",
                params: [l || o, u]
            }, {
                dedupe: !!l
            }))) throw new t.BlockNotFoundError({
            blockHash: a,
            blockNumber: s
        });
        return (e.chain ? .formatters ? .block ? .format || n.formatBlock)(d, "getBlock")
    }
    e.s(["getBlock", 0, i])
}, 254672, e => {
    "use strict";
    async function t(e) {
        return BigInt(await e.request({
            method: "eth_gasPrice"
        }))
    }
    e.s(["getGasPrice", 0, t])
}, 176890, 327594, e => {
    "use strict";
    var t = e.i(789864),
        r = e.i(280958),
        n = e.i(637608),
        i = e.i(341634),
        a = e.i(254672);
    async function s(e, t) {
        return o(e, t)
    }
    async function o(e, s) {
        let {
            block: o,
            chain: c = e.chain,
            request: u
        } = s || {};
        try {
            let t = c ? .fees ? .maxPriorityFeePerGas ? ? c ? .fees ? .defaultPriorityFee;
            if ("function" == typeof t) {
                let n = o || await (0, r.getAction)(e, i.getBlock, "getBlock")({}),
                    a = await t({
                        block: n,
                        client: e,
                        request: u
                    });
                if (null === a) throw Error();
                return a
            }
            if (void 0 !== t) return t;
            let a = await e.request({
                method: "eth_maxPriorityFeePerGas"
            });
            return (0, n.hexToBigInt)(a)
        } catch {
            let [n, s] = await Promise.all([o ? Promise.resolve(o) : (0, r.getAction)(e, i.getBlock, "getBlock")({}), (0, r.getAction)(e, a.getGasPrice, "getGasPrice")({})]);
            if ("bigint" != typeof n.baseFeePerGas) throw new t.Eip1559FeesNotSupportedError;
            let c = s - n.baseFeePerGas;
            if (c < 0 n) return 0 n;
            return c
        }
    }
    async function c(e, t) {
        return u(e, t)
    }
    async function u(e, n) {
        let {
            block: s,
            chain: c = e.chain,
            request: u,
            type: l = "eip1559"
        } = n || {}, d = await (async () => "function" == typeof c ? .fees ? .baseFeeMultiplier ? c.fees.baseFeeMultiplier({
            block: s,
            client: e,
            request: u
        }) : c ? .fees ? .baseFeeMultiplier ? ? 1.2)();
        if (d < 1) throw new t.BaseFeeScalarError;
        let f = d.toString().split(".")[1] ? .length ? ? 0,
            p = 10 ** f,
            m = e => e * BigInt(Math.ceil(d * p)) / BigInt(p),
            h = s || await (0, r.getAction)(e, i.getBlock, "getBlock")({});
        if ("function" == typeof c ? .fees ? .estimateFeesPerGas) {
            let t = await c.fees.estimateFeesPerGas({
                block: s,
                client: e,
                multiply: m,
                request: u,
                type: l
            });
            if (null !== t) return t
        }
        if ("eip1559" === l) {
            if ("bigint" != typeof h.baseFeePerGas) throw new t.Eip1559FeesNotSupportedError;
            let r = "bigint" == typeof u ? .maxPriorityFeePerGas ? u.maxPriorityFeePerGas : await o(e, {
                    block: h,
                    chain: c,
                    request: u
                }),
                n = m(h.baseFeePerGas);
            return {
                maxFeePerGas: u ? .maxFeePerGas ? ? n + r,
                maxPriorityFeePerGas: r
            }
        }
        return {
            gasPrice: u ? .gasPrice ? ? m(await (0, r.getAction)(e, a.getGasPrice, "getGasPrice")({}))
        }
    }
    e.s(["estimateMaxPriorityFeePerGas", 0, s, "internal_estimateMaxPriorityFeePerGas", 0, o], 327594), e.s(["estimateFeesPerGas", 0, c, "internal_estimateFeesPerGas", 0, u], 176890)
}, 253811, e => {
    "use strict";
    var t = e.i(637608),
        r = e.i(186897);
    async function n(e, {
        address: i,
        blockTag: a = "latest",
        blockNumber: s
    }) {
        let o = await e.request({
            method: "eth_getTransactionCount",
            params: [i, "bigint" == typeof s ? (0, r.numberToHex)(s) : a]
        }, {
            dedupe: !!s
        });
        return (0, t.hexToNumber)(o)
    }
    e.s(["getTransactionCount", 0, n])
}, 745048, e => {
    "use strict";
    var t = e.i(869076),
        r = e.i(484309),
        n = e.i(501221);
    e.s(["getTransactionError", 0, function(e, {
        docsPath: i,
        ...a
    }) {
        let s, o = (s = (0, n.getNodeError)(e, a)) instanceof t.UnknownNodeError ? e : s;
        return new r.TransactionExecutionError(o, {
            docsPath: i,
            ...a
        })
    }])
}, 666965, e => {
    "use strict";
    var t = e.i(637608);
    async function r(e) {
        let r = await e.request({
            method: "eth_chainId"
        }, {
            dedupe: !0
        });
        return (0, t.hexToNumber)(r)
    }
    e.s(["getChainId", 0, r])
}, 949857, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(789864),
        n = e.i(745048),
        i = e.i(375137),
        a = e.i(536760),
        s = e.i(249618),
        o = e.i(280958),
        c = e.i(830363),
        u = e.i(341634),
        l = e.i(666965);
    async function d(e, d) {
        let {
            account: f = e.account,
            accessList: p,
            authorizationList: m,
            chain: h = e.chain,
            blobVersionedHashes: g,
            blobs: y,
            data: b,
            gas: v,
            gasPrice: w,
            maxFeePerBlobGas: x,
            maxFeePerGas: E,
            maxPriorityFeePerGas: T,
            nonce: A,
            nonceManager: B,
            to: P,
            type: I,
            value: C,
            ...k
        } = d, S = await (async () => {
            if (!f || !B || void 0 !== A) return A;
            let r = (0, t.parseAccount)(f),
                n = h ? h.id : await (0, o.getAction)(e, l.getChainId, "getChainId")({});
            return await B.consume({
                address: r.address,
                chainId: n,
                client: e
            })
        })();
        (0, c.assertRequest)(d);
        let N = h ? .formatters ? .transactionRequest ? .format,
            R = (N || s.formatTransactionRequest)({ ...(0, i.extract)(k, {
                    format: N
                }),
                account: f ? (0, t.parseAccount)(f) : void 0,
                accessList: p,
                authorizationList: m,
                blobs: y,
                blobVersionedHashes: g,
                data: b,
                gas: v,
                gasPrice: w,
                maxFeePerBlobGas: x,
                maxFeePerGas: E,
                maxPriorityFeePerGas: T,
                nonce: S,
                to: P,
                type: I,
                value: C
            }, "fillTransaction");
        try {
            let t = await e.request({
                    method: "eth_fillTransaction",
                    params: [R]
                }),
                n = (h ? .formatters ? .transaction ? .format || a.formatTransaction)(t.tx);
            delete n.blockHash, delete n.blockNumber, delete n.r, delete n.s, delete n.transactionIndex, delete n.v, delete n.yParity, n.data = n.input, n.gas && (n.gas = d.gas ? ? n.gas), n.gasPrice && (n.gasPrice = d.gasPrice ? ? n.gasPrice), n.maxFeePerBlobGas && (n.maxFeePerBlobGas = d.maxFeePerBlobGas ? ? n.maxFeePerBlobGas), n.maxFeePerGas && (n.maxFeePerGas = d.maxFeePerGas ? ? n.maxFeePerGas), n.maxPriorityFeePerGas && (n.maxPriorityFeePerGas = d.maxPriorityFeePerGas ? ? n.maxPriorityFeePerGas), void 0 !== n.nonce && (n.nonce = d.nonce ? ? n.nonce);
            let i = await (async () => {
                if ("function" == typeof h ? .fees ? .baseFeeMultiplier) {
                    let t = await (0, o.getAction)(e, u.getBlock, "getBlock")({});
                    return h.fees.baseFeeMultiplier({
                        block: t,
                        client: e,
                        request: d
                    })
                }
                return h ? .fees ? .baseFeeMultiplier ? ? 1.2
            })();
            if (i < 1) throw new r.BaseFeeScalarError;
            let s = i.toString().split(".")[1] ? .length ? ? 0,
                c = 10 ** s,
                l = e => e * BigInt(Math.ceil(i * c)) / BigInt(c);
            return n.feePayerSignature || (n.maxFeePerGas && !d.maxFeePerGas && (n.maxFeePerGas = l(n.maxFeePerGas)), n.gasPrice && !d.gasPrice && (n.gasPrice = l(n.gasPrice))), {
                raw: t.raw,
                transaction: {
                    from: R.from,
                    ...n
                },
                ...t.capabilities ? {
                    capabilities: t.capabilities
                } : {}
            }
        } catch (t) {
            throw (0, n.getTransactionError)(t, { ...d,
                chain: e.chain
            })
        }
    }
    e.s(["fillTransaction", 0, d])
}, 1552, e => {
    "use strict";
    e.s(["defaultParameters", () => y, "prepareTransactionRequest", () => w]);
    var t = e.i(372387),
        r = e.i(176890),
        n = e.i(804313),
        i = e.i(341634),
        a = e.i(253811),
        s = e.i(789864),
        o = e.i(706139),
        c = e.i(895315),
        u = e.i(502930),
        l = e.i(899953),
        d = e.i(280958),
        f = e.i(979281),
        p = e.i(830363),
        m = e.i(50143),
        h = e.i(949857),
        g = e.i(666965);
    let y = ["blobVersionedHashes", "chainId", "fees", "gas", "nonce", "type"],
        b = new Map,
        v = new f.LruMap(128);
    async function w(e, f) {
        let w, x, E = f;
        E.account ? ? = e.account, E.parameters ? ? = y;
        let {
            account: T,
            chain: A = e.chain,
            nonceManager: B,
            parameters: P
        } = E, I = "function" == typeof A ? .prepareTransactionRequest ? {
            fn: A.prepareTransactionRequest,
            runAt: ["beforeFillTransaction"]
        } : Array.isArray(A ? .prepareTransactionRequest) ? {
            fn: A.prepareTransactionRequest[0],
            runAt: A.prepareTransactionRequest[1].runAt
        } : void 0;
        async function C() {
            return w ? w : void 0 !== E.chainId ? E.chainId : A ? A.id : w = await (0, d.getAction)(e, g.getChainId, "getChainId")({})
        }
        let k = T ? (0, t.parseAccount)(T) : T,
            S = E.nonce;
        if (P.includes("nonce") && void 0 === S && k && B) {
            let t = await C();
            S = await B.consume({
                address: k.address,
                chainId: t,
                client: e
            })
        }
        I ? .fn && I.runAt ? .includes("beforeFillTransaction") && (E = await I.fn({ ...E,
            chain: A
        }, {
            phase: "beforeFillTransaction"
        }), S ? ? = E.nonce);
        let N = (!(P.includes("blobVersionedHashes") || P.includes("sidecars")) || !E.kzg || !E.blobs) && !1 !== v.get(e.uid) && ["fees", "gas"].some(e => P.includes(e)) && (P.includes("chainId") && "number" != typeof E.chainId || P.includes("nonce") && "number" != typeof S || P.includes("fees") && "bigint" != typeof E.gasPrice && ("bigint" != typeof E.maxFeePerGas || "bigint" != typeof E.maxPriorityFeePerGas) || P.includes("gas") && "bigint" != typeof E.gas) ? await (0, d.getAction)(e, h.fillTransaction, "fillTransaction")({ ...E,
            nonce: S
        }).then(t => {
            let {
                chainId: r,
                from: n,
                gas: i,
                gasPrice: a,
                nonce: s,
                maxFeePerBlobGas: o,
                maxFeePerGas: c,
                maxPriorityFeePerGas: u,
                type: l,
                ...d
            } = t.transaction;
            return v.set(e.uid, !0), { ...E,
                ...n ? {
                    from: n
                } : {},
                ...l && !E.type ? {
                    type: l
                } : {},
                ...void 0 !== r ? {
                    chainId: r
                } : {},
                ...void 0 !== i ? {
                    gas: i
                } : {},
                ...void 0 !== a ? {
                    gasPrice: a
                } : {},
                ...void 0 !== s ? {
                    nonce: s
                } : {},
                ...void 0 !== o && "legacy" !== E.type && "eip2930" !== E.type ? {
                    maxFeePerBlobGas: o
                } : {},
                ...void 0 !== c && "legacy" !== E.type && "eip2930" !== E.type ? {
                    maxFeePerGas: c
                } : {},
                ...void 0 !== u && "legacy" !== E.type && "eip2930" !== E.type ? {
                    maxPriorityFeePerGas: u
                } : {},
                ..."nonceKey" in d && void 0 !== d.nonceKey ? {
                    nonceKey: d.nonceKey
                } : {},
                ..."keyAuthorization" in d && void 0 !== d.keyAuthorization && null !== d.keyAuthorization && !("keyAuthorization" in E) ? {
                    keyAuthorization: d.keyAuthorization
                } : {},
                ..."feePayerSignature" in d && void 0 !== d.feePayerSignature && null !== d.feePayerSignature ? {
                    feePayerSignature: d.feePayerSignature
                } : {},
                ..."feeToken" in d && void 0 !== d.feeToken && null !== d.feeToken && !("feeToken" in E) ? {
                    feeToken: d.feeToken
                } : {},
                ...t.capabilities ? {
                    _capabilities: t.capabilities
                } : {}
            }
        }).catch(t => {
            if ("TransactionExecutionError" !== t.name) return E;
            if (t.walk ? .(e => "ExecutionRevertedError" === e.name)) throw t;
            return t.walk ? .(e => "MethodNotFoundRpcError" === e.name || "MethodNotSupportedRpcError" === e.name || e.message ? .includes("eth_fillTransaction is not available")) && v.set(e.uid, !1), E
        }) : E;
        S ? ? = N.nonce;
        let {
            blobs: R,
            gas: F,
            kzg: z,
            type: H
        } = E = { ...N,
            ...k ? {
                from: k ? .address
            } : {},
            ...void 0 !== S ? {
                nonce: S
            } : {}
        };
        async function L() {
            return x || (x = await (0, d.getAction)(e, i.getBlock, "getBlock")({
                blockTag: "latest"
            }))
        }
        if (I ? .fn && I.runAt ? .includes("beforeFillParameters") && (E = await I.fn({ ...E,
                chain: A
            }, {
                phase: "beforeFillParameters"
            })), P.includes("nonce") && void 0 === S && k && !B && (E.nonce = await (0, d.getAction)(e, a.getTransactionCount, "getTransactionCount")({
                address: k.address,
                blockTag: "pending"
            })), (P.includes("blobVersionedHashes") || P.includes("sidecars")) && R && z) {
            let e = (0, o.blobsToCommitments)({
                blobs: R,
                kzg: z
            });
            if (P.includes("blobVersionedHashes")) {
                let t = (0, u.commitmentsToVersionedHashes)({
                    commitments: e,
                    to: "hex"
                });
                E.blobVersionedHashes = t
            }
            if (P.includes("sidecars")) {
                let t = (0, c.blobsToProofs)({
                        blobs: R,
                        commitments: e,
                        kzg: z
                    }),
                    r = (0, l.toBlobSidecars)({
                        blobs: R,
                        commitments: e,
                        proofs: t,
                        to: "hex"
                    });
                E.sidecars = r
            }
        }
        if (P.includes("chainId") && (E.chainId = await C()), (P.includes("fees") || P.includes("type")) && void 0 === H) try {
            E.type = (0, m.getTransactionType)(E)
        } catch {
            let t = b.get(e.uid);
            if (void 0 === t) {
                let r = await L();
                t = "bigint" == typeof r ? .baseFeePerGas, b.set(e.uid, t)
            }
            E.type = t ? "eip1559" : "legacy"
        }
        if (P.includes("fees"))
            if ("legacy" !== E.type && "eip2930" !== E.type) {
                if (void 0 === E.maxFeePerGas || void 0 === E.maxPriorityFeePerGas) {
                    let t = await L(),
                        {
                            maxFeePerGas: n,
                            maxPriorityFeePerGas: i
                        } = await (0, r.internal_estimateFeesPerGas)(e, {
                            block: t,
                            chain: A,
                            request: E
                        });
                    if (void 0 === E.maxPriorityFeePerGas && E.maxFeePerGas && E.maxFeePerGas < i) throw new s.MaxFeePerGasTooLowError({
                        maxPriorityFeePerGas: i
                    });
                    E.maxPriorityFeePerGas = i, E.maxFeePerGas = n
                }
            } else {
                if (void 0 !== E.maxFeePerGas || void 0 !== E.maxPriorityFeePerGas) throw new s.Eip1559FeesNotSupportedError;
                if (void 0 === E.gasPrice) {
                    let t = await L(),
                        {
                            gasPrice: n
                        } = await (0, r.internal_estimateFeesPerGas)(e, {
                            block: t,
                            chain: A,
                            request: E,
                            type: "legacy"
                        });
                    E.gasPrice = n
                }
            }
        return P.includes("gas") && void 0 === F && (E.gas = await (0, d.getAction)(e, n.estimateGas, "estimateGas")({ ...E,
            account: k,
            prepare: k ? .type === "local" ? [] : ["blobVersionedHashes"]
        })), I ? .fn && I.runAt ? .includes("afterFillParameters") && (E = await I.fn({ ...E,
            chain: A
        }, {
            phase: "afterFillParameters"
        })), (0, p.assertRequest)(E), delete E.parameters, E
    }
}, 804313, e => {
    "use strict";
    e.s(["estimateGas", () => d]);
    var t = e.i(372387),
        r = e.i(621030),
        n = e.i(156405),
        i = e.i(186897),
        a = e.i(197122),
        s = e.i(375137),
        o = e.i(249618),
        c = e.i(525270),
        u = e.i(830363),
        l = e.i(1552);
    async function d(e, d) {
        let {
            account: f = e.account,
            prepare: p = !0
        } = d, m = f ? (0, t.parseAccount)(f) : void 0, h = Array.isArray(p) ? p : m ? .type !== "local" ? ["blobVersionedHashes"] : void 0;
        try {
            let t = await (async () => d.to ? d.to : d.authorizationList && d.authorizationList.length > 0 ? await (0, n.recoverAuthorizationAddress)({
                    authorization: d.authorizationList[0]
                }).catch(() => {
                    throw new r.BaseError("`to` is required. Could not infer from `authorizationList`")
                }) : void 0)(),
                {
                    accessList: a,
                    authorizationList: f,
                    blobs: g,
                    blobVersionedHashes: y,
                    blockNumber: b,
                    blockTag: v,
                    data: w,
                    gas: x,
                    gasPrice: E,
                    maxFeePerBlobGas: T,
                    maxFeePerGas: A,
                    maxPriorityFeePerGas: B,
                    nonce: P,
                    value: I,
                    stateOverride: C,
                    ...k
                } = p ? await (0, l.prepareTransactionRequest)(e, { ...d,
                    parameters: h,
                    to: t
                }) : d;
            if (x && d.gas !== x) return x;
            let S = ("bigint" == typeof b ? (0, i.numberToHex)(b) : void 0) || v,
                N = (0, c.serializeStateOverride)(C);
            (0, u.assertRequest)(d);
            let R = e.chain ? .formatters ? .transactionRequest ? .format,
                F = (R || o.formatTransactionRequest)({ ...(0, s.extract)(k, {
                        format: R
                    }),
                    account: m,
                    accessList: a,
                    authorizationList: f,
                    blobs: g,
                    blobVersionedHashes: y,
                    data: w,
                    gasPrice: E,
                    maxFeePerBlobGas: T,
                    maxFeePerGas: A,
                    maxPriorityFeePerGas: B,
                    nonce: P,
                    to: t,
                    value: I
                }, "estimateGas");
            return BigInt(await e.request({
                method: "eth_estimateGas",
                params: N ? [F, S ? ? e.experimental_blockTag ? ? "latest", N] : S ? [F, S] : [F]
            }))
        } catch (t) {
            throw (0, a.getEstimateGasError)(t, { ...d,
                account: m,
                chain: e.chain
            })
        }
    }
}, 971951, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(56339),
        n = e.i(701123),
        i = e.i(280958),
        a = e.i(804313);
    async function s(e, s) {
        let {
            abi: o,
            address: c,
            args: u,
            functionName: l,
            dataSuffix: d = "string" == typeof e.dataSuffix ? e.dataSuffix : e.dataSuffix ? .value,
            ...f
        } = s, p = (0, r.encodeFunctionData)({
            abi: o,
            args: u,
            functionName: l
        });
        try {
            return await (0, i.getAction)(e, a.estimateGas, "estimateGas")({
                data: `${p}${d?d.replace("0x",""):""}`,
                to: c,
                ...f
            })
        } catch (r) {
            let e = f.account ? (0, t.parseAccount)(f.account) : void 0;
            throw (0, n.getContractError)(r, {
                abi: o,
                address: c,
                args: u,
                docsPath: "/docs/contract/estimateContractGas",
                functionName: l,
                sender: e ? .address
            })
        }
    }
    e.s(["estimateContractGas", 0, s])
}, 776516, e => {
    "use strict";
    var t = e.i(866674),
        r = e.i(933619),
        n = e.i(56339),
        i = e.i(186897),
        a = e.i(280958),
        s = e.i(376436);
    async function o(e, {
        address: c,
        blockNumber: u,
        blockTag: l = e.experimental_blockTag ? ? "latest"
    }) {
        if (e.batch ? .multicall && e.chain ? .contracts ? .multicall3) {
            let i = e.chain.contracts.multicall3.address,
                o = (0, n.encodeFunctionData)({
                    abi: t.multicall3Abi,
                    functionName: "getEthBalance",
                    args: [c]
                }),
                {
                    data: d
                } = await (0, a.getAction)(e, s.call, "call")({
                    to: i,
                    data: o,
                    blockNumber: u,
                    blockTag: l
                });
            return (0, r.decodeFunctionResult)({
                abi: t.multicall3Abi,
                functionName: "getEthBalance",
                args: [c],
                data: d || "0x"
            })
        }
        let d = "bigint" == typeof u ? (0, i.numberToHex)(u) : void 0;
        return BigInt(await e.request({
            method: "eth_getBalance",
            params: [c, d || l]
        }))
    }
    e.s(["getBalance", 0, o])
}, 591191, e => {
    "use strict";
    async function t(e) {
        return BigInt(await e.request({
            method: "eth_blobBaseFee"
        }))
    }
    e.s(["getBlobBaseFee", 0, t])
}, 315622, 600117, e => {
    "use strict";
    let t = new Map,
        r = new Map;
    async function n(e, {
        cacheKey: i,
        cacheTime: a = 1 / 0
    }) {
        let s, o, c, u = (o = (s = (e, t) => ({
                clear: () => t.delete(e),
                get: () => t.get(e),
                set: r => t.set(e, r)
            }))(i, t), {
                clear: () => {
                    o.clear(), c.clear()
                },
                promise: o,
                response: c = s(i, r)
            }),
            l = u.response.get();
        if (l && a > 0 && Date.now() - l.created.getTime() < a) return l.data;
        let d = u.promise.get();
        d || (d = e(), u.promise.set(d));
        try {
            let e = await d;
            return u.response.set({
                created: new Date,
                data: e
            }), e
        } finally {
            u.promise.clear()
        }
    }
    async function i(e, {
        cacheTime: t = e.cacheTime
    } = {}) {
        let r;
        return BigInt(await n(() => e.request({
            method: "eth_blockNumber"
        }), {
            cacheKey: (r = e.uid, `blockNumber.${r}`),
            cacheTime: t
        }))
    }
    e.s(["withCache", 0, n], 600117), e.s(["getBlockNumber", 0, i], 315622)
}, 688112, 901362, e => {
    "use strict";
    var t = e.i(637608),
        r = e.i(186897);
    async function n(e, {
        blockHash: i,
        blockNumber: a,
        blockTag: s = "latest"
    } = {}) {
        let o, c = void 0 !== a ? (0, r.numberToHex)(a) : void 0;
        return o = i ? await e.request({
            method: "eth_getBlockTransactionCountByHash",
            params: [i]
        }, {
            dedupe: !0
        }) : await e.request({
            method: "eth_getBlockTransactionCountByNumber",
            params: [c || s]
        }, {
            dedupe: !!c
        }), (0, t.hexToNumber)(o)
    }
    async function i(e, {
        address: t,
        blockNumber: n,
        blockTag: a = "latest"
    }) {
        let s = void 0 !== n ? (0, r.numberToHex)(n) : void 0,
            o = await e.request({
                method: "eth_getCode",
                params: [t, s || a]
            }, {
                dedupe: !!s
            });
        if ("0x" !== o) return o
    }
    e.s(["getBlockTransactionCount", 0, n], 688112), e.s(["getCode", 0, i], 901362)
}, 728027, 942401, 84334, 306276, e => {
    "use strict";
    var t = e.i(692614),
        r = e.i(280958),
        n = e.i(742881),
        i = e.i(687e3),
        a = e.i(318877),
        s = e.i(743141),
        o = e.i(415013),
        c = e.i(65560),
        u = e.i(624297),
        l = e.i(292279),
        d = e.i(203375),
        f = e.i(930460),
        p = e.i(628584);
    let m = "/docs/contract/decodeEventLog";

    function h(e) {
        let {
            abi: t,
            data: r,
            strict: n,
            topics: i
        } = e, a = n ? ? !0, [s, ...o] = i;
        if (!s) throw new u.AbiEventSignatureEmptyTopicsError({
            docsPath: m
        });
        let h = t.find(e => "event" === e.type && s === (0, c.toEventSelector)((0, p.formatAbiItem)(e)));
        if (!(h && "name" in h) || "event" !== h.type) throw new u.AbiEventSignatureNotFoundError(s, {
            docsPath: m
        });
        let {
            name: g,
            inputs: y
        } = h, b = y ? .some(e => !("name" in e && e.name)), v = b ? [] : {}, w = y.map((e, t) => [e, t]).filter(([e]) => "indexed" in e && e.indexed), x = [];
        for (let e = 0; e < w.length; e++) {
            let [t, r] = w[e], n = o[e];
            if (!n) {
                if (a) throw new u.DecodeLogTopicsMismatch({
                    abiItem: h,
                    param: t
                });
                x.push([t, r]);
                continue
            }
            v[b ? r : t.name || r] = function({
                param: e,
                value: t
            }) {
                return "string" === e.type || "bytes" === e.type || "tuple" === e.type || e.type.match(/^(.*)\[(\d+)?\]$/) ? t : ((0, f.decodeAbiParameters)([e], t) || [])[0]
            }({
                param: t,
                value: n
            })
        }
        let E = y.filter(e => !("indexed" in e && e.indexed)),
            T = a ? E : [...x.map(([e]) => e), ...E];
        if (T.length > 0) {
            if (r && "0x" !== r) try {
                let e = (0, f.decodeAbiParameters)(T, r);
                if (e) {
                    let t = 0;
                    if (!a)
                        for (let [r, n] of x) v[b ? n : r.name || n] = e[t++];
                    if (b)
                        for (let r = 0; r < y.length; r++) void 0 === v[r] && t < e.length && (v[r] = e[t++]);
                    else
                        for (let r = 0; r < E.length; r++) v[E[r].name] = e[t++]
                }
            } catch (e) {
                if (a) {
                    if (e instanceof u.AbiDecodingDataSizeTooSmallError || e instanceof l.PositionOutOfBoundsError) throw new u.DecodeLogDataMismatch({
                        abiItem: h,
                        data: r,
                        params: T,
                        size: (0, d.size)(r)
                    });
                    throw e
                }
            } else if (a) throw new u.DecodeLogDataMismatch({
                abiItem: h,
                data: "0x",
                params: T,
                size: 0
            })
        }
        return {
            eventName: g,
            args: Object.values(v).length > 0 ? v : void 0
        }
    }

    function g(e) {
        let {
            abi: t,
            args: r,
            logs: n,
            strict: u = !0
        } = e, l = (() => {
            if (e.eventName) return Array.isArray(e.eventName) ? e.eventName : [e.eventName]
        })(), d = t.filter(e => "event" === e.type).map(e => ({
            abi: e,
            selector: (0, c.toEventSelector)(e)
        }));
        return n.map(e => {
            let t, n, c = "string" == typeof e.blockNumber ? (0, s.formatLog)(e) : e,
                f = d.filter(e => c.topics[0] === e.selector);
            if (0 === f.length) return null;
            for (let e of f) try {
                t = h({ ...c,
                    abi: [e.abi],
                    strict: !0
                }), n = e;
                break
            } catch {}
            if (!t && !u) {
                n = f[0];
                try {
                    t = h({
                        data: c.data,
                        topics: c.topics,
                        abi: [n.abi],
                        strict: !1
                    })
                } catch {
                    let e = n.abi.inputs ? .some(e => !("name" in e && e.name));
                    return { ...c,
                        args: e ? [] : {},
                        eventName: n.abi.name
                    }
                }
            }
            return t && n && (!l || l.includes(t.eventName)) && function(e) {
                let {
                    args: t,
                    inputs: r,
                    matchArgs: n
                } = e;
                if (!n) return !0;
                if (!t) return !1;

                function s(e, t, r) {
                    try {
                        if ("address" === e.type) return (0, i.isAddressEqual)(t, r);
                        if ("string" === e.type || "bytes" === e.type) return (0, o.keccak256)((0, a.toBytes)(t)) === r;
                        return t === r
                    } catch {
                        return !1
                    }
                }
                return Array.isArray(t) && Array.isArray(n) ? n.every((e, n) => {
                    if (null == e) return !0;
                    let i = r[n];
                    return !!i && (Array.isArray(e) ? e : [e]).some(e => s(i, e, t[n]))
                }) : !("object" != typeof t || Array.isArray(t) || "object" != typeof n || Array.isArray(n)) && Object.entries(n).every(([e, n]) => {
                    if (null == n) return !0;
                    let i = r.find(t => t.name === e);
                    return !!i && (Array.isArray(n) ? n : [n]).some(r => s(i, r, t[e]))
                })
            }({
                args: t.args,
                inputs: n.abi.inputs,
                matchArgs: r
            }) ? { ...t,
                ...c
            } : null
        }).filter(Boolean)
    }
    e.s(["decodeEventLog", 0, h], 942401), e.s(["parseEventLogs", 0, g], 84334);
    var y = e.i(186897);
    async function b(e, {
        address: t,
        blockHash: r,
        fromBlock: i,
        toBlock: a,
        event: o,
        events: c,
        args: u,
        strict: l
    } = {}) {
        let d = c ? ? (o ? [o] : void 0),
            f = [];
        d && (f = [d.flatMap(e => (0, n.encodeEventTopics)({
            abi: [e],
            eventName: e.name,
            args: c ? void 0 : u
        }))], o && (f = f[0]));
        let p = (r ? await e.request({
            method: "eth_getLogs",
            params: [{
                address: t,
                topics: f,
                blockHash: r
            }]
        }) : await e.request({
            method: "eth_getLogs",
            params: [{
                address: t,
                topics: f,
                fromBlock: "bigint" == typeof i ? (0, y.numberToHex)(i) : i,
                toBlock: "bigint" == typeof a ? (0, y.numberToHex)(a) : a
            }]
        })).map(e => (0, s.formatLog)(e));
        return d ? g({
            abi: d,
            args: u,
            logs: p,
            strict: l ? ? !1
        }) : p
    }
    async function v(e, n) {
        let {
            abi: i,
            address: a,
            args: s,
            blockHash: o,
            eventName: c,
            fromBlock: u,
            toBlock: l,
            strict: d
        } = n, f = c ? (0, t.getAbiItem)({
            abi: i,
            name: c
        }) : void 0, p = f ? void 0 : i.filter(e => "event" === e.type);
        return (0, r.getAction)(e, b, "getLogs")({
            address: a,
            args: s,
            blockHash: o,
            event: f,
            events: p,
            fromBlock: u,
            toBlock: l,
            strict: d
        })
    }
    e.s(["getLogs", 0, b], 306276), e.s(["getContractEvents", 0, v], 728027)
}, 975473, 621793, 278904, e => {
    "use strict";
    var t = e.i(113967),
        r = e.i(203375),
        n = e.i(394254),
        i = e.i(901362);
    async function a(e, {
        address: s,
        blockNumber: o,
        blockTag: c = "latest"
    }) {
        let u = await (0, i.getCode)(e, {
            address: s,
            ...void 0 !== o ? {
                blockNumber: o
            } : {
                blockTag: c
            }
        });
        if (u && 23 === (0, r.size)(u) && u.startsWith("0xef0100")) return (0, t.getAddress)((0, n.slice)(u, 3, 23))
    }
    e.s(["getDelegation", 0, a], 975473);
    var s = e.i(621030);
    class o extends s.BaseError {
        constructor({
            address: e
        }) {
            super(`No EIP-712 domain found on contract "${e}".`, {
                metaMessages: ["Ensure that:", `- The contract is deployed at the address "${e}".`, "- `eip712Domain()` function exists on the contract.", "- `eip712Domain()` function matches signature to ERC-5267 specification."],
                name: "Eip712DomainNotFoundError"
            })
        }
    }
    var c = e.i(280958),
        u = e.i(167164);
    async function l(e, t) {
        let {
            address: r,
            factory: n,
            factoryData: i
        } = t;
        try {
            let [t, a, s, o, l, f, p] = await (0, c.getAction)(e, u.readContract, "readContract")({
                abi: d,
                address: r,
                functionName: "eip712Domain",
                factory: n,
                factoryData: i
            });
            return {
                domain: {
                    name: a,
                    version: s,
                    chainId: Number(o),
                    verifyingContract: l,
                    salt: f
                },
                extensions: p,
                fields: t
            }
        } catch (e) {
            if ("ContractFunctionExecutionError" === e.name && "ContractFunctionZeroDataError" === e.cause.name) throw new o({
                address: r
            });
            throw e
        }
    }
    let d = [{
        inputs: [],
        name: "eip712Domain",
        outputs: [{
            name: "fields",
            type: "bytes1"
        }, {
            name: "name",
            type: "string"
        }, {
            name: "version",
            type: "string"
        }, {
            name: "chainId",
            type: "uint256"
        }, {
            name: "verifyingContract",
            type: "address"
        }, {
            name: "salt",
            type: "bytes32"
        }, {
            name: "extensions",
            type: "uint256[]"
        }],
        stateMutability: "view",
        type: "function"
    }];
    e.s(["getEip712Domain", 0, l], 621793);
    var f = e.i(186897);
    async function p(e, {
        blockCount: t,
        blockNumber: r,
        blockTag: n = "latest",
        rewardPercentiles: i
    }) {
        var a;
        let s = "bigint" == typeof r ? (0, f.numberToHex)(r) : void 0;
        return {
            baseFeePerGas: (a = await e.request({
                method: "eth_feeHistory",
                params: [(0, f.numberToHex)(t), s || n, i]
            }, {
                dedupe: !!s
            })).baseFeePerGas.map(e => BigInt(e)),
            gasUsedRatio: a.gasUsedRatio,
            oldestBlock: BigInt(a.oldestBlock),
            reward: a.reward ? .map(e => e.map(e => BigInt(e)))
        }
    }
    e.s(["getFeeHistory", 0, p], 278904)
}, 226295, e => {
    "use strict";
    var t = e.i(84334),
        r = e.i(743141);
    async function n(e, {
        filter: i
    }) {
        let a = "strict" in i && i.strict,
            s = await i.request({
                method: "eth_getFilterChanges",
                params: [i.id]
            });
        if ("string" == typeof s[0]) return s;
        let o = s.map(e => (0, r.formatLog)(e));
        return "abi" in i && i.abi ? (0, t.parseEventLogs)({
            abi: i.abi,
            logs: o,
            strict: a
        }) : o
    }
    e.s(["getFilterChanges", 0, n])
}, 587539, 92868, 437313, e => {
    "use strict";
    var t = e.i(84334),
        r = e.i(743141);
    async function n(e, {
        filter: i
    }) {
        let a = i.strict ? ? !1,
            s = (await i.request({
                method: "eth_getFilterLogs",
                params: [i.id]
            })).map(e => (0, r.formatLog)(e));
        return i.abi ? (0, t.parseEventLogs)({
            abi: i.abi,
            logs: s,
            strict: a
        }) : s
    }
    e.s(["getFilterLogs", 0, n], 587539);
    var i = e.i(186897),
        a = e.i(637608);
    async function s(e, {
        address: t,
        blockNumber: r,
        blockTag: n,
        storageKeys: o
    }) {
        let c = void 0 !== r ? (0, i.numberToHex)(r) : void 0;
        var u = await e.request({
            method: "eth_getProof",
            params: [t, o, c || (n ? ? "latest")]
        });
        return { ...u,
            balance: u.balance ? BigInt(u.balance) : void 0,
            nonce: u.nonce ? (0, a.hexToNumber)(u.nonce) : void 0,
            storageProof: u.storageProof ? u.storageProof.map(e => ({ ...e,
                value: BigInt(e.value)
            })) : void 0
        }
    }
    async function o(e, {
        address: t,
        blockNumber: r,
        blockTag: n = "latest",
        slot: a
    }) {
        let s = void 0 !== r ? (0, i.numberToHex)(r) : void 0;
        return await e.request({
            method: "eth_getStorageAt",
            params: [t, a, s || n]
        })
    }
    e.s(["getProof", 0, s], 92868), e.s(["getStorageAt", 0, o], 437313)
}, 811787, e => {
    "use strict";
    var t = e.i(484309),
        r = e.i(186897),
        n = e.i(536760);
    async function i(e, {
        blockHash: a,
        blockNumber: s,
        blockTag: o,
        hash: c,
        index: u,
        sender: l,
        nonce: d
    }) {
        let f = o || "latest",
            p = void 0 !== s ? (0, r.numberToHex)(s) : void 0,
            m = null;
        if (c ? m = await e.request({
                method: "eth_getTransactionByHash",
                params: [c]
            }, {
                dedupe: !0
            }) : a ? m = await e.request({
                method: "eth_getTransactionByBlockHashAndIndex",
                params: [a, (0, r.numberToHex)(u)]
            }, {
                dedupe: !0
            }) : (p || f) && "number" == typeof u ? m = await e.request({
                method: "eth_getTransactionByBlockNumberAndIndex",
                params: [p || f, (0, r.numberToHex)(u)]
            }, {
                dedupe: !!p
            }) : l && "number" == typeof d && (m = await e.request({
                method: "eth_getTransactionBySenderAndNonce",
                params: [l, (0, r.numberToHex)(d)]
            }, {
                dedupe: !0
            })), !m) throw new t.TransactionNotFoundError({
            blockHash: a,
            blockNumber: s,
            blockTag: f,
            hash: c,
            index: u
        });
        return (e.chain ? .formatters ? .transaction ? .format || n.formatTransaction)(m, "getTransaction")
    }
    e.s(["getTransaction", 0, i])
}, 992917, e => {
    "use strict";
    var t = e.i(280958),
        r = e.i(315622),
        n = e.i(811787);
    async function i(e, {
        hash: a,
        transactionReceipt: s
    }) {
        let [o, c] = await Promise.all([(0, t.getAction)(e, r.getBlockNumber, "getBlockNumber")({}), a ? (0, t.getAction)(e, n.getTransaction, "getTransaction")({
            hash: a
        }) : void 0]), u = s ? .blockNumber || c ? .blockNumber;
        return u ? o - u + 1 n : 0 n
    }
    e.s(["getTransactionConfirmations", 0, i])
}, 858403, e => {
    "use strict";
    var t = e.i(484309),
        r = e.i(900042);
    async function n(e, {
        hash: i
    }) {
        let a = await e.request({
            method: "eth_getTransactionReceipt",
            params: [i]
        }, {
            dedupe: !0
        });
        if (!a) throw new t.TransactionReceiptNotFoundError({
            hash: i
        });
        return (e.chain ? .formatters ? .transactionReceipt ? .format || r.formatTransactionReceipt)(a, "getTransactionReceipt")
    }
    e.s(["getTransactionReceipt", 0, n])
}, 548133, 365173, e => {
    "use strict";
    var t = e.i(866674),
        r = e.i(406954),
        n = e.i(624297),
        i = e.i(621030),
        a = e.i(285510),
        s = e.i(933619),
        o = e.i(56339),
        c = e.i(961304),
        u = e.i(701123),
        l = e.i(280958),
        d = e.i(167164);
    async function f(e, f) {
        let {
            account: p,
            authorizationList: m,
            allowFailure: h = !0,
            blockNumber: g,
            blockOverrides: y,
            blockTag: b,
            stateOverride: v
        } = f, w = f.contracts, {
            batchSize: x = f.batchSize ? ? 1024,
            deployless: E = f.deployless ? ? !1
        } = "object" == typeof e.batch ? .multicall ? e.batch.multicall : {}, T = (() => {
            if (f.multicallAddress) return f.multicallAddress;
            if (E) return null;
            if (e.chain) return (0, c.getChainContractAddress)({
                blockNumber: g,
                chain: e.chain,
                contract: "multicall3"
            });
            throw Error("client chain not configured. multicallAddress is required.")
        })(), A = [
            []
        ], B = 0, P = 0;
        for (let e = 0; e < w.length; e++) {
            let {
                abi: t,
                address: r,
                args: n,
                functionName: i
            } = w[e];
            try {
                let e = (0, o.encodeFunctionData)({
                    abi: t,
                    args: n,
                    functionName: i
                });
                P += (e.length - 2) / 2, x > 0 && P > x && A[B].length > 0 && (B++, P = (e.length - 2) / 2, A[B] = []), A[B] = [...A[B], {
                    allowFailure: !0,
                    callData: e,
                    target: r
                }]
            } catch (a) {
                let e = (0, u.getContractError)(a, {
                    abi: t,
                    address: r,
                    args: n,
                    docsPath: "/docs/contract/multicall",
                    functionName: i,
                    sender: p
                });
                if (!h) throw e;
                A[B] = [...A[B], {
                    allowFailure: !0,
                    callData: "0x",
                    target: r
                }]
            }
        }
        let I = await Promise.allSettled(A.map(n => (0, l.getAction)(e, d.readContract, "readContract")({ ...null === T ? {
                    code: r.multicall3Bytecode
                } : {
                    address: T
                },
                abi: t.multicall3Abi,
                account: p,
                args: [n],
                authorizationList: m,
                blockNumber: g,
                blockOverrides: y,
                blockTag: b,
                functionName: "aggregate3",
                stateOverride: v
            }))),
            C = [];
        for (let e = 0; e < I.length; e++) {
            let t = I[e];
            if ("rejected" === t.status) {
                if (!h) throw t.reason;
                for (let r = 0; r < A[e].length; r++) C.push({
                    status: "failure",
                    error: t.reason,
                    result: void 0
                });
                continue
            }
            let r = t.value;
            for (let t = 0; t < r.length; t++) {
                let {
                    returnData: i,
                    success: o
                } = r[t], {
                    callData: c
                } = A[e][t], {
                    abi: l,
                    address: d,
                    functionName: f,
                    args: p
                } = w[C.length];
                try {
                    if ("0x" === c) throw new n.AbiDecodingZeroDataError;
                    if (!o) throw new a.RawContractError({
                        data: i
                    });
                    let e = (0, s.decodeFunctionResult)({
                        abi: l,
                        args: p,
                        data: i,
                        functionName: f
                    });
                    C.push(h ? {
                        result: e,
                        status: "success"
                    } : e)
                } catch (t) {
                    let e = (0, u.getContractError)(t, {
                        abi: l,
                        address: d,
                        args: p,
                        docsPath: "/docs/contract/multicall",
                        functionName: f
                    });
                    if (!h) throw e;
                    C.push({
                        error: e,
                        result: void 0,
                        status: "failure"
                    })
                }
            }
        }
        if (C.length !== w.length) throw new i.BaseError("multicall results mismatch");
        return C
    }
    e.s(["multicall", 0, f], 548133);
    var p = e.i(49392),
        m = e.i(372387),
        h = e.i(869076),
        g = e.i(844268),
        y = e.i(186897),
        b = e.i(501221),
        v = e.i(130178),
        w = e.i(743141),
        x = e.i(249618),
        E = e.i(525270),
        T = e.i(830363);
    async function A(e, t) {
        let {
            blockNumber: r,
            blockTag: i = e.experimental_blockTag ? ? "latest",
            blocks: c,
            returnFullTransactions: l,
            traceTransfers: d,
            validation: f
        } = t;
        try {
            let t = [];
            for (let e of c) {
                let r = e.blockOverrides ? p.toRpc(e.blockOverrides) : void 0,
                    n = e.calls.map(e => {
                        let t = e.account ? (0, m.parseAccount)(e.account) : void 0,
                            r = e.abi ? (0, o.encodeFunctionData)(e) : e.data,
                            n = { ...e,
                                account: t,
                                data: e.dataSuffix ? (0, g.concat)([r || "0x", e.dataSuffix]) : r,
                                from: e.from ? ? t ? .address
                            };
                        return (0, T.assertRequest)(n), (0, x.formatTransactionRequest)(n)
                    }),
                    i = e.stateOverrides ? (0, E.serializeStateOverride)(e.stateOverrides) : void 0;
                t.push({
                    blockOverrides: r,
                    calls: n,
                    stateOverrides: i
                })
            }
            let h = "bigint" == typeof r ? (0, y.numberToHex)(r) : void 0;
            return (await e.request({
                method: "eth_simulateV1",
                params: [{
                    blockStateCalls: t,
                    returnFullTransactions: l,
                    traceTransfers: d,
                    validation: f
                }, h || i]
            })).map((e, t) => ({ ...(0, v.formatBlock)(e),
                calls: e.calls.map((e, r) => {
                    let {
                        abi: i,
                        args: o,
                        functionName: l,
                        to: d
                    } = c[t].calls[r], f = e.error ? .data ? ? e.returnData, p = BigInt(e.gasUsed), m = e.logs ? .map(e => (0, w.formatLog)(e)), h = "0x1" === e.status ? "success" : "failure", g = i && "success" === h && "0x" !== f ? (0, s.decodeFunctionResult)({
                        abi: i,
                        data: f,
                        functionName: l
                    }) : null, y = (() => {
                        let e;
                        if ("success" !== h && ("0x" === f ? e = new n.AbiDecodingZeroDataError : f && (e = new a.RawContractError({
                                data: f
                            })), e)) return (0, u.getContractError)(e, {
                            abi: i ? ? [],
                            address: d ? ? "0x",
                            args: o,
                            functionName: l ? ? "<unknown>"
                        })
                    })();
                    return {
                        data: f,
                        gasUsed: p,
                        logs: m,
                        status: h,
                        ..."success" === h ? {
                            result: g
                        } : {
                            error: y
                        }
                    }
                })
            }))
        } catch (t) {
            let e = (0, b.getNodeError)(t, {});
            if (e instanceof h.UnknownNodeError) throw t;
            throw e
        }
    }
    e.s(["simulateBlocks", 0, A], 365173)
}, 335719, e => {
    "use strict";
    var t = e.i(10928),
        r = e.i(118520),
        n = e.i(692265),
        i = e.i(495161);
    e.s(["parseAbiItem", 0, function(e) {
        let a;
        if ("string" == typeof e) a = (0, i.parseSignature)(e);
        else {
            let t = (0, n.parseStructs)(e),
                s = e.length;
            for (let n = 0; n < s; n++) {
                let s = e[n];
                if (!(0, r.isStructSignature)(s)) {
                    a = (0, i.parseSignature)(s, t);
                    break
                }
            }
        }
        if (!a) throw new t.InvalidAbiItemError({
            signature: e
        });
        return a
    }])
}, 286181, 491394, 721592, 430695, 245419, e => {
    "use strict";
    var t = e.i(231149),
        r = e.i(335719),
        n = e.i(670441),
        i = e.i(918196);
    e.s(["SizeExceedsPaddingSizeError", () => k, "SizeOverflowError", () => I, "SliceOffsetOutOfBoundsError", () => C, "from", () => m, "fromHex", () => h, "fromString", () => g, "size", () => y, "slice", () => b, "toBigInt", () => v, "toBoolean", () => w, "toNumber", () => x, "toString", () => E, "trimLeft", () => T, "validate", () => A], 491394);
    var a = n,
        s = e.i(971418);

    function o(e, t) {
        if (y(e) > t) throw new I({
            givenSize: y(e),
            maxSize: t
        })
    }

    function c(e) {
        return e >= 48 && e <= 57 ? e - 48 : e >= 65 && e <= 70 ? e - 55 : e >= 97 && e <= 102 ? e - 87 : void 0
    }

    function u(e, t = {}) {
        let {
            dir: r = "left"
        } = t, n = e, i = 0;
        for (let e = 0; e < n.length - 1; e++)
            if ("0" === n["left" === r ? e : n.length - e - 1].toString()) i++;
            else break;
        return "left" === r ? n.slice(i) : n.slice(0, n.length - i)
    }
    var l = e.i(226829),
        d = e.i(525289);
    let f = new TextDecoder,
        p = new TextEncoder;

    function m(e) {
        var t;
        return e instanceof Uint8Array ? e : "string" == typeof e ? h(e) : (t = e) instanceof Uint8Array ? t : new Uint8Array(t)
    }

    function h(e, t = {}) {
        let {
            size: r
        } = t, n = e;
        r && (l.assertSize(e, r), n = s.padRight(e, r));
        let i = n.slice(2);
        i.length % 2 && (i = `0${i}`);
        let o = i.length / 2,
            u = new Uint8Array(o);
        for (let e = 0, t = 0; e < o; e++) {
            let r = c(i.charCodeAt(t++)),
                n = c(i.charCodeAt(t++));
            if (void 0 === r || void 0 === n) throw new a.BaseError(`Invalid byte sequence ("${i[t-2]}${i[t-1]}" in "${i}").`);
            u[e] = r << 4 | n
        }
        return u
    }

    function g(e, t = {}) {
        let {
            size: r
        } = t, n = p.encode(e);
        return "number" == typeof r ? (o(n, r), function(e, t = {}) {
            let {
                dir: r,
                size: n = 32
            } = t;
            if (0 === n) return e;
            if (e.length > n) throw new k({
                size: e.length,
                targetSize: n,
                type: "Bytes"
            });
            let i = new Uint8Array(n);
            for (let t = 0; t < n; t++) {
                let a = "right" === r;
                i[a ? t : n - t - 1] = e[a ? t : e.length - t - 1]
            }
            return i
        }(n, {
            dir: "right",
            size: r
        })) : n
    }

    function y(e) {
        return e.length
    }

    function b(e, t, r, n = {}) {
        let {
            strict: i
        } = n;
        if ("number" == typeof t && t > 0 && t > y(e) - 1) throw new C({
            offset: t,
            position: "start",
            size: y(e)
        });
        let a = e.slice(t, r);
        return i && function(e, t, r) {
            if ("number" == typeof t && "number" == typeof r && y(e) !== r - t) throw new C({
                offset: r,
                position: "end",
                size: y(e)
            })
        }(a, t, r), a
    }

    function v(e, t = {}) {
        let {
            size: r
        } = t;
        void 0 !== r && o(e, r);
        let n = s.fromBytes(e, t);
        return s.toBigInt(n, t)
    }

    function w(e, t = {}) {
        let {
            size: r
        } = t, n = e;
        if (void 0 !== r && (o(n, r), n = T(n)), n.length > 1 || n[0] > 1) throw new B(n);
        return !!n[0]
    }

    function x(e, t = {}) {
        let {
            size: r
        } = t;
        void 0 !== r && o(e, r);
        let n = s.fromBytes(e, t);
        return s.toNumber(n, t)
    }

    function E(e, t = {}) {
        let {
            size: r
        } = t, n = e;
        return void 0 !== r && (o(n, r), n = u(n, {
            dir: "right"
        })), f.decode(n)
    }

    function T(e) {
        return u(e, {
            dir: "left"
        })
    }

    function A(e) {
        try {
            if (!(e instanceof Uint8Array) && (!e || "object" != typeof e || !("BYTES_PER_ELEMENT" in e) || 1 !== e.BYTES_PER_ELEMENT || "Uint8Array" !== e.constructor.name)) throw new P(e);
            return !0
        } catch {
            return !1
        }
    }
    class B extends a.BaseError {
        constructor(e) {
            super(`Bytes value \`${e}\` is not a valid boolean.`, {
                metaMessages: ["The bytes array must contain a single byte of either a `0` or `1` value."]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Bytes.InvalidBytesBooleanError"
            })
        }
    }
    class P extends a.BaseError {
        constructor(e) {
            super(`Value \`${"object"==typeof e?d.stringify(e):e}\` of type \`${typeof e}\` is an invalid Bytes value.`, {
                metaMessages: ["Bytes values must be of type `Bytes`."]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Bytes.InvalidBytesTypeError"
            })
        }
    }
    class I extends a.BaseError {
        constructor({
            givenSize: e,
            maxSize: t
        }) {
            super(`Size cannot exceed \`${t}\` bytes. Given size: \`${e}\` bytes.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Bytes.SizeOverflowError"
            })
        }
    }
    class C extends a.BaseError {
        constructor({
            offset: e,
            position: t,
            size: r
        }) {
            super(`Slice ${"start"===t?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${r}\`).`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Bytes.SliceOffsetOutOfBoundsError"
            })
        }
    }
    class k extends a.BaseError {
        constructor({
            size: e,
            targetSize: t,
            type: r
        }) {
            super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${t}\`).`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Bytes.SizeExceedsPaddingSizeError"
            })
        }
    }

    function S(e, t = {}) {
        let {
            as: r = "string" == typeof e ? "Hex" : "Bytes"
        } = t, n = (0, i.keccak_256)(m(e));
        return "Bytes" === r ? n : s.fromBytes(n)
    }
    e.s(["keccak256", 0, S], 721592);
    class N extends Map {
        constructor(e) {
            super(), Object.defineProperty(this, "maxSize", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: void 0
            }), this.maxSize = e
        }
        get(e) {
            let t = super.get(e);
            return super.has(e) && void 0 !== t && (this.delete(e), super.set(e, t)), t
        }
        set(e, t) {
            if (super.set(e, t), this.maxSize && this.size > this.maxSize) {
                let e = this.keys().next().value;
                e && this.delete(e)
            }
            return this
        }
    }
    let R = {
        checksum: new N(8192)
    }.checksum;
    var F = n,
        z = n;

    function H(e, t = {}) {
        let {
            compressed: r
        } = t, {
            prefix: n,
            x: i,
            y: a
        } = e;
        if (!1 === r || "bigint" == typeof i && "bigint" == typeof a) {
            if (4 !== n) throw new $({
                prefix: n,
                cause: new M
            });
            return
        }
        if (!0 === r || "bigint" == typeof i && void 0 === a) {
            if (3 !== n && 2 !== n) throw new $({
                prefix: n,
                cause: new U
            });
            return
        }
        throw new G({
            publicKey: e
        })
    }

    function L(e) {
        if (132 !== e.length && 130 !== e.length && 68 !== e.length) throw new D({
            publicKey: e
        });
        if (130 === e.length) return {
            prefix: 4,
            x: BigInt(s.slice(e, 0, 32)),
            y: BigInt(s.slice(e, 32, 64))
        };
        if (132 === e.length) {
            let t = Number(s.slice(e, 0, 1));
            return {
                prefix: t,
                x: BigInt(s.slice(e, 1, 33)),
                y: BigInt(s.slice(e, 33, 65))
            }
        }
        return {
            prefix: Number(s.slice(e, 0, 1)),
            x: BigInt(s.slice(e, 1, 33))
        }
    }

    function q(e, t = {}) {
        H(e);
        let {
            prefix: r,
            x: n,
            y: i
        } = e, {
            includePrefix: a = !0
        } = t;
        return s.concat(a ? s.fromNumber(r, {
            size: 1
        }) : "0x", s.fromNumber(n, {
            size: 32
        }), "bigint" == typeof i ? s.fromNumber(i, {
            size: 32
        }) : "0x")
    }
    class G extends z.BaseError {
        constructor({
            publicKey: e
        }) {
            super(`Value \`${d.stringify(e)}\` is not a valid public key.`, {
                metaMessages: ["Public key must contain:", "- an `x` and `prefix` value (compressed)", "- an `x`, `y`, and `prefix` value (uncompressed)"]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "PublicKey.InvalidError"
            })
        }
    }
    class $ extends z.BaseError {
        constructor({
            prefix: e,
            cause: t
        }) {
            super(`Prefix "${e}" is invalid.`, {
                cause: t
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "PublicKey.InvalidPrefixError"
            })
        }
    }
    class U extends z.BaseError {
        constructor() {
            super("Prefix must be 2 or 3 for compressed public keys."), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "PublicKey.InvalidCompressedPrefixError"
            })
        }
    }
    class M extends z.BaseError {
        constructor() {
            super("Prefix must be 4 for uncompressed public keys."), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "PublicKey.InvalidUncompressedPrefixError"
            })
        }
    }
    class D extends z.BaseError {
        constructor({
            publicKey: e
        }) {
            super(`Value \`${e}\` is an invalid public key size.`, {
                metaMessages: ["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).", `Received ${s.size(s.from(e))} bytes.`]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "PublicKey.InvalidSerializedSizeError"
            })
        }
    }
    e.s(["from", 0, function(e) {
        let t = (() => {
            if (s.validate(e)) return L(e);
            if (A(e)) {
                var t;
                return t = e, L(s.fromBytes(t))
            }
            let {
                prefix: r,
                x: n,
                y: i
            } = e;
            return "bigint" == typeof n && "bigint" == typeof i ? {
                prefix: r ? ? 4,
                x: n,
                y: i
            } : {
                prefix: r,
                x: n
            }
        })();
        return H(t), t
    }, "toBytes", 0, function(e, t = {}) {
        return h(q(e, t))
    }, "toHex", 0, q], 430695);
    let O = /^0x[a-fA-F0-9]{40}$/;

    function _(e, t = {}) {
        let {
            strict: r = !0
        } = t;
        if (!O.test(e)) throw new W({
            address: e,
            cause: new K
        });
        if (r) {
            if (e.toLowerCase() === e) return;
            if (j(e) !== e) throw new W({
                address: e,
                cause: new Z
            })
        }
    }

    function j(e) {
        if (R.has(e)) return R.get(e);
        _(e, {
            strict: !1
        });
        let t = e.substring(2).toLowerCase(),
            r = S(g(t), {
                as: "Bytes"
            }),
            n = t.split("");
        for (let e = 0; e < 40; e += 2) r[e >> 1] >> 4 >= 8 && n[e] && (n[e] = n[e].toUpperCase()), (15 & r[e >> 1]) >= 8 && n[e + 1] && (n[e + 1] = n[e + 1].toUpperCase());
        let i = `0x${n.join("")}`;
        return R.set(e, i), i
    }

    function V(e, t = {}) {
        let {
            strict: r = !0
        } = t ? ? {};
        try {
            return _(e, {
                strict: r
            }), !0
        } catch {
            return !1
        }
    }
    class W extends F.BaseError {
        constructor({
            address: e,
            cause: t
        }) {
            super(`Address "${e}" is invalid.`, {
                cause: t
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Address.InvalidAddressError"
            })
        }
    }
    class K extends F.BaseError {
        constructor() {
            super("Address is not a 20 byte (40 hexadecimal character) value."), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Address.InvalidInputError"
            })
        }
    }
    class Z extends F.BaseError {
        constructor() {
            super("Address does not match its checksum counterpart."), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Address.InvalidChecksumError"
            })
        }
    }

    function J(e) {
        let t = !0,
            r = "",
            i = 0,
            a = "",
            s = !1;
        for (let n = 0; n < e.length; n++) {
            let o = e[n];
            if (["(", ")", ","].includes(o) && (t = !0), "(" === o && i++, ")" === o && i--, t) {
                if (0 === i) {
                    if (" " === o && ["event", "function", "error", ""].includes(a)) a = "";
                    else if (a += o, ")" === o) {
                        s = !0;
                        break
                    }
                    continue
                }
                if (" " === o) {
                    "," !== e[n - 1] && "," !== r && ",(" !== r && (r = "", t = !1);
                    continue
                }
                a += o, r += o
            }
        }
        if (!s) throw new n.BaseError("Unable to normalize signature.");
        return a
    }

    function Y(e, t, r) {
        let n, {
                args: i = [],
                prepare: a = !0
            } = r ? ? {},
            o = s.validate(t, {
                strict: !1
            }),
            c = e.filter(e => o ? "function" === e.type || "error" === e.type ? Q(e) === s.slice(t, 0, 4) : "event" === e.type && X(e) === t : "name" in e && e.name === t);
        if (0 === c.length) throw new et({
            name: t
        });
        if (1 === c.length) return { ...c[0],
            ...a ? {
                hash: X(c[0])
            } : {}
        };
        for (let e of c) {
            if ("inputs" in e) {
                if (!i || 0 === i.length) {
                    if (!e.inputs || 0 === e.inputs.length) return { ...e,
                        ...a ? {
                            hash: X(e)
                        } : {}
                    };
                    continue
                }
                if (e.inputs && 0 !== e.inputs.length && e.inputs.length === i.length && i.every((t, r) => {
                        let n = "inputs" in e && e.inputs[r];
                        return !!n && function e(t, r) {
                            let n = typeof t,
                                i = r.type;
                            switch (i) {
                                case "address":
                                    return V(t, {
                                        strict: !1
                                    });
                                case "bool":
                                    return "boolean" === n;
                                case "function":
                                case "string":
                                    return "string" === n;
                                default:
                                    if ("tuple" === i && "components" in r) return Object.values(r.components).every((r, n) => e(Object.values(t)[n], r));
                                    if (/^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(i)) return "number" === n || "bigint" === n;
                                    if (/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(i)) return "string" === n || t instanceof Uint8Array;
                                    if (/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(i)) return Array.isArray(t) && t.every(t => e(t, { ...r,
                                        type: i.replace(/(\[[0-9]{0,}\])$/, "")
                                    }));
                                    return !1
                            }
                        }(t, n)
                    })) {
                    if (n && "inputs" in n && n.inputs) {
                        let t = function e(t, r, n) {
                            for (let i in t) {
                                let a = t[i],
                                    s = r[i];
                                if ("tuple" === a.type && "tuple" === s.type && "components" in a && "components" in s) return e(a.components, s.components, n[i]);
                                let o = [a.type, s.type];
                                if (o.includes("address") && o.includes("bytes20") || (o.includes("address") && o.includes("string") || o.includes("address") && o.includes("bytes")) && V(n[i], {
                                        strict: !1
                                    })) return o
                            }
                        }(e.inputs, n.inputs, i);
                        if (t) throw new ee({
                            abiItem: e,
                            type: t[0]
                        }, {
                            abiItem: n,
                            type: t[1]
                        })
                    }
                    n = e
                }
            }
        }
        let u = (() => {
            if (n) return n;
            let [e, ...t] = c;
            return { ...e,
                overloads: t
            }
        })();
        if (!u) throw new et({
            name: t
        });
        return { ...u,
            ...a ? {
                hash: X(u)
            } : {}
        }
    }

    function Q(...e) {
        let t = (() => {
            if (Array.isArray(e[0])) {
                let [t, r] = e;
                return Y(t, r)
            }
            return e[0]
        })();
        return s.slice(X(t), 0, 4)
    }

    function X(...e) {
        let r = (() => {
            if (Array.isArray(e[0])) {
                let [t, r] = e;
                return Y(t, r)
            }
            return e[0]
        })();
        return "string" != typeof r && "hash" in r && r.hash ? r.hash : S(s.fromString(function(...e) {
            let r = (() => {
                if (Array.isArray(e[0])) {
                    let [t, r] = e;
                    return Y(t, r)
                }
                return e[0]
            })();
            return J("string" == typeof r ? r : t.formatAbiItem(r))
        }(r)))
    }
    e.s(["assert", 0, _, "checksum", 0, j, "fromPublicKey", 0, function(e, t = {}) {
        let r = S(`0x${q(e).slice(4)}`).substring(26);
        return function(e, t = {}) {
            let {
                checksum: r = !1
            } = t;
            return (_(e), r) ? j(e) : e
        }(`0x${r}`, t)
    }, "isEqual", 0, function(e, t) {
        return _(e, {
            strict: !1
        }), _(t, {
            strict: !1
        }), e.toLowerCase() === t.toLowerCase()
    }, "validate", 0, V], 245419);
    class ee extends n.BaseError {
        constructor(e, r) {
            super("Found ambiguous types in overloaded ABI Items.", {
                metaMessages: [`\`${e.type}\` in \`${J(t.formatAbiItem(e.abiItem))}\`, and`, `\`${r.type}\` in \`${J(t.formatAbiItem(r.abiItem))}\``, "", "These types encode differently and cannot be distinguished at runtime.", "Remove one of the ambiguous items in the ABI."]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiItem.AmbiguityError"
            })
        }
    }
    class et extends n.BaseError {
        constructor({
            name: e,
            data: t,
            type: r = "item"
        }) {
            const n = e ? ` with name "${e}"` : t ? ` with data "${t}"` : "";
            super(`ABI ${r}${n} not found.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiItem.NotFoundError"
            })
        }
    }
    class er extends n.BaseError {
        constructor({
            data: e
        }) {
            super(`Selector size is invalid. Expected 4 bytes. Received ${s.size(e)} bytes ("${e}").`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiItem.InvalidSelectorSizeError"
            })
        }
    }
    e.s(["InvalidSelectorSizeError", 0, er, "NotFoundError", 0, et, "from", 0, function(e, t = {}) {
        let {
            prepare: n = !0
        } = t, i = Array.isArray(e) || "string" == typeof e ? r.parseAbiItem(e) : e;
        return { ...i,
            ...n ? {
                hash: X(i)
            } : {}
        }
    }, "fromAbi", 0, Y, "getSelector", 0, Q], 286181)
}, 173102, e => {
    "use strict";
    var t = e.i(118274),
        r = e.i(118520),
        n = e.i(692265),
        i = e.i(495161);
    e.s(["parseAbiParameters", 0, function(e) {
        let a = [];
        if ("string" == typeof e) {
            let t = (0, i.splitParameters)(e),
                n = t.length;
            for (let e = 0; e < n; e++) a.push((0, i.parseAbiParameter)(t[e], {
                modifiers: r.modifiers
            }))
        } else {
            let t = (0, n.parseStructs)(e),
                s = e.length;
            for (let n = 0; n < s; n++) {
                let s = e[n];
                if ((0, r.isStructSignature)(s)) continue;
                let o = (0, i.splitParameters)(s),
                    c = o.length;
                for (let e = 0; e < c; e++) a.push((0, i.parseAbiParameter)(o[e], {
                    modifiers: r.modifiers,
                    structs: t
                }))
            }
        }
        if (0 === a.length) throw new t.InvalidAbiParametersError({
            params: e
        });
        return a
    }])
}, 359685, 191013, 344861, 91565, 505823, e => {
    "use strict";
    var t = e.i(286181);
    e.s(["ArrayLengthMismatchError", () => P, "BytesSizeMismatchError", () => I, "InvalidArrayError", () => k, "InvalidTypeError", () => S, "decode", () => w, "encode", () => x, "from", () => T], 91565);
    var r = e.i(630054),
        n = e.i(173102),
        i = e.i(245419),
        a = e.i(491394),
        s = e.i(670441),
        o = e.i(971418);
    let c = /^(.*)\[([0-9]*)\]$/,
        u = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,
        l = /^(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)?$/;
    e.s(["arrayRegex", 0, c, "bytesRegex", 0, u, "integerRegex", 0, l, "maxUint256", 0, 2 n ** 256 n - 1 n], 191013);

    function d(e) {
        let t = 0;
        for (let r = 0; r < e.length; r++) {
            let {
                dynamic: n,
                encoded: i
            } = e[r];
            n ? t += 32 : t += o.size(i)
        }
        let r = [],
            n = [],
            i = 0;
        for (let a = 0; a < e.length; a++) {
            let {
                dynamic: s,
                encoded: c
            } = e[a];
            s ? (r.push(o.fromNumber(t + i, {
                size: 32
            })), n.push(c), i += o.size(c)) : r.push(c)
        }
        return o.concat(...r, ...n)
    }

    function f(e) {
        let t = e.match(/^(.*)\[(\d+)?\]$/);
        return t ? [t[2] ? Number(t[2]) : null, t[1]] : void 0
    }

    function p(e) {
        let {
            type: t
        } = e;
        if ("string" === t || "bytes" === t || t.endsWith("[]")) return !0;
        if ("tuple" === t) return e.components ? .some(p);
        let r = f(e.type);
        return !!(r && p({ ...e,
            type: r[1]
        }))
    }
    var m = s;
    let h = {
        bytes: new Uint8Array,
        dataView: new DataView(new ArrayBuffer(0)),
        position: 0,
        positionReadCount: new Map,
        recursiveReadCount: 0,
        recursiveReadLimit: 1 / 0,
        assertReadLimit() {
            if (this.recursiveReadCount >= this.recursiveReadLimit) throw new v({
                count: this.recursiveReadCount + 1,
                limit: this.recursiveReadLimit
            })
        },
        assertPosition(e) {
            if (e < 0 || e > this.bytes.length - 1) throw new b({
                length: this.bytes.length,
                position: e
            })
        },
        decrementPosition(e) {
            if (e < 0) throw new y({
                offset: e
            });
            let t = this.position - e;
            this.assertPosition(t), this.position = t
        },
        getReadCount(e) {
            return this.positionReadCount.get(e || this.position) || 0
        },
        incrementPosition(e) {
            if (e < 0) throw new y({
                offset: e
            });
            let t = this.position + e;
            this.assertPosition(t), this.position = t
        },
        inspectByte(e) {
            let t = e ? ? this.position;
            return this.assertPosition(t), this.bytes[t]
        },
        inspectBytes(e, t) {
            let r = t ? ? this.position;
            return this.assertPosition(r + e - 1), this.bytes.subarray(r, r + e)
        },
        inspectUint8(e) {
            let t = e ? ? this.position;
            return this.assertPosition(t), this.bytes[t]
        },
        inspectUint16(e) {
            let t = e ? ? this.position;
            return this.assertPosition(t + 1), this.dataView.getUint16(t)
        },
        inspectUint24(e) {
            let t = e ? ? this.position;
            return this.assertPosition(t + 2), (this.dataView.getUint16(t) << 8) + this.dataView.getUint8(t + 2)
        },
        inspectUint32(e) {
            let t = e ? ? this.position;
            return this.assertPosition(t + 3), this.dataView.getUint32(t)
        },
        pushByte(e) {
            this.assertPosition(this.position), this.bytes[this.position] = e, this.position++
        },
        pushBytes(e) {
            this.assertPosition(this.position + e.length - 1), this.bytes.set(e, this.position), this.position += e.length
        },
        pushUint8(e) {
            this.assertPosition(this.position), this.bytes[this.position] = e, this.position++
        },
        pushUint16(e) {
            this.assertPosition(this.position + 1), this.dataView.setUint16(this.position, e), this.position += 2
        },
        pushUint24(e) {
            this.assertPosition(this.position + 2), this.dataView.setUint16(this.position, e >> 8), this.dataView.setUint8(this.position + 2, 255 & e), this.position += 3
        },
        pushUint32(e) {
            this.assertPosition(this.position + 3), this.dataView.setUint32(this.position, e), this.position += 4
        },
        readByte() {
            this.assertReadLimit(), this._touch();
            let e = this.inspectByte();
            return this.position++, e
        },
        readBytes(e, t) {
            this.assertReadLimit(), this._touch();
            let r = this.inspectBytes(e);
            return this.position += t ? ? e, r
        },
        readUint8() {
            this.assertReadLimit(), this._touch();
            let e = this.inspectUint8();
            return this.position += 1, e
        },
        readUint16() {
            this.assertReadLimit(), this._touch();
            let e = this.inspectUint16();
            return this.position += 2, e
        },
        readUint24() {
            this.assertReadLimit(), this._touch();
            let e = this.inspectUint24();
            return this.position += 3, e
        },
        readUint32() {
            this.assertReadLimit(), this._touch();
            let e = this.inspectUint32();
            return this.position += 4, e
        },
        get remaining() {
            return this.bytes.length - this.position
        },
        setPosition(e) {
            let t = this.position;
            return this.assertPosition(e), this.position = e, () => this.position = t
        },
        _touch() {
            if (this.recursiveReadLimit === 1 / 0) return;
            let e = this.getReadCount();
            this.positionReadCount.set(this.position, e + 1), e > 0 && this.recursiveReadCount++
        }
    };

    function g(e, {
        recursiveReadLimit: t = 8192
    } = {}) {
        let r = Object.create(h);
        return r.bytes = e, r.dataView = new DataView(e.buffer, e.byteOffset, e.byteLength), r.positionReadCount = new Map, r.recursiveReadLimit = t, r
    }
    class y extends m.BaseError {
        constructor({
            offset: e
        }) {
            super(`Offset \`${e}\` cannot be negative.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Cursor.NegativeOffsetError"
            })
        }
    }
    class b extends m.BaseError {
        constructor({
            length: e,
            position: t
        }) {
            super(`Position \`${t}\` is out of bounds (\`0 < position < ${e}\`).`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Cursor.PositionOutOfBoundsError"
            })
        }
    }
    class v extends m.BaseError {
        constructor({
            count: e,
            limit: t
        }) {
            super(`Recursive read limit of \`${t}\` exceeded (recursive read count: \`${e}\`).`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Cursor.RecursiveReadLimitExceededError"
            })
        }
    }

    function w(e, t, r = {}) {
        let {
            as: n = "Array",
            checksumAddress: s = !1
        } = r, c = "string" == typeof t ? a.fromHex(t) : t, u = g(c);
        if (0 === a.size(c) && e.length > 0) throw new B;
        if (a.size(c) && 32 > a.size(c)) throw new A({
            data: "string" == typeof t ? t : o.fromBytes(t),
            parameters: e,
            size: a.size(c)
        });
        let l = 0,
            d = "Array" === n ? [] : {};
        for (let t = 0; t < e.length; ++t) {
            let r = e[t];
            u.setPosition(l);
            let [c, m] = function e(t, r, n) {
                var s, c, u;
                let {
                    checksumAddress: l,
                    staticPosition: d
                } = n, m = f(r.type);
                if (m) {
                    let [n, i] = m;
                    return function(t, r, n) {
                        let {
                            checksumAddress: i,
                            length: s,
                            staticPosition: o
                        } = n;
                        if (!s) {
                            let n = o + a.toNumber(t.readBytes(32)),
                                s = n + 32;
                            t.setPosition(n);
                            let c = a.toNumber(t.readBytes(32)),
                                u = p(r),
                                l = 0,
                                d = [];
                            for (let n = 0; n < c; ++n) {
                                t.setPosition(s + (u ? 32 * n : l));
                                let [a, o] = e(t, r, {
                                    checksumAddress: i,
                                    staticPosition: s
                                });
                                l += o, d.push(a)
                            }
                            return t.setPosition(o + 32), [d, 32]
                        }
                        if (p(r)) {
                            let n = o + a.toNumber(t.readBytes(32)),
                                c = [];
                            for (let a = 0; a < s; ++a) {
                                t.setPosition(n + 32 * a);
                                let [s] = e(t, r, {
                                    checksumAddress: i,
                                    staticPosition: n
                                });
                                c.push(s)
                            }
                            return t.setPosition(o + 32), [c, 32]
                        }
                        let c = 0,
                            u = [];
                        for (let n = 0; n < s; ++n) {
                            let [n, a] = e(t, r, {
                                checksumAddress: i,
                                staticPosition: o + c
                            });
                            c += a, u.push(n)
                        }
                        return [u, c]
                    }(t, { ...r,
                        type: i
                    }, {
                        checksumAddress: l,
                        length: n,
                        staticPosition: d
                    })
                }
                if ("tuple" === r.type) return function(t, r, n) {
                    let {
                        checksumAddress: i,
                        staticPosition: s
                    } = n, o = 0 === r.components.length || r.components.some(({
                        name: e
                    }) => !e), c = o ? [] : {}, u = 0;
                    if (p(r)) {
                        let n = s + a.toNumber(t.readBytes(32));
                        for (let a = 0; a < r.components.length; ++a) {
                            let s = r.components[a];
                            t.setPosition(n + u);
                            let [l, d] = e(t, s, {
                                checksumAddress: i,
                                staticPosition: n
                            });
                            u += d, c[o ? a : s ? .name] = l
                        }
                        return t.setPosition(s + 32), [c, 32]
                    }
                    for (let n = 0; n < r.components.length; ++n) {
                        let a = r.components[n],
                            [l, d] = e(t, a, {
                                checksumAddress: i,
                                staticPosition: s
                            });
                        c[o ? n : a ? .name] = l, u += d
                    }
                    return [c, u]
                }(t, r, {
                    checksumAddress: l,
                    staticPosition: d
                });
                if ("address" === r.type) return function(e, t = {}) {
                    let r, {
                            checksum: n = !1
                        } = t,
                        s = e.readBytes(32);
                    return [(r = o.fromBytes(a.slice(s, -20)), n ? i.checksum(r) : r), 32]
                }(t, {
                    checksum: l
                });
                if ("bool" === r.type) {
                    return s = t, [a.toBoolean(s.readBytes(32), {
                        size: 32
                    }), 32]
                }
                if (r.type.startsWith("bytes")) return function(e, t, {
                    staticPosition: r
                }) {
                    let [n, i] = t.type.split("bytes");
                    if (!i) {
                        let t = a.toNumber(e.readBytes(32));
                        e.setPosition(r + t);
                        let n = a.toNumber(e.readBytes(32));
                        if (0 === n) return e.setPosition(r + 32), ["0x", 32];
                        let i = e.readBytes(n);
                        return e.setPosition(r + 32), [o.fromBytes(i), 32]
                    }
                    return [o.fromBytes(e.readBytes(Number.parseInt(i, 10), 32)), 32]
                }(t, r, {
                    staticPosition: d
                });
                if (r.type.startsWith("uint") || r.type.startsWith("int")) {
                    let e, n, i;
                    return c = t, e = (u = r).type.startsWith("int"), n = Number.parseInt(u.type.split("int")[1] || "256", 10), i = c.readBytes(32), [n > 48 ? a.toBigInt(i, {
                        signed: e
                    }) : a.toNumber(i, {
                        signed: e
                    }), 32]
                }
                if ("string" === r.type) return function(e, {
                    staticPosition: t
                }) {
                    let r = a.toNumber(e.readBytes(32));
                    e.setPosition(t + r);
                    let n = a.toNumber(e.readBytes(32));
                    if (0 === n) return e.setPosition(t + 32), ["", 32];
                    let i = e.readBytes(n, 32),
                        s = a.toString(a.trimLeft(i));
                    return e.setPosition(t + 32), [s, 32]
                }(t, {
                    staticPosition: d
                });
                throw new S(r.type)
            }(u, r, {
                checksumAddress: s,
                staticPosition: 0
            });
            l += m, "Array" === n ? d.push(c) : d[r.name ? ? t] = c
        }
        return d
    }

    function x(e, t, r) {
        let {
            checksumAddress: n = !1
        } = r ? ? {};
        if (e.length !== t.length) throw new C({
            expectedLength: e.length,
            givenLength: t.length
        });
        let a = d(function({
            checksumAddress: e,
            parameters: t,
            values: r
        }) {
            let n = [];
            for (let a = 0; a < t.length; a++) n.push(function e({
                checksumAddress: t = !1,
                parameter: r,
                value: n
            }) {
                let a = f(r.type);
                if (a) {
                    let [i, s] = a;
                    return function(t, r) {
                        let {
                            checksumAddress: n,
                            length: i,
                            parameter: a
                        } = r, s = null === i;
                        if (!Array.isArray(t)) throw new k(t);
                        if (!s && t.length !== i) throw new P({
                            expectedLength: i,
                            givenLength: t.length,
                            type: `${a.type}[${i}]`
                        });
                        let c = !1,
                            u = [];
                        for (let r = 0; r < t.length; r++) {
                            let i = e({
                                checksumAddress: n,
                                parameter: a,
                                value: t[r]
                            });
                            i.dynamic && (c = !0), u.push(i)
                        }
                        if (s || c) {
                            let e = d(u);
                            if (s) {
                                let t = o.fromNumber(u.length, {
                                    size: 32
                                });
                                return {
                                    dynamic: !0,
                                    encoded: u.length > 0 ? o.concat(t, e) : t
                                }
                            }
                            if (c) return {
                                dynamic: !0,
                                encoded: e
                            }
                        }
                        return {
                            dynamic: !1,
                            encoded: o.concat(...u.map(({
                                encoded: e
                            }) => e))
                        }
                    }(n, {
                        checksumAddress: t,
                        length: i,
                        parameter: { ...r,
                            type: s
                        }
                    })
                }
                if ("tuple" === r.type) return function(t, r) {
                    let {
                        checksumAddress: n,
                        parameter: i
                    } = r, a = !1, s = [];
                    for (let r = 0; r < i.components.length; r++) {
                        let o = i.components[r],
                            c = Array.isArray(t) ? r : o.name,
                            u = e({
                                checksumAddress: n,
                                parameter: o,
                                value: t[c]
                            });
                        s.push(u), u.dynamic && (a = !0)
                    }
                    return {
                        dynamic: a,
                        encoded: a ? d(s) : o.concat(...s.map(({
                            encoded: e
                        }) => e))
                    }
                }(n, {
                    checksumAddress: t,
                    parameter: r
                });
                if ("address" === r.type) return function(e, t) {
                    let {
                        checksum: r = !1
                    } = t;
                    return i.assert(e, {
                        strict: r
                    }), {
                        dynamic: !1,
                        encoded: o.padLeft(e.toLowerCase())
                    }
                }(n, {
                    checksum: t
                });
                if ("bool" === r.type) {
                    var c = n;
                    if ("boolean" != typeof c) throw new s.BaseError(`Invalid boolean value: "${c}" (type: ${typeof c}). Expected: \`true\` or \`false\`.`);
                    return {
                        dynamic: !1,
                        encoded: o.padLeft(o.fromBoolean(c))
                    }
                }
                if (r.type.startsWith("uint") || r.type.startsWith("int")) {
                    let e = r.type.startsWith("int"),
                        [, , t = "256"] = l.exec(r.type) ? ? [];
                    return function(e, {
                        signed: t,
                        size: r
                    }) {
                        if ("number" == typeof r) {
                            let n = 2 n ** (BigInt(r) - (t ? 1 n : 0 n)) - 1 n,
                                i = t ? -n - 1 n : 0 n;
                            if (e > n || e < i) throw new o.IntegerOutOfRangeError({
                                max: n.toString(),
                                min: i.toString(),
                                signed: t,
                                size: r / 8,
                                value: e.toString()
                            })
                        }
                        return {
                            dynamic: !1,
                            encoded: o.fromNumber(e, {
                                size: 32,
                                signed: t
                            })
                        }
                    }(n, {
                        signed: e,
                        size: Number(t)
                    })
                }
                if (r.type.startsWith("bytes")) return function(e, {
                    type: t
                }) {
                    let [, r] = t.split("bytes"), n = o.size(e);
                    if (!r) {
                        let t = e;
                        return n % 32 != 0 && (t = o.padRight(t, 32 * Math.ceil((e.length - 2) / 2 / 32))), {
                            dynamic: !0,
                            encoded: o.concat(o.padLeft(o.fromNumber(n, {
                                size: 32
                            })), t)
                        }
                    }
                    if (n !== Number.parseInt(r, 10)) throw new I({
                        expectedSize: Number.parseInt(r, 10),
                        value: e
                    });
                    return {
                        dynamic: !1,
                        encoded: o.padRight(e)
                    }
                }(n, {
                    type: r.type
                });
                if ("string" === r.type) {
                    var u = n;
                    let e = o.fromString(u),
                        t = Math.ceil(o.size(e) / 32),
                        r = [];
                    for (let n = 0; n < t; n++) r.push(o.padRight(o.slice(e, 32 * n, (n + 1) * 32)));
                    return {
                        dynamic: !0,
                        encoded: o.concat(o.padRight(o.fromNumber(o.size(e), {
                            size: 32
                        })), ...r)
                    }
                }
                throw new S(r.type)
            }({
                checksumAddress: e,
                parameter: t[a],
                value: r[a]
            }));
            return n
        }({
            checksumAddress: n,
            parameters: e,
            values: t
        }));
        return 0 === a.length ? "0x" : a
    }

    function E(e, t) {
        if (e.length !== t.length) throw new C({
            expectedLength: e.length,
            givenLength: t.length
        });
        let r = [];
        for (let n = 0; n < e.length; n++) {
            let i = e[n],
                a = t[n];
            r.push(E.encode(i, a))
        }
        return o.concat(...r)
    }

    function T(e) {
        return Array.isArray(e) && "string" == typeof e[0] || "string" == typeof e ? n.parseAbiParameters(e) : e
    }
    e.s(["create", 0, g], 344861), (E || (E = {})).encode = function e(t, r, n = !1) {
        if ("address" === t) return i.assert(r), o.padLeft(r.toLowerCase(), 32 * !!n);
        if ("string" === t) return o.fromString(r);
        if ("bytes" === t) return r;
        if ("bool" === t) return o.padLeft(o.fromBoolean(r), n ? 32 : 1);
        let a = t.match(l);
        if (a) {
            let [e, t, i = "256"] = a, s = Number.parseInt(i, 10) / 8;
            return o.fromNumber(r, {
                size: n ? 32 : s,
                signed: "int" === t
            })
        }
        let s = t.match(u);
        if (s) {
            let [e, t] = s;
            if (Number.parseInt(t, 10) !== (r.length - 2) / 2) throw new I({
                expectedSize: Number.parseInt(t, 10),
                value: r
            });
            return o.padRight(r, 32 * !!n)
        }
        let d = t.match(c);
        if (d && Array.isArray(r)) {
            let [t, n] = d, i = [];
            for (let t = 0; t < r.length; t++) i.push(e(n, r[t], !0));
            return 0 === i.length ? "0x" : o.concat(...i)
        }
        throw new S(t)
    };
    class A extends s.BaseError {
        constructor({
            data: e,
            parameters: t,
            size: n
        }) {
            super(`Data size of ${n} bytes is too small for given parameters.`, {
                metaMessages: [`Params: (${r.formatAbiParameters(t)})`, `Data:   ${e} (${n} bytes)`]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.DataSizeTooSmallError"
            })
        }
    }
    class B extends s.BaseError {
        constructor() {
            super('Cannot decode zero data ("0x") with ABI parameters.'), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.ZeroDataError"
            })
        }
    }
    class P extends s.BaseError {
        constructor({
            expectedLength: e,
            givenLength: t,
            type: r
        }) {
            super(`Array length mismatch for type \`${r}\`. Expected: \`${e}\`. Given: \`${t}\`.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.ArrayLengthMismatchError"
            })
        }
    }
    class I extends s.BaseError {
        constructor({
            expectedSize: e,
            value: t
        }) {
            super(`Size of bytes "${t}" (bytes${o.size(t)}) does not match expected size (bytes${e}).`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.BytesSizeMismatchError"
            })
        }
    }
    class C extends s.BaseError {
        constructor({
            expectedLength: e,
            givenLength: t
        }) {
            super(`ABI encoding parameters/values length mismatch.
Expected length (parameters): ${e}
Given length (values): ${t}`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.LengthMismatchError"
            })
        }
    }
    class k extends s.BaseError {
        constructor(e) {
            super(`Value \`${e}\` is not a valid array.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.InvalidArrayError"
            })
        }
    }
    class S extends s.BaseError {
        constructor(e) {
            super(`Type \`${e}\` is not a valid ABI Type.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "AbiParameters.InvalidTypeError"
            })
        }
    }

    function N(e, r, n) {
        let i = t.fromAbi(e, r, n);
        if ("function" !== i.type) throw new t.NotFoundError({
            name: r,
            type: "function"
        });
        return i
    }
    e.s(["encode", 0, function(...e) {
        let [r, n] = (() => {
            if (Array.isArray(e[0])) {
                let [r, n] = e;
                return [function(e) {
                    let r = e.find(e => "constructor" === e.type);
                    if (!r) throw new t.NotFoundError({
                        name: "constructor"
                    });
                    return r
                }(r), n]
            }
            return e
        })(), {
            bytecode: i,
            args: a
        } = n;
        return o.concat(i, r.inputs ? .length && a ? .length ? x(r.inputs, a) : "0x")
    }, "from", 0, function(e) {
        return t.from(e)
    }], 359685), e.s(["encodeData", 0, function(...e) {
        var r;
        let [n, i = []] = (() => {
            if (Array.isArray(e[0])) {
                let [t, r, n] = e;
                return [N(t, r, {
                    args: n
                }), n]
            }
            let [t, r] = e;
            return [t, r]
        })(), {
            overloads: a
        } = n, s = a ? N([n, ...a], n.name, {
            args: i
        }) : n, c = (r = s, t.getSelector(r)), u = i.length > 0 ? x(s.inputs, i) : void 0;
        return u ? o.concat(c, u) : c
    }, "from", 0, function(e, r = {}) {
        return t.from(e, r)
    }], 505823)
}, 914640, e => {
    "use strict";
    e.s(["ethAddress", 0, "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", "zeroAddress", 0, "0x0000000000000000000000000000000000000000"])
}, 298249, e => {
    "use strict";
    var t = e.i(359685),
        r = e.i(505823),
        n = e.i(372387),
        i = e.i(914640),
        a = e.i(406954),
        s = e.i(621030),
        o = e.i(56339),
        c = e.i(637608),
        u = e.i(319061),
        l = e.i(365173);
    async function d(e, d) {
        let {
            blockNumber: f,
            blockTag: p,
            calls: m,
            stateOverrides: h,
            traceAssetChanges: g,
            traceTransfers: y,
            validation: b
        } = d, v = d.account ? (0, n.parseAccount)(d.account) : void 0;
        if (g && !v) throw new s.BaseError("`account` is required when `traceAssetChanges` is true");
        let w = v ? t.encode(t.from("constructor(bytes, bytes)"), {
                bytecode: a.deploylessCallViaBytecodeBytecode,
                args: ["0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033", r.encodeData(r.from("function getBalance(address)"), [v.address])]
            }) : void 0,
            x = g ? await Promise.all(d.calls.map(async t => {
                if (!t.data && !t.abi) return;
                let {
                    accessList: r
                } = await (0, u.createAccessList)(e, {
                    account: v.address,
                    ...t,
                    data: t.abi ? (0, o.encodeFunctionData)(t) : t.data
                });
                return r.map(({
                    address: e,
                    storageKeys: t
                }) => t.length > 0 ? e : null)
            })).then(e => e.flat().filter(Boolean)) : [],
            E = await (0, l.simulateBlocks)(e, {
                blockNumber: f,
                blockTag: p,
                blocks: [...g ? [{
                    calls: [{
                        data: w
                    }],
                    stateOverrides: h
                }, {
                    calls: x.map((e, t) => ({
                        abi: [r.from("function balanceOf(address) returns (uint256)")],
                        functionName: "balanceOf",
                        args: [v.address],
                        to: e,
                        from: i.zeroAddress,
                        nonce: t
                    })),
                    stateOverrides: [{
                        address: i.zeroAddress,
                        nonce: 0
                    }]
                }] : [], {
                    calls: [...m, {
                        to: i.zeroAddress
                    }].map(e => ({ ...e,
                        from: v ? .address
                    })),
                    stateOverrides: h
                }, ...g ? [{
                    calls: [{
                        data: w
                    }]
                }, {
                    calls: x.map((e, t) => ({
                        abi: [r.from("function balanceOf(address) returns (uint256)")],
                        functionName: "balanceOf",
                        args: [v.address],
                        to: e,
                        from: i.zeroAddress,
                        nonce: t
                    })),
                    stateOverrides: [{
                        address: i.zeroAddress,
                        nonce: 0
                    }]
                }, {
                    calls: x.map((e, t) => ({
                        to: e,
                        abi: [r.from("function decimals() returns (uint256)")],
                        functionName: "decimals",
                        from: i.zeroAddress,
                        nonce: t
                    })),
                    stateOverrides: [{
                        address: i.zeroAddress,
                        nonce: 0
                    }]
                }, {
                    calls: x.map((e, t) => ({
                        to: e,
                        abi: [r.from("function tokenURI(uint256) returns (string)")],
                        functionName: "tokenURI",
                        args: [0 n],
                        from: i.zeroAddress,
                        nonce: t
                    })),
                    stateOverrides: [{
                        address: i.zeroAddress,
                        nonce: 0
                    }]
                }, {
                    calls: x.map((e, t) => ({
                        to: e,
                        abi: [r.from("function symbol() returns (string)")],
                        functionName: "symbol",
                        from: i.zeroAddress,
                        nonce: t
                    })),
                    stateOverrides: [{
                        address: i.zeroAddress,
                        nonce: 0
                    }]
                }] : []],
                traceTransfers: y,
                validation: b
            }),
            T = g ? E[2] : E[0],
            [A, B, , P, I, C, k, S] = g ? E : [],
            {
                calls: N,
                ...R
            } = T,
            F = N.slice(0, -1) ? ? [],
            z = [...A ? .calls ? ? [], ...B ? .calls ? ? []].map(e => "success" === e.status ? (0, c.hexToBigInt)(e.data) : null),
            H = [...P ? .calls ? ? [], ...I ? .calls ? ? []].map(e => "success" === e.status ? (0, c.hexToBigInt)(e.data) : null),
            L = (C ? .calls ? ? []).map(e => "success" === e.status ? e.result : null),
            q = (S ? .calls ? ? []).map(e => "success" === e.status ? e.result : null),
            G = (k ? .calls ? ? []).map(e => "success" === e.status ? e.result : null),
            $ = [];
        for (let [e, t] of H.entries()) {
            let r = z[e];
            if ("bigint" != typeof t || "bigint" != typeof r) continue;
            let n = L[e - 1],
                a = q[e - 1],
                s = G[e - 1],
                o = 0 === e ? {
                    address: i.ethAddress,
                    decimals: 18,
                    symbol: "ETH"
                } : {
                    address: x[e - 1],
                    decimals: s || n ? Number(n ? ? 1) : void 0,
                    symbol: a ? ? void 0
                };
            $.some(e => e.token.address === o.address) || $.push({
                token: o,
                value: {
                    pre: r,
                    post: t,
                    diff: t - r
                }
            })
        }
        return {
            assetChanges: $,
            block: R,
            results: F
        }
    }
    e.s(["simulateCalls", 0, d])
}, 655579, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(933619),
        n = e.i(56339),
        i = e.i(701123),
        a = e.i(280958),
        s = e.i(376436);
    async function o(e, o) {
        let {
            abi: c,
            address: u,
            args: l,
            functionName: d,
            dataSuffix: f = "string" == typeof e.dataSuffix ? e.dataSuffix : e.dataSuffix ? .value,
            ...p
        } = o, m = p.account ? (0, t.parseAccount)(p.account) : e.account, h = (0, n.encodeFunctionData)({
            abi: c,
            args: l,
            functionName: d
        });
        try {
            let {
                data: t
            } = await (0, a.getAction)(e, s.call, "call")({
                batch: !1,
                data: `${h}${f?f.replace("0x",""):""}`,
                to: u,
                ...p,
                account: m
            }), n = (0, r.decodeFunctionResult)({
                abi: c,
                args: l,
                functionName: d,
                data: t || "0x"
            }), i = c.filter(e => "name" in e && e.name === o.functionName);
            return {
                result: n,
                request: {
                    abi: i,
                    address: u,
                    args: l,
                    dataSuffix: f,
                    functionName: d,
                    ...p,
                    account: m
                }
            }
        } catch (e) {
            throw (0, i.getContractError)(e, {
                abi: c,
                address: u,
                args: l,
                docsPath: "/docs/contract/simulateContract",
                functionName: d,
                sender: m ? .address
            })
        }
    }
    e.s(["simulateContract", 0, o])
}, 483530, e => {
    "use strict";
    async function t(e, {
        filter: r
    }) {
        return r.request({
            method: "eth_uninstallFilter",
            params: [r.id]
        })
    }
    e.s(["uninstallFilter", 0, t])
}, 282010, 137995, 92476, 419288, 694506, 41925, 310004, e => {
    "use strict";
    var t = e.i(91565),
        r = e.i(670441),
        n = e.i(971418);
    let i = "0x6492649264926492649264926492649264926492649264926492649264926492";

    function a(e) {
        if (n.slice(e, -32) !== i) throw new o(e)
    }

    function s(e) {
        a(e);
        let [r, n, i] = t.decode(t.from("address, bytes, bytes"), e);
        return {
            data: n,
            signature: i,
            to: r
        }
    }
    class o extends r.BaseError {
        constructor(e) {
            super(`Value \`${e}\` is an invalid ERC-6492 wrapped signature.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "SignatureErc6492.InvalidWrappedSignatureError"
            })
        }
    }
    e.s(["InvalidWrappedSignatureError", 0, o, "assert", 0, a, "from", 0, function(e) {
        return "string" == typeof e ? s(e) : e
    }, "magicBytes", 0, i, "universalSignatureValidatorAbi", 0, [{
        inputs: [{
            name: "_signer",
            type: "address"
        }, {
            name: "_hash",
            type: "bytes32"
        }, {
            name: "_signature",
            type: "bytes"
        }],
        stateMutability: "nonpayable",
        type: "constructor"
    }, {
        inputs: [{
            name: "_signer",
            type: "address"
        }, {
            name: "_hash",
            type: "bytes32"
        }, {
            name: "_signature",
            type: "bytes"
        }],
        outputs: [{
            type: "bool"
        }],
        stateMutability: "nonpayable",
        type: "function",
        name: "isValidSig"
    }], "universalSignatureValidatorBytecode", 0, "0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572", "unwrap", 0, s, "validate", 0, function(e) {
        try {
            return a(e), !0
        } catch {
            return !1
        }
    }, "wrap", 0, function(e) {
        let {
            data: r,
            signature: a,
            to: s
        } = e;
        return n.concat(t.encode(t.from("address, bytes, bytes"), [s, r, a]), i)
    }], 64472);
    var c = e.i(64472),
        c = c,
        u = e.i(721592),
        l = e.i(491394),
        d = e.i(344861);

    function f(e) {
        if (e <= 255) return 1;
        if (e <= 65535) return 2;
        if (e <= 0xffffff) return 3;
        if (e <= 0xffffffff) return 4;
        throw new r.BaseError("Length is too large.")
    }
    var p = r,
        m = e.i(525289),
        h = e.i(191013);

    function g(e, t = {}) {
        let {
            recovered: r
        } = t;
        if (void 0 === e.r || void 0 === e.s || r && void 0 === e.yParity) throw new E({
            signature: e
        });
        if (e.r < 0 n || e.r > h.maxUint256) throw new T({
            value: e.r
        });
        if (e.s < 0 n || e.s > h.maxUint256) throw new A({
            value: e.s
        });
        if ("number" == typeof e.yParity && 0 !== e.yParity && 1 !== e.yParity) throw new B({
            value: e.yParity
        })
    }

    function y(e) {
        if (130 !== e.length && 132 !== e.length) throw new x({
            signature: e
        });
        let t = BigInt(n.slice(e, 0, 32)),
            r = BigInt(n.slice(e, 32, 64)),
            i = (() => {
                let t = Number(`0x${e.slice(130)}`);
                if (!Number.isNaN(t)) try {
                    return w(t)
                } catch {
                    throw new B({
                        value: t
                    })
                }
            })();
        return void 0 === i ? {
            r: t,
            s: r
        } : {
            r: t,
            s: r,
            yParity: i
        }
    }

    function b(e) {
        if (void 0 !== e.r && void 0 !== e.s) return v(e)
    }

    function v(e) {
        let t = (() => {
            var t, r;
            let i;
            if ("string" == typeof e) return y(e);
            if (e instanceof Uint8Array) return y(n.fromBytes(e));
            return "string" == typeof e.r ? (t = e, i = (() => {
                let e = t.v ? Number(t.v) : void 0,
                    r = t.yParity ? Number(t.yParity) : void 0;
                if ("number" == typeof e && "number" != typeof r && (r = w(e)), "number" != typeof r) throw new B({
                    value: t.yParity
                });
                return r
            })(), {
                r: BigInt(t.r),
                s: BigInt(t.s),
                yParity: i
            }) : e.v ? {
                r: (r = e).r,
                s: r.s,
                yParity: w(r.v)
            } : {
                r: e.r,
                s: e.s,
                ...void 0 !== e.yParity ? {
                    yParity: e.yParity
                } : {}
            }
        })();
        return g(t), t
    }

    function w(e) {
        if (0 === e || 27 === e) return 0;
        if (1 === e || 28 === e) return 1;
        if (e >= 35) return +(e % 2 == 0);
        throw new P({
            value: e
        })
    }
    class x extends p.BaseError {
        constructor({
            signature: e
        }) {
            super(`Value \`${e}\` is an invalid signature size.`, {
                metaMessages: ["Expected: 64 bytes or 65 bytes.", `Received ${n.size(n.from(e))} bytes.`]
            }), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Signature.InvalidSerializedSizeError"
            })
        }
    }
    class E extends p.BaseError {
        constructor({
            signature: e
        }) {
            super(`Signature \`${m.stringify(e)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Signature.MissingPropertiesError"
            })
        }
    }
    class T extends p.BaseError {
        constructor({
            value: e
        }) {
            super(`Value \`${e}\` is an invalid r value. r must be a positive integer less than 2^256.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Signature.InvalidRError"
            })
        }
    }
    class A extends p.BaseError {
        constructor({
            value: e
        }) {
            super(`Value \`${e}\` is an invalid s value. s must be a positive integer less than 2^256.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Signature.InvalidSError"
            })
        }
    }
    class B extends p.BaseError {
        constructor({
            value: e
        }) {
            super(`Value \`${e}\` is an invalid y-parity value. Y-parity must be 0 or 1.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Signature.InvalidYParityError"
            })
        }
    }
    class P extends p.BaseError {
        constructor({
            value: e
        }) {
            super(`Value \`${e}\` is an invalid v value. v must be 27, 28 or >=35.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "Signature.InvalidVError"
            })
        }
    }
    var I = r,
        C = e.i(368089),
        k = e.i(245419),
        S = e.i(430695);
    C.secp256k1;
    let N = "0x8010801080108010801080108010801080108010801080108010801080108010",
        R = t.from("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");

    function F(e) {
        if ("string" == typeof e) {
            if (n.slice(e, -32) !== N) throw new H(e)
        } else g(e.authorization)
    }

    function z(e) {
        F(e);
        let r = n.toNumber(n.slice(e, -64, -32)),
            i = n.slice(e, -r - 64, -64),
            a = n.slice(e, 0, -r - 64),
            [s, o, c] = t.decode(R, i);
        return {
            authorization: function(e, t = {}) {
                return "string" == typeof e.chainId ? function(e) {
                    let {
                        address: t,
                        chainId: r,
                        nonce: n
                    } = e, i = b(e);
                    return {
                        address: t,
                        chainId: Number(r),
                        nonce: BigInt(n),
                        ...i
                    }
                }(e) : { ...e,
                    ...t.signature
                }
            }({
                address: s.delegation,
                chainId: Number(s.chainId),
                nonce: s.nonce,
                yParity: s.yParity,
                r: s.r,
                s: s.s
            }),
            signature: a,
            ...c && "0x" !== c ? {
                data: c,
                to: o
            } : {}
        }
    }
    class H extends I.BaseError {
        constructor(e) {
            super(`Value \`${e}\` is an invalid ERC-8010 wrapped signature.`), Object.defineProperty(this, "name", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: "SignatureErc8010.InvalidWrappedSignatureError"
            })
        }
    }
    e.s(["InvalidWrappedSignatureError", 0, H, "assert", 0, F, "from", 0, function(e) {
        return "string" == typeof e ? z(e) : e
    }, "magicBytes", 0, N, "suffixParameters", 0, R, "unwrap", 0, z, "validate", 0, function(e) {
        try {
            return F(e), !0
        } catch {
            return !1
        }
    }, "wrap", 0, function(e) {
        var r;
        let {
            data: i,
            signature: a
        } = e;
        F(e);
        let s = (r = {
                payload: function(e, t = {}) {
                    let {
                        presign: r
                    } = t;
                    return u.keccak256(n.concat("0x05", function(e, t = {}) {
                        let {
                            as: r = "Hex"
                        } = t;
                        return function(e, t) {
                            let {
                                as: r
                            } = t, i = function e(t) {
                                var r, n;
                                let i, a, s, o;
                                return Array.isArray(t) ? (a = f(i = (r = t.map(t => e(t))).reduce((e, t) => e + t.length, 0)), {
                                    length: i <= 55 ? 1 + i : 1 + a + i,
                                    encode(e) {
                                        for (let {
                                                encode: t
                                            } of (i <= 55 ? e.pushByte(192 + i) : (e.pushByte(247 + a), 1 === a ? e.pushUint8(i) : 2 === a ? e.pushUint16(i) : 3 === a ? e.pushUint24(i) : e.pushUint32(i)), r)) t(e)
                                    }
                                }) : (o = f((s = "string" == typeof(n = t) ? l.fromHex(n) : n).length), {
                                    length: 1 === s.length && s[0] < 128 ? 1 : s.length <= 55 ? 1 + s.length : 1 + o + s.length,
                                    encode(e) {
                                        1 === s.length && s[0] < 128 || (s.length <= 55 ? e.pushByte(128 + s.length) : (e.pushByte(183 + o), 1 === o ? e.pushUint8(s.length) : 2 === o ? e.pushUint16(s.length) : 3 === o ? e.pushUint24(s.length) : e.pushUint32(s.length))), e.pushBytes(s)
                                    }
                                })
                            }(e), a = d.create(new Uint8Array(i.length));
                            return (i.encode(a), "Hex" === r) ? n.fromBytes(a.bytes) : a.bytes
                        }(e, {
                            as: r
                        })
                    }(function(e) {
                        let {
                            address: t,
                            chainId: r,
                            nonce: i
                        } = e, a = b(e);
                        return [r ? n.fromNumber(r) : "0x", t, i ? n.fromNumber(i) : "0x", ...a ? function(e) {
                            let {
                                r: t,
                                s: r,
                                yParity: i
                            } = e;
                            return [i ? "0x01" : "0x", 0 n === t ? "0x" : n.trimLeft(n.fromNumber(t)), 0 n === r ? "0x" : n.trimLeft(n.fromNumber(r))]
                        }(a) : []]
                    }(r ? {
                        address: e.address,
                        chainId: e.chainId,
                        nonce: e.nonce
                    } : e))))
                }(e.authorization, {
                    presign: !0
                }),
                signature: v(e.authorization)
            }, k.fromPublicKey(function(e) {
                let {
                    payload: t,
                    signature: r
                } = e, {
                    r: i,
                    s: a,
                    yParity: s
                } = r, o = new C.secp256k1.Signature(BigInt(i), BigInt(a)).addRecoveryBit(s).recoverPublicKey(n.from(t).substring(2));
                return S.from(o)
            }(r))),
            o = t.encode(R, [{ ...e.authorization,
                delegation: e.authorization.address,
                chainId: BigInt(e.authorization.chainId)
            }, e.to ? ? s, i ? ? "0x"]),
            c = n.fromNumber(n.size(o), {
                size: 32
            });
        return n.concat(a, o, c, N)
    }], 289984);
    var L = e.i(289984);
    e.s(["SignatureErc8010", 0, L], 137995);
    var L = L,
        q = e.i(866674),
        G = e.i(406954),
        $ = e.i(285510),
        U = e.i(762485),
        M = e.i(56339),
        D = e.i(113967),
        O = e.i(687e3),
        _ = e.i(156405);
    async function j({
        address: e,
        authorization: t,
        signature: r
    }) {
        return (0, O.isAddressEqual)((0, D.getAddress)(e), await (0, _.recoverAuthorizationAddress)({
            authorization: t,
            signature: r
        }))
    }
    var V = e.i(844268),
        W = e.i(229315),
        K = e.i(637608),
        Z = e.i(186897),
        J = e.i(280958),
        Y = e.i(444364),
        Q = e.i(318877);

    function X({
        r: e,
        s: t,
        to: r = "hex",
        v: n,
        yParity: i
    }) {
        let a = (() => {
                if (0 === i || 1 === i) return i;
                if (n && (27 n === n || 28 n === n || n >= 35 n)) return +(n % 2 n === 0 n);
                throw Error("Invalid `v` or `yParity` value")
            })(),
            s = `0x${new C.secp256k1.Signature((0,K.hexToBigInt)(e),(0,K.hexToBigInt)(t)).toCompactHex()}${0===a?"1b":"1c"}`;
        return "hex" === r ? s : (0, Q.hexToBytes)(s)
    }
    e.s(["serializeSignature", 0, X], 92476);
    var ee = e.i(376436),
        et = e.i(901362),
        er = e.i(167164);
    async function en(e, t) {
        let r, {
            address: n,
            chain: i = e.chain,
            hash: a,
            erc6492VerifierAddress: s = t.universalSignatureVerifierAddress ? ? i ? .contracts ? .erc6492Verifier ? .address,
            multicallAddress: o = t.multicallAddress ? ? i ? .contracts ? .multicall3 ? .address,
            mode: c = "auto"
        } = t;
        if (i ? .verifyHash) return await i.verifyHash(e, t);
        let u = (r = t.signature, (0, W.isHex)(r) ? r : "object" == typeof r && "r" in r && "s" in r ? X(r) : (0, Z.bytesToHex)(r));
        try {
            if ("eoa" === c) try {
                if ((0, O.isAddressEqual)((0, D.getAddress)(n), await (0, Y.recoverAddress)({
                        hash: a,
                        signature: u
                    }))) return !0
            } catch {}
            if (L.validate(u)) return await ei(e, { ...t,
                multicallAddress: o,
                signature: u
            });
            return await ea(e, { ...t,
                verifierAddress: s,
                signature: u
            })
        } catch (e) {
            if ("eoa" !== c) try {
                if ((0, O.isAddressEqual)((0, D.getAddress)(n), await (0, Y.recoverAddress)({
                        hash: a,
                        signature: u
                    }))) return !0
            } catch {}
            if (e instanceof eo) return !1;
            throw e
        }
    }
    async function ei(e, t) {
        let {
            address: r,
            blockNumber: n,
            blockTag: i,
            hash: a,
            multicallAddress: s
        } = t, {
            authorization: o,
            data: c,
            signature: u,
            to: l
        } = L.unwrap(t.signature);
        if (await (0, et.getCode)(e, {
                address: r,
                blockNumber: n,
                blockTag: i
            }) === (0, V.concatHex)(["0xef0100", o.address])) return await es(e, {
            address: r,
            blockNumber: n,
            blockTag: i,
            hash: a,
            signature: u
        });
        let d = {
            address: o.address,
            chainId: Number(o.chainId),
            nonce: Number(o.nonce),
            r: (0, Z.numberToHex)(o.r, {
                size: 32
            }),
            s: (0, Z.numberToHex)(o.s, {
                size: 32
            }),
            yParity: o.yParity
        };
        if (!await j({
                address: r,
                authorization: d
            })) throw new eo;
        let f = await (0, J.getAction)(e, er.readContract, "readContract")({ ...s ? {
                    address: s
                } : {
                    code: G.multicall3Bytecode
                },
                authorizationList: [d],
                abi: q.multicall3Abi,
                blockNumber: n,
                blockTag: "pending",
                functionName: "aggregate3",
                args: [
                    [...c ? [{
                        allowFailure: !0,
                        target: l ? ? r,
                        callData: c
                    }] : [], {
                        allowFailure: !0,
                        target: r,
                        callData: (0, M.encodeFunctionData)({
                            abi: q.erc1271Abi,
                            functionName: "isValidSignature",
                            args: [a, u]
                        })
                    }]
                ]
            }),
            p = f[f.length - 1] ? .returnData;
        if (p ? .startsWith("0x1626ba7e")) return !0;
        throw new eo
    }
    async function ea(e, t) {
        let {
            address: r,
            factory: n,
            factoryData: i,
            hash: a,
            signature: s,
            verifierAddress: o,
            ...u
        } = t, l = await (async () => !n && !i || c.validate(s) ? s : c.wrap({
            data: i,
            signature: s,
            to: n
        }))(), d = o ? {
            to: o,
            data: (0, M.encodeFunctionData)({
                abi: q.erc6492SignatureValidatorAbi,
                functionName: "isValidSig",
                args: [r, a, l]
            }),
            ...u
        } : {
            data: (0, U.encodeDeployData)({
                abi: q.erc6492SignatureValidatorAbi,
                args: [r, a, l],
                bytecode: G.erc6492SignatureValidatorByteCode
            }),
            ...u
        }, {
            data: f
        } = await (0, J.getAction)(e, ee.call, "call")(d).catch(e => {
            if (e instanceof $.CallExecutionError) throw new eo;
            throw e
        });
        if ((0, K.hexToBool)(f ? ? "0x0")) return !0;
        throw new eo
    }
    async function es(e, t) {
        let {
            address: r,
            blockNumber: n,
            blockTag: i,
            hash: a,
            signature: s
        } = t;
        if ((await (0, J.getAction)(e, er.readContract, "readContract")({
                address: r,
                abi: q.erc1271Abi,
                args: [a, s],
                blockNumber: n,
                blockTag: i,
                functionName: "isValidSignature"
            }).catch(e => {
                if (e instanceof $.ContractFunctionExecutionError) throw new eo;
                throw e
            })).startsWith("0x1626ba7e")) return !0;
        throw new eo
    }
    class eo extends Error {}
    e.s(["verifyHash", 0, en], 282010);
    var ec = e.i(415013);
    let eu = "\x19Ethereum Signed Message:\n";
    e.s(["presignMessagePrefix", 0, eu], 419288);
    var el = e.i(203375);

    function ed(e) {
        let t = "string" == typeof e ? (0, Z.stringToHex)(e) : "string" == typeof e.raw ? e.raw : (0, Z.bytesToHex)(e.raw),
            r = (0, Z.stringToHex)(`${eu}${(0,el.size)(t)}`);
        return (0, V.concat)([r, t])
    }

    function ef(e, t) {
        return (0, ec.keccak256)(ed(e), t)
    }
    async function ep(e, {
        address: t,
        message: r,
        factory: n,
        factoryData: i,
        signature: a,
        ...s
    }) {
        let o = ef(r);
        return (0, J.getAction)(e, en, "verifyHash")({
            address: t,
            factory: n,
            factoryData: i,
            hash: o,
            signature: a,
            ...s
        })
    }
    e.s(["toPrefixedMessage", 0, ed], 694506), e.s(["hashMessage", 0, ef], 41925), e.s(["verifyMessage", 0, ep], 310004)
}, 404278, e => {
    "use strict";
    var t = e.i(865692),
        r = e.i(621030);
    class n extends r.BaseError {
        constructor({
            domain: e
        }) {
            super(`Invalid domain "${(0,t.stringify)(e)}".`, {
                metaMessages: ["Must be a valid EIP-712 domain."]
            })
        }
    }
    class i extends r.BaseError {
        constructor({
            primaryType: e,
            types: t
        }) {
            super(`Invalid primary type \`${e}\` must be one of \`${JSON.stringify(Object.keys(t))}\`.`, {
                docsPath: "/api/glossary/Errors#typeddatainvalidprimarytypeerror",
                metaMessages: ["Check that the primary type is a key in `types`."]
            })
        }
    }
    class a extends r.BaseError {
        constructor({
            type: e
        }) {
            super(`Struct type "${e}" is invalid.`, {
                metaMessages: ["Struct type must not be a Solidity type."],
                name: "InvalidStructTypeError"
            })
        }
    }
    e.s(["InvalidDomainError", 0, n, "InvalidPrimaryTypeError", 0, i, "InvalidStructTypeError", 0, a])
}, 614668, e => {
    "use strict";
    e.s(["domainSeparator", () => p, "getTypesForEIP712Domain", () => f, "serializeTypedData", () => l, "validateTypedData", () => d]);
    var t = e.i(624297),
        r = e.i(108157),
        n = e.i(404278),
        i = e.i(571333),
        a = e.i(203375),
        s = e.i(186897),
        o = e.i(124953),
        c = e.i(7326),
        u = e.i(865692);

    function l(e) {
        let {
            domain: t,
            message: r,
            primaryType: n,
            types: i
        } = e, a = (e, t) => {
            let r = { ...t
            };
            for (let t of e) {
                let {
                    name: e,
                    type: n
                } = t;
                "address" === n && (r[e] = r[e].toLowerCase())
            }
            return r
        }, s = i.EIP712Domain && t ? a(i.EIP712Domain, t) : {}, o = (() => {
            if ("EIP712Domain" !== n) return a(i[n], r)
        })();
        return (0, u.stringify)({
            domain: s,
            message: o,
            primaryType: n,
            types: i
        })
    }

    function d(e) {
        let {
            domain: c,
            message: u,
            primaryType: l,
            types: d
        } = e, f = (e, c) => {
            for (let u of e) {
                let {
                    name: e,
                    type: l
                } = u, p = c[e], m = l.match(o.integerRegex);
                if (m && ("number" == typeof p || "bigint" == typeof p)) {
                    let [e, t, r] = m;
                    (0, s.numberToHex)(p, {
                        signed: "int" === t,
                        size: Number.parseInt(r, 10) / 8
                    })
                }
                if ("address" === l && "string" == typeof p && !(0, i.isAddress)(p)) throw new r.InvalidAddressError({
                    address: p
                });
                let h = l.match(o.bytesRegex);
                if (h) {
                    let [e, r] = h;
                    if (r && (0, a.size)(p) !== Number.parseInt(r, 10)) throw new t.BytesSizeMismatchError({
                        expectedSize: Number.parseInt(r, 10),
                        givenSize: (0, a.size)(p)
                    })
                }
                let g = d[l];
                g && (function(e) {
                    if ("address" === e || "bool" === e || "string" === e || e.startsWith("bytes") || e.startsWith("uint") || e.startsWith("int")) throw new n.InvalidStructTypeError({
                        type: e
                    })
                }(l), f(g, p))
            }
        };
        if (d.EIP712Domain && c) {
            if ("object" != typeof c) throw new n.InvalidDomainError({
                domain: c
            });
            f(d.EIP712Domain, c)
        }
        if ("EIP712Domain" !== l)
            if (d[l]) f(d[l], u);
            else throw new n.InvalidPrimaryTypeError({
                primaryType: l,
                types: d
            })
    }

    function f({
        domain: e
    }) {
        return ["string" == typeof e ? .name && {
            name: "name",
            type: "string"
        }, e ? .version && {
            name: "version",
            type: "string"
        }, ("number" == typeof e ? .chainId || "bigint" == typeof e ? .chainId) && {
            name: "chainId",
            type: "uint256"
        }, e ? .verifyingContract && {
            name: "verifyingContract",
            type: "address"
        }, e ? .salt && {
            name: "salt",
            type: "bytes32"
        }].filter(Boolean)
    }

    function p({
        domain: e
    }) {
        return (0, c.hashDomain)({
            domain: e,
            types: {
                EIP712Domain: f({
                    domain: e
                })
            }
        })
    }
}, 7326, e => {
    "use strict";
    e.s(["hashDomain", () => o, "hashStruct", () => c, "hashTypedData", () => s]);
    var t = e.i(198905),
        r = e.i(844268),
        n = e.i(186897),
        i = e.i(415013),
        a = e.i(614668);

    function s(e) {
        let {
            domain: t = {},
            message: n,
            primaryType: s
        } = e, u = {
            EIP712Domain: (0, a.getTypesForEIP712Domain)({
                domain: t
            }),
            ...e.types
        };
        (0, a.validateTypedData)({
            domain: t,
            message: n,
            primaryType: s,
            types: u
        });
        let l = ["0x1901"];
        return t && l.push(o({
            domain: t,
            types: u
        })), "EIP712Domain" !== s && l.push(c({
            data: n,
            primaryType: s,
            types: u
        })), (0, i.keccak256)((0, r.concat)(l))
    }

    function o({
        domain: e,
        types: t
    }) {
        return c({
            data: e,
            primaryType: "EIP712Domain",
            types: t
        })
    }

    function c({
        data: e,
        primaryType: r,
        types: a
    }) {
        let s = function e({
            data: r,
            primaryType: a,
            types: s
        }) {
            let o = [{
                    type: "bytes32"
                }],
                c = [function({
                    primaryType: e,
                    types: t
                }) {
                    let r = (0, n.toHex)(function({
                        primaryType: e,
                        types: t
                    }) {
                        let r = "",
                            n = function e({
                                primaryType: t,
                                types: r
                            }, n = new Set) {
                                let i = t.match(/^\w*/u),
                                    a = i ? .[0];
                                if (n.has(a) || void 0 === r[a]) return n;
                                for (let t of (n.add(a), r[a])) e({
                                    primaryType: t.type,
                                    types: r
                                }, n);
                                return n
                            }({
                                primaryType: e,
                                types: t
                            });
                        for (let i of (n.delete(e), [e, ...Array.from(n).sort()])) r += `${i}(${t[i].map(({name:e,type:t})=>`
                        $ {
                            t
                        }
                        $ {
                            e
                        }
                        `).join(",")})`;
                        return r
                    }({
                        primaryType: e,
                        types: t
                    }));
                    return (0, i.keccak256)(r)
                }({
                    primaryType: a,
                    types: s
                })];
            for (let u of s[a]) {
                let [a, l] = function r({
                    types: a,
                    name: s,
                    type: o,
                    value: c
                }) {
                    if (void 0 !== a[o]) return [{
                        type: "bytes32"
                    }, (0, i.keccak256)(e({
                        data: c,
                        primaryType: o,
                        types: a
                    }))];
                    if ("bytes" === o) return [{
                        type: "bytes32"
                    }, (0, i.keccak256)(c)];
                    if ("string" === o) return [{
                        type: "bytes32"
                    }, (0, i.keccak256)((0, n.toHex)(c))];
                    if (o.lastIndexOf("]") === o.length - 1) {
                        let e = o.slice(0, o.lastIndexOf("[")),
                            n = c.map(t => r({
                                name: s,
                                type: e,
                                types: a,
                                value: t
                            }));
                        return [{
                            type: "bytes32"
                        }, (0, i.keccak256)((0, t.encodeAbiParameters)(n.map(([e]) => e), n.map(([, e]) => e)))]
                    }
                    return [{
                        type: o
                    }, c]
                }({
                    types: s,
                    name: u.name,
                    type: u.type,
                    value: r[u.name]
                });
                o.push(a), c.push(l)
            }
            return (0, t.encodeAbiParameters)(o, c)
        }({
            data: e,
            primaryType: r,
            types: a
        });
        return (0, i.keccak256)(s)
    }
}, 721448, e => {
    "use strict";
    var t = e.i(280958),
        r = e.i(7326),
        n = e.i(282010);
    async function i(e, i) {
        let {
            address: a,
            factory: s,
            factoryData: o,
            signature: c,
            message: u,
            primaryType: l,
            types: d,
            domain: f,
            ...p
        } = i, m = (0, r.hashTypedData)({
            message: u,
            primaryType: l,
            types: d,
            domain: f
        });
        return (0, t.getAction)(e, n.verifyHash, "verifyHash")({
            address: a,
            factory: s,
            factoryData: o,
            hash: m,
            signature: c,
            ...p
        })
    }
    e.s(["verifyTypedData", 0, i])
}, 155517, 577771, e => {
    "use strict";
    let t = new Map,
        r = new Map,
        n = 0;
    e.s(["observe", 0, function(e, i, a) {
        let s = ++n,
            o = () => t.get(e) || [],
            c = () => {
                let n, i = o();
                if (!i.some(e => e.id === s)) return;
                let a = r.get(e);
                if (1 === i.length && a) {
                    let e = a();
                    e instanceof Promise && e.catch(() => {})
                }
                n = o(), t.set(e, n.filter(e => e.id !== s))
            },
            u = o();
        if (t.set(e, [...u, {
                id: s,
                fns: i
            }]), u && u.length > 0) return c;
        let l = {};
        for (let e in i) l[e] = (...t) => {
            let r = o();
            if (0 !== r.length)
                for (let n of r) n.fns[e] ? .(...t)
        };
        let d = a(l);
        return "function" == typeof d && r.set(e, d), c
    }], 155517);
    var i = e.i(777641);
    e.s(["poll", 0, function(e, {
        emitOnBegin: t,
        initialWaitTime: r,
        interval: n
    }) {
        let a = !0,
            s = () => a = !1;
        return (async () => {
            let o;
            t && (o = await e({
                unpoll: s
            }));
            let c = await r ? .(o) ? ? n;
            await (0, i.wait)(c);
            let u = async () => {
                a && (await e({
                    unpoll: s
                }), await (0, i.wait)(n), u())
            };
            u()
        })(), s
    }], 577771)
}, 556284, 462308, e => {
    "use strict";
    var t = e.i(778258),
        r = e.i(484309),
        n = e.i(280958),
        i = e.i(155517),
        a = e.i(481436),
        s = e.i(644988),
        o = e.i(865692),
        c = e.i(341634),
        u = e.i(811787),
        l = e.i(858403),
        d = e.i(637608),
        f = e.i(577771),
        p = e.i(315622);

    function m(e, {
        emitOnBegin: t = !1,
        emitMissed: r = !1,
        onBlockNumber: a,
        onError: s,
        poll: c,
        pollingInterval: u = e.pollingInterval
    }) {
        let l, h, g;
        return (void 0 !== c ? c : "webSocket" !== e.transport.type && "ipc" !== e.transport.type && ("fallback" !== e.transport.type || "webSocket" !== e.transport.transports[0].config.type && "ipc" !== e.transport.transports[0].config.type)) ? (h = (0, o.stringify)(["watchBlockNumber", e.uid, t, r, u]), (0, i.observe)(h, {
            onBlockNumber: a,
            onError: s
        }, i => (0, f.poll)(async () => {
            try {
                let t = await (0, n.getAction)(e, p.getBlockNumber, "getBlockNumber")({
                    cacheTime: 0
                });
                if (void 0 !== l) {
                    if (t === l) return;
                    if (t - l > 1 && r)
                        for (let e = l + 1 n; e < t; e++) i.onBlockNumber(e, l), l = e
                }(void 0 === l || t > l) && (i.onBlockNumber(t, l), l = t)
            } catch (e) {
                i.onError ? .(e)
            }
        }, {
            emitOnBegin: t,
            interval: u
        }))) : (g = (0, o.stringify)(["watchBlockNumber", e.uid, t, r]), (0, i.observe)(g, {
            onBlockNumber: a,
            onError: s
        }, t => {
            let r = !0,
                n = () => r = !1;
            return (async () => {
                try {
                    let i = (() => {
                            if ("fallback" === e.transport.type) {
                                let t = e.transport.transports.find(e => "webSocket" === e.config.type || "ipc" === e.config.type);
                                return t ? t.value : e.transport
                            }
                            return e.transport
                        })(),
                        {
                            unsubscribe: a
                        } = await i.subscribe({
                            params: ["newHeads"],
                            onData(e) {
                                if (!r) return;
                                let n = (0, d.hexToBigInt)(e.result ? .number);
                                t.onBlockNumber(n, l), l = n
                            },
                            onError(e) {
                                t.onError ? .(e)
                            }
                        });
                    n = a, r || n()
                } catch (e) {
                    s ? .(e)
                }
            })(), () => n()
        }))
    }
    async function h(e, d) {
        let f, p, h, g, y, {
                checkReplacement: b = !0,
                confirmations: v = 1,
                hash: w,
                onReplaced: x,
                retryCount: E = 6,
                retryDelay: T = ({
                    count: e
                }) => 200 * ~~(1 << e),
                timeout: A = 18e4
            } = d,
            B = (0, o.stringify)(["waitForTransactionReceipt", e.uid, w]),
            P = d.pollingInterval ? d.pollingInterval : e.chain ? .experimental_preconfirmationTime ? e.chain.experimental_preconfirmationTime : e.pollingInterval,
            I = !1,
            {
                promise: C,
                resolve: k,
                reject: S
            } = (0, a.withResolvers)(),
            N = A ? setTimeout(() => {
                y ? .(), g ? .(), S(new r.WaitForTransactionReceiptTimeoutError({
                    hash: w
                }))
            }, A) : void 0;
        return g = (0, i.observe)(B, {
            onReplaced: x,
            resolve: k,
            reject: S
        }, async i => {
            if ((h = await (0, n.getAction)(e, l.getTransactionReceipt, "getTransactionReceipt")({
                    hash: w
                }).catch(() => void 0)) && v <= 1) {
                clearTimeout(N), i.resolve(h), g ? .();
                return
            }
            y = (0, n.getAction)(e, m, "watchBlockNumber")({
                emitMissed: !0,
                emitOnBegin: !0,
                poll: !0,
                pollingInterval: P,
                async onBlockNumber(a) {
                    let o = e => {
                            clearTimeout(N), y ? .(), e(), g ? .()
                        },
                        d = a;
                    if (!I) try {
                        if (h) {
                            if (v > 1 && (!h.blockNumber || d - h.blockNumber + 1 n < v)) return;
                            o(() => i.resolve(h));
                            return
                        }
                        if (b && !f && (I = !0, await (0, s.withRetry)(async () => {
                                (f = await (0, n.getAction)(e, u.getTransaction, "getTransaction")({
                                    hash: w
                                })).blockNumber && (d = f.blockNumber)
                            }, {
                                delay: T,
                                retryCount: E
                            }), I = !1), h = await (0, n.getAction)(e, l.getTransactionReceipt, "getTransactionReceipt")({
                                hash: w
                            }), v > 1 && (!h.blockNumber || d - h.blockNumber + 1 n < v)) return;
                        o(() => i.resolve(h))
                    } catch (a) {
                        if (a instanceof r.TransactionNotFoundError || a instanceof r.TransactionReceiptNotFoundError) {
                            if (!f) {
                                I = !1;
                                return
                            }
                            try {
                                p = f, I = !0;
                                let r = await (0, s.withRetry)(() => (0, n.getAction)(e, c.getBlock, "getBlock")({
                                    blockNumber: d,
                                    includeTransactions: !0
                                }), {
                                    delay: T,
                                    retryCount: E,
                                    shouldRetry: ({
                                        error: e
                                    }) => e instanceof t.BlockNotFoundError
                                });
                                I = !1;
                                let a = r.transactions.find(({
                                    from: e,
                                    nonce: t
                                }) => e === p.from && t === p.nonce);
                                if (!a || (h = await (0, n.getAction)(e, l.getTransactionReceipt, "getTransactionReceipt")({
                                        hash: a.hash
                                    }), v > 1 && (!h.blockNumber || d - h.blockNumber + 1 n < v))) return;
                                let u = "replaced";
                                a.to === p.to && a.value === p.value && a.input === p.input ? u = "repriced" : a.from === a.to && 0 n === a.value && (u = "cancelled"), o(() => {
                                    i.onReplaced ? .({
                                        reason: u,
                                        replacedTransaction: p,
                                        transaction: a,
                                        transactionReceipt: h
                                    }), i.resolve(h)
                                })
                            } catch (e) {
                                o(() => i.reject(e))
                            }
                        } else o(() => i.reject(a))
                    }
                }
            })
        }), C
    }
    e.s(["watchBlockNumber", 0, m], 462308), e.s(["waitForTransactionReceipt", 0, h], 556284)
}, 976583, e => {
    "use strict";
    var t = e.i(280958),
        r = e.i(155517),
        n = e.i(577771),
        i = e.i(865692),
        a = e.i(341634);
    e.s(["watchBlocks", 0, function(e, {
        blockTag: s = e.experimental_blockTag ? ? "latest",
        emitMissed: o = !1,
        emitOnBegin: c = !1,
        onBlock: u,
        onError: l,
        includeTransactions: d,
        poll: f,
        pollingInterval: p = e.pollingInterval
    }) {
        let m, h, g, y, b, v = void 0 !== f ? f : "webSocket" !== e.transport.type && "ipc" !== e.transport.type && ("fallback" !== e.transport.type || "webSocket" !== e.transport.transports[0].config.type && "ipc" !== e.transport.transports[0].config.type),
            w = d ? ? !1;
        return v ? (h = (0, i.stringify)(["watchBlocks", e.uid, s, o, c, w, p]), (0, r.observe)(h, {
            onBlock: u,
            onError: l
        }, r => (0, n.poll)(async () => {
            try {
                let n = await (0, t.getAction)(e, a.getBlock, "getBlock")({
                    blockTag: s,
                    includeTransactions: w
                });
                if (null !== n.number && m ? .number != null) {
                    if (n.number === m.number) return;
                    if (n.number - m.number > 1 && o)
                        for (let i = m ? .number + 1 n; i < n.number; i++) {
                            let n = await (0, t.getAction)(e, a.getBlock, "getBlock")({
                                blockNumber: i,
                                includeTransactions: w
                            });
                            r.onBlock(n, m), m = n
                        }
                }(m ? .number == null || "pending" === s && n ? .number == null || null !== n.number && n.number > m.number) && (r.onBlock(n, m), m = n)
            } catch (e) {
                r.onError ? .(e)
            }
        }, {
            emitOnBegin: c,
            interval: p
        }))) : (g = !0, y = !0, b = () => g = !1, (async () => {
            try {
                c && (0, t.getAction)(e, a.getBlock, "getBlock")({
                    blockTag: s,
                    includeTransactions: w
                }).then(e => {
                    !g || y && (u(e, void 0), y = !1)
                }).catch(l);
                let r = (() => {
                        if ("fallback" === e.transport.type) {
                            let t = e.transport.transports.find(e => "webSocket" === e.config.type || "ipc" === e.config.type);
                            return t ? t.value : e.transport
                        }
                        return e.transport
                    })(),
                    {
                        unsubscribe: n
                    } = await r.subscribe({
                        params: ["newHeads"],
                        async onData(r) {
                            if (!g) return;
                            let n = await (0, t.getAction)(e, a.getBlock, "getBlock")({
                                blockNumber: r.result ? .number,
                                includeTransactions: w
                            }).catch(() => {});
                            g && (u(n, m), y = !1, m = n)
                        },
                        onError(e) {
                            l ? .(e)
                        }
                    });
                b = n, g || b()
            } catch (e) {
                l ? .(e)
            }
        })(), () => b())
    }])
}, 236316, e => {
    "use strict";
    var t = e.i(624297),
        r = e.i(962702),
        n = e.i(942401),
        i = e.i(742881),
        a = e.i(743141),
        s = e.i(280958),
        o = e.i(155517),
        c = e.i(577771),
        u = e.i(865692),
        l = e.i(742362),
        d = e.i(315622),
        f = e.i(728027),
        p = e.i(226295),
        m = e.i(483530);
    e.s(["watchContractEvent", 0, function(e, h) {
        let g, y, b, v, w, {
            abi: x,
            address: E,
            args: T,
            batch: A = !0,
            eventName: B,
            fromBlock: P,
            onError: I,
            onLogs: C,
            poll: k,
            pollingInterval: S = e.pollingInterval,
            strict: N
        } = h;
        return (void 0 !== k ? k : "bigint" == typeof P || "webSocket" !== e.transport.type && "ipc" !== e.transport.type && ("fallback" !== e.transport.type || "webSocket" !== e.transport.transports[0].config.type && "ipc" !== e.transport.transports[0].config.type)) ? (g = N ? ? !1, y = (0, u.stringify)(["watchContractEvent", E, T, A, e.uid, B, S, g, P]), (0, o.observe)(y, {
            onLogs: C,
            onError: I
        }, t => {
            let n, i;
            void 0 !== P && (n = P - 1 n);
            let a = !1,
                o = (0, c.poll)(async () => {
                    if (!a) {
                        try {
                            i = await (0, s.getAction)(e, l.createContractEventFilter, "createContractEventFilter")({
                                abi: x,
                                address: E,
                                args: T,
                                eventName: B,
                                strict: g,
                                fromBlock: P
                            })
                        } catch {}
                        a = !0;
                        return
                    }
                    try {
                        let r;
                        if (i) r = await (0, s.getAction)(e, p.getFilterChanges, "getFilterChanges")({
                            filter: i
                        });
                        else {
                            let t = await (0, s.getAction)(e, d.getBlockNumber, "getBlockNumber")({});
                            r = n && n < t ? await (0, s.getAction)(e, f.getContractEvents, "getContractEvents")({
                                abi: x,
                                address: E,
                                args: T,
                                eventName: B,
                                fromBlock: n + 1 n,
                                toBlock: t,
                                strict: g
                            }) : [], n = t
                        }
                        if (0 === r.length) return;
                        if (A) t.onLogs(r);
                        else
                            for (let e of r) t.onLogs([e])
                    } catch (e) {
                        i && e instanceof r.InvalidInputRpcError && (a = !1), t.onError ? .(e)
                    }
                }, {
                    emitOnBegin: !0,
                    interval: S
                });
            return async () => {
                i && await (0, s.getAction)(e, m.uninstallFilter, "uninstallFilter")({
                    filter: i
                }), o()
            }
        })) : (b = (0, u.stringify)(["watchContractEvent", E, T, A, e.uid, B, S, N ? ? !1]), v = !0, w = () => v = !1, (0, o.observe)(b, {
            onLogs: C,
            onError: I
        }, r => ((async () => {
            try {
                let s = (() => {
                        if ("fallback" === e.transport.type) {
                            let t = e.transport.transports.find(e => "webSocket" === e.config.type || "ipc" === e.config.type);
                            return t ? t.value : e.transport
                        }
                        return e.transport
                    })(),
                    o = B ? (0, i.encodeEventTopics)({
                        abi: x,
                        eventName: B,
                        args: T
                    }) : [],
                    {
                        unsubscribe: c
                    } = await s.subscribe({
                        params: ["logs", {
                            address: E,
                            topics: o
                        }],
                        onData(e) {
                            if (!v) return;
                            let i = e.result;
                            try {
                                let {
                                    eventName: e,
                                    args: t
                                } = (0, n.decodeEventLog)({
                                    abi: x,
                                    data: i.data,
                                    topics: i.topics,
                                    strict: N
                                }), s = (0, a.formatLog)(i, {
                                    args: t,
                                    eventName: e
                                });
                                r.onLogs([s])
                            } catch (o) {
                                let e, n;
                                if (o instanceof t.DecodeLogDataMismatch || o instanceof t.DecodeLogTopicsMismatch) {
                                    if (N) return;
                                    e = o.abiItem.name, n = o.abiItem.inputs ? .some(e => !("name" in e && e.name))
                                }
                                let s = (0, a.formatLog)(i, {
                                    args: n ? [] : {},
                                    eventName: e
                                });
                                r.onLogs([s])
                            }
                        },
                        onError(e) {
                            r.onError ? .(e)
                        }
                    });
                w = c, v || w()
            } catch (e) {
                I ? .(e)
            }
        })(), () => w())))
    }])
}, 547515, 828760, 657234, e => {
    "use strict";
    var t = e.i(624297),
        r = e.i(962702),
        n = e.i(942401),
        i = e.i(742881),
        a = e.i(743141),
        s = e.i(280958),
        o = e.i(155517),
        c = e.i(577771),
        u = e.i(865692),
        l = e.i(347184),
        d = e.i(315622),
        f = e.i(226295),
        p = e.i(306276),
        m = e.i(483530);
    e.s(["watchEvent", 0, function(e, {
        address: h,
        args: g,
        batch: y = !0,
        event: b,
        events: v,
        fromBlock: w,
        onError: x,
        onLogs: E,
        poll: T,
        pollingInterval: A = e.pollingInterval,
        strict: B
    }) {
        let P, I, C, k = void 0 !== T ? T : "bigint" == typeof w || "webSocket" !== e.transport.type && "ipc" !== e.transport.type && ("fallback" !== e.transport.type || "webSocket" !== e.transport.transports[0].config.type && "ipc" !== e.transport.transports[0].config.type),
            S = B ? ? !1;
        return k ? (P = (0, u.stringify)(["watchEvent", h, g, y, e.uid, b, A, w]), (0, o.observe)(P, {
            onLogs: E,
            onError: x
        }, t => {
            let n, i;
            void 0 !== w && (n = w - 1 n);
            let a = !1,
                o = (0, c.poll)(async () => {
                    if (!a) {
                        try {
                            i = await (0, s.getAction)(e, l.createEventFilter, "createEventFilter")({
                                address: h,
                                args: g,
                                event: b,
                                events: v,
                                strict: S,
                                fromBlock: w
                            })
                        } catch {}
                        a = !0;
                        return
                    }
                    try {
                        let r;
                        if (i) r = await (0, s.getAction)(e, f.getFilterChanges, "getFilterChanges")({
                            filter: i
                        });
                        else {
                            let t = await (0, s.getAction)(e, d.getBlockNumber, "getBlockNumber")({});
                            r = n && n !== t ? await (0, s.getAction)(e, p.getLogs, "getLogs")({
                                address: h,
                                args: g,
                                event: b,
                                events: v,
                                fromBlock: n + 1 n,
                                toBlock: t
                            }) : [], n = t
                        }
                        if (0 === r.length) return;
                        if (y) t.onLogs(r);
                        else
                            for (let e of r) t.onLogs([e])
                    } catch (e) {
                        i && e instanceof r.InvalidInputRpcError && (a = !1), t.onError ? .(e)
                    }
                }, {
                    emitOnBegin: !0,
                    interval: A
                });
            return async () => {
                i && await (0, s.getAction)(e, m.uninstallFilter, "uninstallFilter")({
                    filter: i
                }), o()
            }
        })) : (I = !0, C = () => I = !1, (async () => {
            try {
                let r = (() => {
                        if ("fallback" === e.transport.type) {
                            let t = e.transport.transports.find(e => "webSocket" === e.config.type || "ipc" === e.config.type);
                            return t ? t.value : e.transport
                        }
                        return e.transport
                    })(),
                    s = v ? ? (b ? [b] : void 0),
                    o = [];
                s && (o = [s.flatMap(e => (0, i.encodeEventTopics)({
                    abi: [e],
                    eventName: e.name,
                    args: g
                }))], b && (o = o[0]));
                let {
                    unsubscribe: c
                } = await r.subscribe({
                    params: ["logs", {
                        address: h,
                        topics: o
                    }],
                    onData(e) {
                        if (!I) return;
                        let r = e.result;
                        try {
                            let {
                                eventName: e,
                                args: t
                            } = (0, n.decodeEventLog)({
                                abi: s ? ? [],
                                data: r.data,
                                topics: r.topics,
                                strict: S
                            }), i = (0, a.formatLog)(r, {
                                args: t,
                                eventName: e
                            });
                            E([i])
                        } catch (s) {
                            let e, n;
                            if (s instanceof t.DecodeLogDataMismatch || s instanceof t.DecodeLogTopicsMismatch) {
                                if (B) return;
                                e = s.abiItem.name, n = s.abiItem.inputs ? .some(e => !("name" in e && e.name))
                            }
                            let i = (0, a.formatLog)(r, {
                                args: n ? [] : {},
                                eventName: e
                            });
                            E([i])
                        }
                    },
                    onError(e) {
                        x ? .(e)
                    }
                });
                C = c, I || C()
            } catch (e) {
                x ? .(e)
            }
        })(), () => C())
    }], 547515);
    var h = e.i(73421);
    e.s(["watchPendingTransactions", 0, function(e, {
        batch: t = !0,
        onError: r,
        onTransactions: n,
        poll: i,
        pollingInterval: a = e.pollingInterval
    }) {
        let l, d, p;
        return (void 0 !== i ? i : "webSocket" !== e.transport.type && "ipc" !== e.transport.type) ? (l = (0, u.stringify)(["watchPendingTransactions", e.uid, t, a]), (0, o.observe)(l, {
            onTransactions: n,
            onError: r
        }, r => {
            let n, i = (0, c.poll)(async () => {
                try {
                    if (!n) try {
                        n = await (0, s.getAction)(e, h.createPendingTransactionFilter, "createPendingTransactionFilter")({});
                        return
                    } catch (e) {
                        throw i(), e
                    }
                    let a = await (0, s.getAction)(e, f.getFilterChanges, "getFilterChanges")({
                        filter: n
                    });
                    if (0 === a.length) return;
                    if (t) r.onTransactions(a);
                    else
                        for (let e of a) r.onTransactions([e])
                } catch (e) {
                    r.onError ? .(e)
                }
            }, {
                emitOnBegin: !0,
                interval: a
            });
            return async () => {
                n && await (0, s.getAction)(e, m.uninstallFilter, "uninstallFilter")({
                    filter: n
                }), i()
            }
        })) : (d = !0, p = () => d = !1, (async () => {
            try {
                let {
                    unsubscribe: t
                } = await e.transport.subscribe({
                    params: ["newPendingTransactions"],
                    onData(e) {
                        if (!d) return;
                        let t = e.result;
                        n([t])
                    },
                    onError(e) {
                        r ? .(e)
                    }
                });
                p = t, d || p()
            } catch (e) {
                r ? .(e)
            }
        })(), () => p())
    }], 828760);
    var g = e.i(41925);
    let y = /^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,
        b = /(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;
    var v = e.i(571333),
        w = e.i(687e3),
        x = e.i(282010);
    async function E(e, t) {
        let {
            address: r,
            domain: n,
            message: i,
            nonce: a,
            scheme: s,
            signature: o,
            time: c = new Date,
            ...u
        } = t, l = function(e) {
            let {
                scheme: t,
                statement: r,
                ...n
            } = e.match(y) ? .groups ? ? {}, {
                chainId: i,
                expirationTime: a,
                issuedAt: s,
                notBefore: o,
                requestId: c,
                ...u
            } = e.match(b) ? .groups ? ? {}, l = e.split("Resources:")[1] ? .split("\n- ").slice(1);
            return { ...n,
                ...u,
                ...i ? {
                    chainId: Number(i)
                } : {},
                ...a ? {
                    expirationTime: new Date(a)
                } : {},
                ...s ? {
                    issuedAt: new Date(s)
                } : {},
                ...o ? {
                    notBefore: new Date(o)
                } : {},
                ...c ? {
                    requestId: c
                } : {},
                ...l ? {
                    resources: l
                } : {},
                ...t ? {
                    scheme: t
                } : {},
                ...r ? {
                    statement: r
                } : {}
            }
        }(i);
        if (!l.address || ! function(e) {
                let {
                    address: t,
                    domain: r,
                    message: n,
                    nonce: i,
                    scheme: a,
                    time: s = new Date
                } = e;
                if (r && n.domain !== r || i && n.nonce !== i || a && n.scheme !== a || n.expirationTime && s >= n.expirationTime || n.notBefore && s < n.notBefore) return !1;
                try {
                    if (!n.address || !(0, v.isAddress)(n.address, {
                            strict: !1
                        }) || t && !(0, w.isAddressEqual)(n.address, t)) return !1
                } catch {
                    return !1
                }
                return !0
            }({
                address: r,
                domain: n,
                message: l,
                nonce: a,
                scheme: s,
                time: c
            })) return !1;
        let d = (0, g.hashMessage)(i);
        return (0, x.verifyHash)(e, {
            address: l.address,
            hash: d,
            signature: o,
            ...u
        })
    }
    e.s(["verifySiweMessage", 0, E], 657234)
}, 16498, e => {
    "use strict";
    async function t(e, {
        serializedTransaction: r
    }) {
        return e.request({
            method: "eth_sendRawTransaction",
            params: [r]
        }, {
            retryCount: 0
        })
    }
    e.s(["sendRawTransaction", 0, t])
}, 843995, e => {
    "use strict";
    var t = e.i(484309),
        r = e.i(900042);
    async function n(e, {
        serializedTransaction: i,
        throwOnReceiptRevert: a,
        timeout: s
    }) {
        let o = await e.request({
                method: "eth_sendRawTransactionSync",
                params: s ? [i, s] : [i]
            }, {
                retryCount: 0
            }),
            c = (e.chain ? .formatters ? .transactionReceipt ? .format || r.formatTransactionReceipt)(o);
        if ("reverted" === c.status && a) throw new t.TransactionReceiptRevertedError({
            receipt: c
        });
        return c
    }
    e.s(["sendRawTransactionSync", 0, n])
}, 26128, 157815, e => {
    "use strict";
    var t = e.i(212146),
        r = e.i(266057),
        n = e.i(971807),
        i = e.i(44803),
        a = e.i(259669),
        s = e.i(898698),
        o = e.i(376436),
        c = e.i(319061),
        u = e.i(71540),
        l = e.i(742362),
        d = e.i(347184),
        f = e.i(73421),
        p = e.i(971951),
        m = e.i(176890),
        h = e.i(804313),
        g = e.i(327594),
        y = e.i(949857),
        b = e.i(776516),
        v = e.i(591191),
        w = e.i(341634),
        x = e.i(315622),
        E = e.i(688112),
        T = e.i(666965),
        A = e.i(901362),
        B = e.i(728027),
        P = e.i(975473),
        I = e.i(621793),
        C = e.i(278904),
        k = e.i(226295),
        S = e.i(587539),
        N = e.i(254672),
        R = e.i(306276),
        F = e.i(92868),
        z = e.i(437313),
        H = e.i(811787),
        L = e.i(992917),
        q = e.i(253811),
        G = e.i(858403),
        $ = e.i(548133),
        U = e.i(167164),
        M = e.i(365173),
        D = e.i(298249),
        O = e.i(655579),
        _ = e.i(483530),
        j = e.i(282010),
        V = e.i(310004),
        W = e.i(721448),
        K = e.i(556284),
        Z = e.i(462308),
        J = e.i(976583),
        Y = e.i(236316),
        Q = e.i(547515),
        X = e.i(828760),
        ee = e.i(657234),
        et = e.i(1552),
        er = e.i(16498),
        en = e.i(843995);

    function ei(e) {
        return {
            call: t => (0, o.call)(e, t),
            createAccessList: t => (0, c.createAccessList)(e, t),
            createBlockFilter: () => (0, u.createBlockFilter)(e),
            createContractEventFilter: t => (0, l.createContractEventFilter)(e, t),
            createEventFilter: t => (0, d.createEventFilter)(e, t),
            createPendingTransactionFilter: () => (0, f.createPendingTransactionFilter)(e),
            estimateContractGas: t => (0, p.estimateContractGas)(e, t),
            estimateGas: t => (0, h.estimateGas)(e, t),
            getBalance: t => (0, b.getBalance)(e, t),
            getBlobBaseFee: () => (0, v.getBlobBaseFee)(e),
            getBlock: t => (0, w.getBlock)(e, t),
            getBlockNumber: t => (0, x.getBlockNumber)(e, t),
            getBlockTransactionCount: t => (0, E.getBlockTransactionCount)(e, t),
            getBytecode: t => (0, A.getCode)(e, t),
            getChainId: () => (0, T.getChainId)(e),
            getCode: t => (0, A.getCode)(e, t),
            getContractEvents: t => (0, B.getContractEvents)(e, t),
            getDelegation: t => (0, P.getDelegation)(e, t),
            getEip712Domain: t => (0, I.getEip712Domain)(e, t),
            getEnsAddress: t => (0, r.getEnsAddress)(e, t),
            getEnsAvatar: t => (0, n.getEnsAvatar)(e, t),
            getEnsName: t => (0, i.getEnsName)(e, t),
            getEnsResolver: t => (0, a.getEnsResolver)(e, t),
            getEnsText: t => (0, s.getEnsText)(e, t),
            getFeeHistory: t => (0, C.getFeeHistory)(e, t),
            estimateFeesPerGas: t => (0, m.estimateFeesPerGas)(e, t),
            getFilterChanges: t => (0, k.getFilterChanges)(e, t),
            getFilterLogs: t => (0, S.getFilterLogs)(e, t),
            getGasPrice: () => (0, N.getGasPrice)(e),
            getLogs: t => (0, R.getLogs)(e, t),
            getProof: t => (0, F.getProof)(e, t),
            estimateMaxPriorityFeePerGas: t => (0, g.estimateMaxPriorityFeePerGas)(e, t),
            fillTransaction: t => (0, y.fillTransaction)(e, t),
            getStorageAt: t => (0, z.getStorageAt)(e, t),
            getTransaction: t => (0, H.getTransaction)(e, t),
            getTransactionConfirmations: t => (0, L.getTransactionConfirmations)(e, t),
            getTransactionCount: t => (0, q.getTransactionCount)(e, t),
            getTransactionReceipt: t => (0, G.getTransactionReceipt)(e, t),
            multicall: t => (0, $.multicall)(e, t),
            prepareTransactionRequest: t => (0, et.prepareTransactionRequest)(e, t),
            readContract: t => (0, U.readContract)(e, t),
            sendRawTransaction: t => (0, er.sendRawTransaction)(e, t),
            sendRawTransactionSync: t => (0, en.sendRawTransactionSync)(e, t),
            simulate: t => (0, M.simulateBlocks)(e, t),
            simulateBlocks: t => (0, M.simulateBlocks)(e, t),
            simulateCalls: t => (0, D.simulateCalls)(e, t),
            simulateContract: t => (0, O.simulateContract)(e, t),
            verifyHash: t => (0, j.verifyHash)(e, t),
            verifyMessage: t => (0, V.verifyMessage)(e, t),
            verifySiweMessage: t => (0, ee.verifySiweMessage)(e, t),
            verifyTypedData: t => (0, W.verifyTypedData)(e, t),
            uninstallFilter: t => (0, _.uninstallFilter)(e, t),
            waitForTransactionReceipt: t => (0, K.waitForTransactionReceipt)(e, t),
            watchBlocks: t => (0, J.watchBlocks)(e, t),
            watchBlockNumber: t => (0, Z.watchBlockNumber)(e, t),
            watchContractEvent: t => (0, Y.watchContractEvent)(e, t),
            watchEvent: t => (0, Q.watchEvent)(e, t),
            watchPendingTransactions: t => (0, X.watchPendingTransactions)(e, t)
        }
    }
    e.s(["publicActions", 0, ei], 157815), e.s(["createPublicClient", 0, function(e) {
        let {
            key: r = "public",
            name: n = "Public Client"
        } = e;
        return (0, t.createClient)({ ...e,
            key: r,
            name: n,
            type: "publicClient"
        }).extend(ei)
    }], 26128)
}, 966727, e => {
    "use strict";
    var t = e.i(624297),
        r = e.i(108157),
        n = e.i(571333),
        i = e.i(844268),
        a = e.i(605381),
        s = e.i(186897),
        o = e.i(124953);
    e.s(["encodePacked", 0, function(e, c) {
        if (e.length !== c.length) throw new t.AbiEncodingLengthMismatchError({
            expectedLength: e.length,
            givenLength: c.length
        });
        let u = [];
        for (let l = 0; l < e.length; l++) {
            let d = e[l],
                f = c[l];
            u.push(function e(c, u, l = !1) {
                if ("address" === c) {
                    if (!(0, n.isAddress)(u)) throw new r.InvalidAddressError({
                        address: u
                    });
                    return (0, a.pad)(u.toLowerCase(), {
                        size: l ? 32 : null
                    })
                }
                if ("string" === c) return (0, s.stringToHex)(u);
                if ("bytes" === c) return u;
                if ("bool" === c) return (0, a.pad)((0, s.boolToHex)(u), {
                    size: l ? 32 : 1
                });
                let d = c.match(o.integerRegex);
                if (d) {
                    let [e, t, r = "256"] = d, n = Number.parseInt(r, 10) / 8;
                    return (0, s.numberToHex)(u, {
                        size: l ? 32 : n,
                        signed: "int" === t
                    })
                }
                let f = c.match(o.bytesRegex);
                if (f) {
                    let [e, r] = f;
                    if (Number.parseInt(r, 10) !== (u.length - 2) / 2) throw new t.BytesSizeMismatchError({
                        expectedSize: Number.parseInt(r, 10),
                        givenSize: (u.length - 2) / 2
                    });
                    return (0, a.pad)(u, {
                        dir: "right",
                        size: l ? 32 : null
                    })
                }
                let p = c.match(o.arrayRegex);
                if (p && Array.isArray(u)) {
                    let [t, r] = p, n = [];
                    for (let t = 0; t < u.length; t++) n.push(e(r, u[t], !0));
                    return 0 === n.length ? "0x" : (0, i.concatHex)(n)
                }
                throw new t.UnsupportedPackedAbiType(c)
            }(d, f))
        }
        return (0, i.concatHex)(u)
    }])
}, 183984, e => {
    "use strict";
    e.s(["isBytes", 0, function(e) {
        return !!e && "object" == typeof e && "BYTES_PER_ELEMENT" in e && 1 === e.BYTES_PER_ELEMENT && "Uint8Array" === e.constructor.name
    }])
}, 777038, e => {
    "use strict";
    var t = e.i(844268),
        r = e.i(183984),
        n = e.i(605381),
        i = e.i(394254),
        a = e.i(318877),
        s = e.i(632768),
        o = e.i(415013),
        c = e.i(113967);

    function u(e) {
        let t = (0, a.toBytes)((0, c.getAddress)(e.from)),
            r = (0, a.toBytes)(e.nonce);
        return 0 === r[0] && (r = new Uint8Array([])), (0, c.getAddress)(`0x${(0,o.keccak256)((0,s.toRlp)([t,r],"bytes")).slice(26)}`)
    }

    function l(e) {
        let s = (0, a.toBytes)((0, c.getAddress)(e.from)),
            u = (0, n.pad)((0, r.isBytes)(e.salt) ? e.salt : (0, a.toBytes)(e.salt), {
                size: 32
            }),
            l = "bytecodeHash" in e ? (0, r.isBytes)(e.bytecodeHash) ? e.bytecodeHash : (0, a.toBytes)(e.bytecodeHash) : (0, o.keccak256)(e.bytecode, "bytes");
        return (0, c.getAddress)((0, i.slice)((0, o.keccak256)((0, t.concat)([(0, a.toBytes)("0xff"), s, u, l])), 12))
    }
    e.s(["getContractAddress", 0, function(e) {
        return "CREATE2" === e.opcode ? l(e) : u(e)
    }, "getCreate2Address", 0, l, "getCreateAddress", 0, u])
}, 973518, e => {
    "use strict";
    e.s(["erc6492MagicBytes", 0, "0x6492649264926492649264926492649264926492649264926492649264926492", "zeroHash", 0, "0x0000000000000000000000000000000000000000000000000000000000000000"])
}, 591387, e => {
    "use strict";
    var t = e.i(186897);
    async function r(e, {
        chain: n
    }) {
        let {
            id: i,
            name: a,
            nativeCurrency: s,
            rpcUrls: o,
            blockExplorers: c
        } = n;
        await e.request({
            method: "wallet_addEthereumChain",
            params: [{
                chainId: (0, t.numberToHex)(i),
                chainName: a,
                nativeCurrency: s,
                rpcUrls: o.default.http,
                blockExplorerUrls: c ? Object.values(c).map(({
                    url: e
                }) => e) : void 0
            }]
        }, {
            dedupe: !0,
            retryCount: 0
        })
    }
    e.s(["addChain", 0, r])
}, 718460, e => {
    "use strict";
    var t = e.i(603641);
    e.s(["assertCurrentChain", 0, function({
        chain: e,
        currentChainId: r
    }) {
        if (!e) throw new t.ChainNotFoundError;
        if (r !== e.id) throw new t.ChainMismatchError({
            chain: e,
            currentChainId: r
        })
    }])
}, 581397, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(514034),
        n = e.i(621030),
        i = e.i(156405),
        a = e.i(718460),
        s = e.i(844268),
        o = e.i(745048),
        c = e.i(375137),
        u = e.i(249618),
        l = e.i(280958),
        d = e.i(979281),
        f = e.i(830363),
        p = e.i(666965),
        m = e.i(1552),
        h = e.i(16498);
    let g = new d.LruMap(128);
    async function y(e, d) {
        let {
            account: y = e.account,
            assertChainId: b = !0,
            chain: v = e.chain,
            accessList: w,
            authorizationList: x,
            blobs: E,
            data: T,
            dataSuffix: A = "string" == typeof e.dataSuffix ? e.dataSuffix : e.dataSuffix ? .value,
            gas: B,
            gasPrice: P,
            maxFeePerBlobGas: I,
            maxFeePerGas: C,
            maxPriorityFeePerGas: k,
            nonce: S,
            type: N,
            value: R,
            ...F
        } = d;
        if (void 0 === y) throw new r.AccountNotFoundError({
            docsPath: "/docs/actions/wallet/sendTransaction"
        });
        let z = y ? (0, t.parseAccount)(y) : null;
        try {
            (0, f.assertRequest)(d);
            let t = await (async () => d.to ? d.to : null !== d.to && x && x.length > 0 ? await (0, i.recoverAuthorizationAddress)({
                authorization: x[0]
            }).catch(() => {
                throw new n.BaseError("`to` is required. Could not infer from `authorizationList`.")
            }) : void 0)();
            if (z ? .type === "json-rpc" || null === z) {
                let r;
                null !== v && (r = await (0, l.getAction)(e, p.getChainId, "getChainId")({}), b && (0, a.assertCurrentChain)({
                    currentChainId: r,
                    chain: v
                }));
                let n = e.chain ? .formatters ? .transactionRequest ? .format,
                    i = (n || u.formatTransactionRequest)({ ...(0, c.extract)(F, {
                            format: n
                        }),
                        accessList: w,
                        account: z,
                        authorizationList: x,
                        blobs: E,
                        chainId: r,
                        data: A ? (0, s.concat)([T ? ? "0x", A]) : T,
                        gas: B,
                        gasPrice: P,
                        maxFeePerBlobGas: I,
                        maxFeePerGas: C,
                        maxPriorityFeePerGas: k,
                        nonce: S,
                        to: t,
                        type: N,
                        value: R
                    }, "sendTransaction"),
                    o = g.get(e.uid);
                try {
                    return await e.request({
                        method: o ? "wallet_sendTransaction" : "eth_sendTransaction",
                        params: [i]
                    }, {
                        retryCount: 0
                    })
                } catch (t) {
                    if (!1 === o) throw t;
                    if ("InvalidInputRpcError" === t.name || "InvalidParamsRpcError" === t.name || "MethodNotFoundRpcError" === t.name || "MethodNotSupportedRpcError" === t.name) return await e.request({
                        method: "wallet_sendTransaction",
                        params: [i]
                    }, {
                        retryCount: 0
                    }).then(t => (g.set(e.uid, !0), t)).catch(r => {
                        if ("MethodNotFoundRpcError" === r.name || "MethodNotSupportedRpcError" === r.name) throw g.set(e.uid, !1), t;
                        throw r
                    });
                    throw t
                }
            }
            if (z ? .type === "local") {
                let r = await (0, l.getAction)(e, m.prepareTransactionRequest, "prepareTransactionRequest")({
                        account: z,
                        accessList: w,
                        authorizationList: x,
                        blobs: E,
                        chain: v,
                        data: A ? (0, s.concat)([T ? ? "0x", A]) : T,
                        gas: B,
                        gasPrice: P,
                        maxFeePerBlobGas: I,
                        maxFeePerGas: C,
                        maxPriorityFeePerGas: k,
                        nonce: S,
                        nonceManager: z.nonceManager,
                        parameters: [...m.defaultParameters, "sidecars"],
                        type: N,
                        value: R,
                        ...F,
                        to: t
                    }),
                    n = v ? .serializers ? .transaction,
                    i = await z.signTransaction(r, {
                        serializer: n
                    });
                return await (0, l.getAction)(e, h.sendRawTransaction, "sendRawTransaction")({
                    serializedTransaction: i
                })
            }
            if (z ? .type === "smart") throw new r.AccountTypeNotSupportedError({
                metaMessages: ["Consider using the `sendUserOperation` Action instead."],
                docsPath: "/docs/actions/bundler/sendUserOperation",
                type: "smart"
            });
            throw new r.AccountTypeNotSupportedError({
                docsPath: "/docs/actions/wallet/sendTransaction",
                type: z ? .type
            })
        } catch (e) {
            if (e instanceof r.AccountTypeNotSupportedError) throw e;
            throw (0, o.getTransactionError)(e, { ...d,
                account: z,
                chain: d.chain || void 0
            })
        }
    }
    e.s(["sendTransaction", 0, y])
}, 230629, 510480, e => {
    "use strict";
    var t = e.i(762485),
        r = e.i(581397);
    e.s(["deployContract", 0, function(e, n) {
        let {
            abi: i,
            args: a,
            bytecode: s,
            ...o
        } = n, c = (0, t.encodeDeployData)({
            abi: i,
            args: a,
            bytecode: s
        });
        return (0, r.sendTransaction)(e, { ...o,
            ...o.authorizationList ? {
                to: null
            } : {},
            data: c
        })
    }], 230629);
    var n = e.i(113967);
    async function i(e) {
        return e.account ? .type === "local" ? [e.account.address] : (await e.request({
            method: "eth_accounts"
        }, {
            dedupe: !0
        })).map(e => (0, n.checksumAddress)(e))
    }
    e.s(["getAddresses", 0, i], 510480)
}, 997090, 110268, e => {
    "use strict";
    var t = e.i(394254),
        r = e.i(19472),
        n = e.i(637608),
        i = e.i(900042),
        a = e.i(372387),
        s = e.i(621030),
        o = e.i(962702),
        c = e.i(56339),
        u = e.i(844268),
        l = e.i(186897),
        d = e.i(745048),
        f = e.i(581397);
    let p = "0x5792579257925792579257925792579257925792579257925792579257925792",
        m = (0, l.numberToHex)(0, {
            size: 32
        });
    async function h(e, t) {
        let {
            account: r = e.account,
            chain: i = e.chain,
            experimental_fallback: h,
            experimental_fallbackDelay: g = 32,
            forceAtomic: y = !1,
            id: b,
            version: v = "2.0.0"
        } = t, w = r ? (0, a.parseAccount)(r) : null, x = t.capabilities;
        e.dataSuffix && !t.capabilities ? .dataSuffix && (x = "string" == typeof e.dataSuffix ? { ...t.capabilities,
            dataSuffix: {
                value: e.dataSuffix,
                optional: !0
            }
        } : { ...t.capabilities,
            dataSuffix: {
                value: e.dataSuffix.value,
                ...e.dataSuffix.required ? {} : {
                    optional: !0
                }
            }
        });
        let E = t.calls.map(e => {
            let t = e.abi ? (0, c.encodeFunctionData)({
                abi: e.abi,
                functionName: e.functionName,
                args: e.args
            }) : e.data;
            return {
                data: e.dataSuffix && t ? (0, u.concat)([t, e.dataSuffix]) : t,
                to: e.to,
                value: e.value ? (0, l.numberToHex)(e.value) : void 0
            }
        });
        try {
            let t = await e.request({
                method: "wallet_sendCalls",
                params: [{
                    atomicRequired: y,
                    calls: E,
                    capabilities: x,
                    chainId: (0, l.numberToHex)(i.id),
                    from: w ? .address,
                    id: b,
                    version: v
                }]
            }, {
                retryCount: 0
            });
            if ("string" == typeof t) return {
                id: t
            };
            return t
        } catch (r) {
            if (h && ("MethodNotFoundRpcError" === r.name || "MethodNotSupportedRpcError" === r.name || "UnknownRpcError" === r.name || r.details.toLowerCase().includes("does not exist / is not available") || r.details.toLowerCase().includes("missing or invalid. request()") || r.details.toLowerCase().includes("did not match any variant of untagged enum") || r.details.toLowerCase().includes("account upgraded to unsupported contract") || r.details.toLowerCase().includes("eip-7702 not supported") || r.details.toLowerCase().includes("unsupported wc_ method") || r.details.toLowerCase().includes("feature toggled misconfigured") || r.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))) {
                if (x && Object.values(x).some(e => !e.optional)) {
                    let e = "non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";
                    throw new o.UnsupportedNonOptionalCapabilityError(new s.BaseError(e, {
                        details: e
                    }))
                }
                if (y && E.length > 1) {
                    let e = "`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";
                    throw new o.AtomicityNotSupportedError(new s.BaseError(e, {
                        details: e
                    }))
                }
                let t = [];
                for (let r of E) {
                    let a = (0, f.sendTransaction)(e, {
                        account: w,
                        chain: i,
                        data: r.data,
                        to: r.to,
                        value: r.value ? (0, n.hexToBigInt)(r.value) : void 0
                    });
                    t.push(a), g > 0 && await new Promise(e => setTimeout(e, g))
                }
                let r = await Promise.allSettled(t);
                if (r.every(e => "rejected" === e.status)) throw r[0].reason;
                let a = r.map(e => "fulfilled" === e.status ? e.value : m);
                return {
                    id: (0, u.concat)([...a, (0, l.numberToHex)(i.id, {
                        size: 32
                    }), p])
                }
            }
            throw (0, d.getTransactionError)(r, { ...t,
                account: w,
                chain: t.chain
            })
        }
    }
    async function g(e, a) {
        let s;
        async function o(i) {
            if (i.endsWith(p.slice(2))) {
                let a = (0, r.trim)((0, t.sliceHex)(i, -64, -32)),
                    s = (0, t.sliceHex)(i, 0, -64).slice(2).match(/.{1,64}/g),
                    o = await Promise.all(s.map(t => m.slice(2) !== t ? e.request({
                        method: "eth_getTransactionReceipt",
                        params: [`0x${t}`]
                    }, {
                        dedupe: !0
                    }) : void 0)),
                    c = o.some(e => null === e) ? 100 : o.every(e => e ? .status === "0x1") ? 200 : o.every(e => e ? .status === "0x0") ? 500 : 600;
                return {
                    atomic: !1,
                    chainId: (0, n.hexToNumber)(a),
                    receipts: o.filter(Boolean),
                    status: c,
                    version: "2.0.0"
                }
            }
            return e.request({
                method: "wallet_getCallsStatus",
                params: [i]
            })
        }
        let {
            atomic: c = !1,
            chainId: u,
            receipts: l,
            version: d = "2.0.0",
            ...f
        } = await o(a.id), [h, g] = (s = f.status) >= 100 && s < 200 ? ["pending", s] : s >= 200 && s < 300 ? ["success", s] : s >= 300 && s < 700 ? ["failure", s] : "CONFIRMED" === s ? ["success", 200] : "PENDING" === s ? ["pending", 100] : [void 0, s];
        return { ...f,
            atomic: c,
            chainId: u ? (0, n.hexToNumber)(u) : void 0,
            receipts: l ? .map(e => ({ ...e,
                blockNumber: (0, n.hexToBigInt)(e.blockNumber),
                gasUsed: (0, n.hexToBigInt)(e.gasUsed),
                status: i.receiptStatuses[e.status]
            })) ? ? [],
            statusCode: g,
            status: h,
            version: d
        }
    }
    e.s(["fallbackMagicIdentifier", 0, p, "fallbackTransactionErrorMagicIdentifier", 0, m, "sendCalls", 0, h], 110268), e.s(["getCallsStatus", 0, g], 997090)
}, 754073, 13405, 800005, 683775, 532103, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(186897);
    async function n(e, i = {}) {
        let {
            account: a = e.account,
            chainId: s
        } = i, o = a ? (0, t.parseAccount)(a) : void 0, c = s ? [o ? .address, [(0, r.numberToHex)(s)]] : [o ? .address], u = await e.request({
            method: "wallet_getCapabilities",
            params: c
        }), l = {};
        for (let [e, t] of Object.entries(u))
            for (let [r, n] of (l[Number(e)] = {}, Object.entries(t))) "addSubAccount" === r && (r = "unstable_addSubAccount"), l[Number(e)][r] = n;
        return "number" == typeof s ? l[s] : l
    }
    async function i(e) {
        return await e.request({
            method: "wallet_getPermissions"
        }, {
            dedupe: !0
        })
    }
    e.s(["getCapabilities", 0, n], 754073), e.s(["getPermissions", 0, i], 13405);
    var a = e.i(514034),
        s = e.i(687e3),
        o = e.i(280958),
        c = e.i(666965),
        u = e.i(253811);
    async function l(e, r) {
        let {
            account: n = e.account,
            chainId: i,
            nonce: l
        } = r;
        if (!n) throw new a.AccountNotFoundError({
            docsPath: "/docs/eip7702/prepareAuthorization"
        });
        let d = (0, t.parseAccount)(n),
            f = (() => {
                if (r.executor) return "self" === r.executor ? r.executor : (0, t.parseAccount)(r.executor)
            })(),
            p = {
                address: r.contractAddress ? ? r.address,
                chainId: i,
                nonce: l
            };
        return void 0 === p.chainId && (p.chainId = e.chain ? .id ? ? await (0, o.getAction)(e, c.getChainId, "getChainId")({})), void 0 === p.nonce && (p.nonce = await (0, o.getAction)(e, u.getTransactionCount, "getTransactionCount")({
            address: d.address,
            blockTag: "pending"
        }), ("self" === f || f ? .address && (0, s.isAddressEqual)(f.address, d.address)) && (p.nonce += 1)), p
    }
    e.s(["prepareAuthorization", 0, l], 800005);
    var d = e.i(113967);
    async function f(e) {
        return (await e.request({
            method: "eth_requestAccounts"
        }, {
            dedupe: !0,
            retryCount: 0
        })).map(e => (0, d.getAddress)(e))
    }
    async function p(e, t) {
        return e.request({
            method: "wallet_requestPermissions",
            params: [t]
        }, {
            retryCount: 0
        })
    }
    e.s(["requestAddresses", 0, f], 683775), e.s(["requestPermissions", 0, p], 532103)
}, 353419, e => {
    "use strict";
    var t = e.i(621030);
    class r extends t.BaseError {
        constructor(e) {
            super(`Call bundle failed with status: ${e.statusCode}`, {
                name: "BundleFailedError"
            }), Object.defineProperty(this, "result", {
                enumerable: !0,
                configurable: !0,
                writable: !0,
                value: void 0
            }), this.result = e
        }
    }
    e.s(["BundleFailedError", 0, r])
}, 231712, e => {
    "use strict";
    var t = e.i(621030),
        r = e.i(353419),
        n = e.i(280958),
        i = e.i(155517),
        a = e.i(577771),
        s = e.i(481436),
        o = e.i(644988),
        c = e.i(865692),
        u = e.i(997090);
    async function l(e, t) {
        let l, {
                id: f,
                pollingInterval: p = e.pollingInterval,
                status: m = ({
                    statusCode: e
                }) => 200 === e || e >= 300,
                retryCount: h = 4,
                retryDelay: g = ({
                    count: e
                }) => 200 * ~~(1 << e),
                timeout: y = 6e4,
                throwOnFailure: b = !1
            } = t,
            v = (0, c.stringify)(["waitForCallsStatus", e.uid, f]),
            {
                promise: w,
                resolve: x,
                reject: E
            } = (0, s.withResolvers)(),
            T = (0, i.observe)(v, {
                resolve: x,
                reject: E
            }, t => {
                let i = (0, a.poll)(async () => {
                    let a = e => {
                        clearTimeout(l), i(), e(), T()
                    };
                    try {
                        let i = await (0, o.withRetry)(async () => {
                            let t = await (0, n.getAction)(e, u.getCallsStatus, "getCallsStatus")({
                                id: f
                            });
                            if (b && "failure" === t.status) throw new r.BundleFailedError(t);
                            return t
                        }, {
                            retryCount: h,
                            delay: g
                        });
                        if (!m(i)) return;
                        a(() => t.resolve(i))
                    } catch (e) {
                        a(() => t.reject(e))
                    }
                }, {
                    interval: p,
                    emitOnBegin: !0
                });
                return i
            });
        return l = y ? setTimeout(() => {
            T(), clearTimeout(l), E(new d({
                id: f
            }))
        }, y) : void 0, await w
    }
    class d extends t.BaseError {
        constructor({
            id: e
        }) {
            super(`Timed out while waiting for call bundle with id "${e}" to be confirmed.`, {
                name: "WaitForCallsStatusTimeoutError"
            })
        }
    }
    e.s(["WaitForCallsStatusTimeoutError", 0, d, "waitForCallsStatus", 0, l])
}, 932867, e => {
    "use strict";
    var t = e.i(280958),
        r = e.i(110268),
        n = e.i(231712);
    async function i(e, i) {
        let {
            chain: a = e.chain
        } = i, s = i.timeout ? ? Math.max((a ? .blockTime ? ? 0) * 3, 5e3), o = await (0, t.getAction)(e, r.sendCalls, "sendCalls")(i);
        return await (0, t.getAction)(e, n.waitForCallsStatus, "waitForCallsStatus")({ ...i,
            id: o.id,
            timeout: s
        })
    }
    e.s(["sendCallsSync", 0, i])
}, 823686, 823669, 748139, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(514034),
        n = e.i(621030),
        i = e.i(484309),
        a = e.i(156405),
        s = e.i(718460),
        o = e.i(844268),
        c = e.i(745048),
        u = e.i(375137),
        l = e.i(249618),
        d = e.i(280958),
        f = e.i(979281),
        p = e.i(830363),
        m = e.i(666965),
        h = e.i(556284),
        g = e.i(1552),
        y = e.i(843995);
    let b = new f.LruMap(128);
    async function v(e, f) {
        let {
            account: v = e.account,
            assertChainId: w = !0,
            chain: x = e.chain,
            accessList: E,
            authorizationList: T,
            blobs: A,
            data: B,
            dataSuffix: P = "string" == typeof e.dataSuffix ? e.dataSuffix : e.dataSuffix ? .value,
            gas: I,
            gasPrice: C,
            maxFeePerBlobGas: k,
            maxFeePerGas: S,
            maxPriorityFeePerGas: N,
            nonce: R,
            pollingInterval: F,
            throwOnReceiptRevert: z,
            type: H,
            value: L,
            ...q
        } = f, G = f.timeout ? ? Math.max((x ? .blockTime ? ? 0) * 3, 5e3);
        if (void 0 === v) throw new r.AccountNotFoundError({
            docsPath: "/docs/actions/wallet/sendTransactionSync"
        });
        let $ = v ? (0, t.parseAccount)(v) : null;
        try {
            (0, p.assertRequest)(f);
            let t = await (async () => f.to ? f.to : null !== f.to && T && T.length > 0 ? await (0, a.recoverAuthorizationAddress)({
                authorization: T[0]
            }).catch(() => {
                throw new n.BaseError("`to` is required. Could not infer from `authorizationList`.")
            }) : void 0)();
            if ($ ? .type === "json-rpc" || null === $) {
                let r;
                null !== x && (r = await (0, d.getAction)(e, m.getChainId, "getChainId")({}), w && (0, s.assertCurrentChain)({
                    currentChainId: r,
                    chain: x
                }));
                let n = e.chain ? .formatters ? .transactionRequest ? .format,
                    a = (n || l.formatTransactionRequest)({ ...(0, u.extract)(q, {
                            format: n
                        }),
                        accessList: E,
                        account: $,
                        authorizationList: T,
                        blobs: A,
                        chainId: r,
                        data: P ? (0, o.concat)([B ? ? "0x", P]) : B,
                        gas: I,
                        gasPrice: C,
                        maxFeePerBlobGas: k,
                        maxFeePerGas: S,
                        maxPriorityFeePerGas: N,
                        nonce: R,
                        to: t,
                        type: H,
                        value: L
                    }, "sendTransaction"),
                    c = b.get(e.uid),
                    f = c ? "wallet_sendTransaction" : "eth_sendTransaction",
                    p = await (async () => {
                        try {
                            return await e.request({
                                method: f,
                                params: [a]
                            }, {
                                retryCount: 0
                            })
                        } catch (t) {
                            if (!1 === c) throw t;
                            if ("InvalidInputRpcError" === t.name || "InvalidParamsRpcError" === t.name || "MethodNotFoundRpcError" === t.name || "MethodNotSupportedRpcError" === t.name) return await e.request({
                                method: "wallet_sendTransaction",
                                params: [a]
                            }, {
                                retryCount: 0
                            }).then(t => (b.set(e.uid, !0), t)).catch(r => {
                                if ("MethodNotFoundRpcError" === r.name || "MethodNotSupportedRpcError" === r.name) throw b.set(e.uid, !1), t;
                                throw r
                            });
                            throw t
                        }
                    })(),
                    g = await (0, d.getAction)(e, h.waitForTransactionReceipt, "waitForTransactionReceipt")({
                        checkReplacement: !1,
                        hash: p,
                        pollingInterval: F,
                        timeout: G
                    });
                if (z && "reverted" === g.status) throw new i.TransactionReceiptRevertedError({
                    receipt: g
                });
                return g
            }
            if ($ ? .type === "local") {
                let r = await (0, d.getAction)(e, g.prepareTransactionRequest, "prepareTransactionRequest")({
                        account: $,
                        accessList: E,
                        authorizationList: T,
                        blobs: A,
                        chain: x,
                        data: P ? (0, o.concat)([B ? ? "0x", P]) : B,
                        gas: I,
                        gasPrice: C,
                        maxFeePerBlobGas: k,
                        maxFeePerGas: S,
                        maxPriorityFeePerGas: N,
                        nonce: R,
                        nonceManager: $.nonceManager,
                        parameters: [...g.defaultParameters, "sidecars"],
                        type: H,
                        value: L,
                        ...q,
                        to: t
                    }),
                    n = x ? .serializers ? .transaction,
                    i = await $.signTransaction(r, {
                        serializer: n
                    });
                return await (0, d.getAction)(e, y.sendRawTransactionSync, "sendRawTransactionSync")({
                    serializedTransaction: i,
                    throwOnReceiptRevert: z,
                    timeout: f.timeout
                })
            }
            if ($ ? .type === "smart") throw new r.AccountTypeNotSupportedError({
                metaMessages: ["Consider using the `sendUserOperation` Action instead."],
                docsPath: "/docs/actions/bundler/sendUserOperation",
                type: "smart"
            });
            throw new r.AccountTypeNotSupportedError({
                docsPath: "/docs/actions/wallet/sendTransactionSync",
                type: $ ? .type
            })
        } catch (e) {
            if (e instanceof r.AccountTypeNotSupportedError) throw e;
            throw (0, c.getTransactionError)(e, { ...f,
                account: $,
                chain: f.chain || void 0
            })
        }
    }
    async function w(e, t) {
        let {
            id: r
        } = t;
        await e.request({
            method: "wallet_showCallsStatus",
            params: [r]
        })
    }
    e.s(["sendTransactionSync", 0, v], 823686), e.s(["showCallsStatus", 0, w], 823669);
    var x = e.i(800005);
    async function E(e, n) {
        let {
            account: i = e.account
        } = n;
        if (!i) throw new r.AccountNotFoundError({
            docsPath: "/docs/eip7702/signAuthorization"
        });
        let a = (0, t.parseAccount)(i);
        if (!a.signAuthorization) throw new r.AccountTypeNotSupportedError({
            docsPath: "/docs/eip7702/signAuthorization",
            metaMessages: ["The `signAuthorization` Action does not support JSON-RPC Accounts."],
            type: a.type
        });
        let s = await (0, x.prepareAuthorization)(e, n);
        return a.signAuthorization(s)
    }
    e.s(["signAuthorization", 0, E], 748139)
}, 346141, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(514034),
        n = e.i(718460),
        i = e.i(186897),
        a = e.i(249618),
        s = e.i(280958),
        o = e.i(830363),
        c = e.i(666965);
    async function u(e, u) {
        let {
            account: l = e.account,
            chain: d = e.chain,
            ...f
        } = u;
        if (!l) throw new r.AccountNotFoundError({
            docsPath: "/docs/actions/wallet/signTransaction"
        });
        let p = (0, t.parseAccount)(l);
        (0, o.assertRequest)({
            account: p,
            ...u
        });
        let m = await (0, s.getAction)(e, c.getChainId, "getChainId")({});
        null !== d && (0, n.assertCurrentChain)({
            currentChainId: m,
            chain: d
        });
        let h = d ? .formatters || e.chain ? .formatters,
            g = h ? .transactionRequest ? .format || a.formatTransactionRequest;
        return p.signTransaction ? p.signTransaction({ ...f,
            account: p,
            chainId: m
        }, {
            serializer: e.chain ? .serializers ? .transaction
        }) : await e.request({
            method: "eth_signTransaction",
            params: [{ ...g({ ...f,
                    account: p
                }, "signTransaction"),
                chainId: (0, i.numberToHex)(m),
                from: p.address
            }]
        }, {
            retryCount: 0
        })
    }
    e.s(["signTransaction", 0, u])
}, 659682, 447189, 725669, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(514034),
        n = e.i(614668);
    async function i(e, i) {
        let {
            account: a = e.account,
            domain: s,
            message: o,
            primaryType: c
        } = i;
        if (!a) throw new r.AccountNotFoundError({
            docsPath: "/docs/actions/wallet/signTypedData"
        });
        let u = (0, t.parseAccount)(a),
            l = {
                EIP712Domain: (0, n.getTypesForEIP712Domain)({
                    domain: s
                }),
                ...i.types
            };
        if ((0, n.validateTypedData)({
                domain: s,
                message: o,
                primaryType: c,
                types: l
            }), u.signTypedData) return u.signTypedData({
            domain: s,
            message: o,
            primaryType: c,
            types: l
        });
        let d = (0, n.serializeTypedData)({
            domain: s,
            message: o,
            primaryType: c,
            types: l
        });
        return e.request({
            method: "eth_signTypedData_v4",
            params: [u.address, d]
        }, {
            retryCount: 0
        })
    }
    e.s(["signTypedData", 0, i], 659682);
    var a = e.i(186897);
    async function s(e, {
        id: t
    }) {
        await e.request({
            method: "wallet_switchEthereumChain",
            params: [{
                chainId: (0, a.numberToHex)(t)
            }]
        }, {
            retryCount: 0
        })
    }
    async function o(e, t) {
        return await e.request({
            method: "wallet_watchAsset",
            params: t
        }, {
            retryCount: 0
        })
    }
    e.s(["switchChain", 0, s], 447189), e.s(["watchAsset", 0, o], 725669)
}, 154128, e => {
    "use strict";
    var t = e.i(372387),
        r = e.i(514034),
        n = e.i(56339),
        i = e.i(701123),
        a = e.i(280958),
        s = e.i(581397);
    async function o(e, t) {
        return o.internal(e, s.sendTransaction, "sendTransaction", t)
    }(o || (o = {})).internal = async function(e, s, o, c) {
        let {
            abi: u,
            account: l = e.account,
            address: d,
            args: f,
            functionName: p,
            ...m
        } = c;
        if (void 0 === l) throw new r.AccountNotFoundError({
            docsPath: "/docs/contract/writeContract"
        });
        let h = l ? (0, t.parseAccount)(l) : null,
            g = (0, n.encodeFunctionData)({
                abi: u,
                args: f,
                functionName: p
            });
        try {
            return await (0, a.getAction)(e, s, o)({
                data: g,
                to: d,
                account: h,
                ...m
            })
        } catch (e) {
            throw (0, i.getContractError)(e, {
                abi: u,
                address: d,
                args: f,
                docsPath: "/docs/contract/writeContract",
                functionName: p,
                sender: h ? .address
            })
        }
    }, e.s(["writeContract", 0, o])
}, 849872, e => {
    "use strict";
    var t = e.i(949857),
        r = e.i(666965),
        n = e.i(591387),
        i = e.i(230629),
        a = e.i(510480),
        s = e.i(997090),
        o = e.i(754073),
        c = e.i(13405),
        u = e.i(800005),
        l = e.i(1552),
        d = e.i(683775),
        f = e.i(532103),
        p = e.i(110268),
        m = e.i(932867),
        h = e.i(16498),
        g = e.i(843995),
        y = e.i(581397),
        b = e.i(823686),
        v = e.i(823669),
        w = e.i(748139),
        x = e.i(749084),
        E = e.i(346141),
        T = e.i(659682),
        A = e.i(447189),
        B = e.i(231712),
        P = e.i(725669),
        I = e.i(154128);
    async function C(e, t) {
        return I.writeContract.internal(e, b.sendTransactionSync, "sendTransactionSync", t)
    }
    e.s(["walletActions", 0, function(e) {
        return {
            addChain: t => (0, n.addChain)(e, t),
            deployContract: t => (0, i.deployContract)(e, t),
            fillTransaction: r => (0, t.fillTransaction)(e, r),
            getAddresses: () => (0, a.getAddresses)(e),
            getCallsStatus: t => (0, s.getCallsStatus)(e, t),
            getCapabilities: t => (0, o.getCapabilities)(e, t),
            getChainId: () => (0, r.getChainId)(e),
            getPermissions: () => (0, c.getPermissions)(e),
            prepareAuthorization: t => (0, u.prepareAuthorization)(e, t),
            prepareTransactionRequest: t => (0, l.prepareTransactionRequest)(e, t),
            requestAddresses: () => (0, d.requestAddresses)(e),
            requestPermissions: t => (0, f.requestPermissions)(e, t),
            sendCalls: t => (0, p.sendCalls)(e, t),
            sendCallsSync: t => (0, m.sendCallsSync)(e, t),
            sendRawTransaction: t => (0, h.sendRawTransaction)(e, t),
            sendRawTransactionSync: t => (0, g.sendRawTransactionSync)(e, t),
            sendTransaction: t => (0, y.sendTransaction)(e, t),
            sendTransactionSync: t => (0, b.sendTransactionSync)(e, t),
            showCallsStatus: t => (0, v.showCallsStatus)(e, t),
            signAuthorization: t => (0, w.signAuthorization)(e, t),
            signMessage: t => (0, x.signMessage)(e, t),
            signTransaction: t => (0, E.signTransaction)(e, t),
            signTypedData: t => (0, T.signTypedData)(e, t),
            switchChain: t => (0, A.switchChain)(e, t),
            waitForCallsStatus: t => (0, B.waitForCallsStatus)(e, t),
            watchAsset: t => (0, P.watchAsset)(e, t),
            writeContract: t => (0, I.writeContract)(e, t),
            writeContractSync: t => C(e, t)
        }
    }], 849872)
}, 990793, e => {
    "use strict";
    var t = e.i(212146),
        r = e.i(849872);
    e.s(["createWalletClient", 0, function(e) {
        let {
            key: n = "wallet",
            name: i = "Wallet Client",
            transport: a
        } = e;
        return (0, t.createClient)({ ...e,
            key: n,
            name: i,
            transport: a,
            type: "walletClient"
        }).extend(r.walletActions)
    }])
}]);

//# debugId=da5c5a11-e979-0808-71ad-a70f74326a11